68 lines
1.7 KiB
C
68 lines
1.7 KiB
C
/**
|
|
* Copyright (c) 2021 Dominic Masters
|
|
*
|
|
* This software is released under the MIT License.
|
|
* https://opensource.org/licenses/MIT
|
|
*/
|
|
|
|
#include "game.h"
|
|
|
|
|
|
|
|
bool sandboxGameInit(sandboxgame_t *game) {
|
|
xmlnode_t node;
|
|
char *string = "<xml attribute=\"value\" something=\"else\"><child>Hello World</child></xml>";
|
|
|
|
char bufferTest[64];
|
|
|
|
xmlParseElement(&node, string;
|
|
xmlGetAttributeValue(&node, xmlGetAttributeByName(&node, "something"), bufferTest);
|
|
|
|
char *start = xmlFindChildNode(&node);
|
|
|
|
quadInit(&game->quad, 0, 0,0,0,0, 500,500,1,1);
|
|
|
|
assetManagerInit(&game->manager);
|
|
assetManagerLoadFont(&game->manager, &game->font,
|
|
"fonts/opensans/OpenSans-Regular.ttf"
|
|
);
|
|
assetManagerShaderLoad(&game->manager, &game->shader,
|
|
"shaders/textured.vert",
|
|
"shaders/textured.frag"
|
|
);
|
|
|
|
assetManagerStart(&game->manager);
|
|
|
|
pixel_t *data = (pixel_t *)assetRawLoad("out/test.texture");
|
|
textureInit(&game->texture, 4360/2, 1920/2, (pixel_t *)data);
|
|
free(data);
|
|
|
|
return true;
|
|
}
|
|
|
|
void sandboxGameUpdate(sandboxgame_t *game) {
|
|
camera_t camera;
|
|
float n = assetManagerProgressGet(&game->manager);
|
|
if(n < 1.0f) {
|
|
assetManagerUpdate(&game->manager);
|
|
printf("Loading %.2f\n", n);
|
|
return;
|
|
}
|
|
|
|
cameraOrtho(&camera,
|
|
0, game->engine.render.width,
|
|
game->engine.render.height, 0,
|
|
0.01f, 1000.0f
|
|
);
|
|
cameraLookAt(&camera, 0,0,10, 0,0,0);
|
|
|
|
shaderUse(&game->shader);
|
|
shaderUseCamera(&game->shader, &camera);
|
|
shaderUseTexture(&game->shader, &game->texture);
|
|
shaderUsePosition(&game->shader, 0,0,0, 0,0,0);
|
|
primitiveDraw(&game->quad, 0, -1);
|
|
}
|
|
|
|
void sandboxGameDispose(sandboxgame_t *game) {
|
|
// shaderDispose(&game->shader);
|
|
} |