/** * 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) { quadInit(&game->quad, 0, 0,0,0,0, 500,500,1,1); assetManagerInit(&game->assetManager); game->assetOwner = assetManagerHolderCreate(&game->assetManager); assetManagerLoadFont( &game->assetManager, game->assetOwner, &game->font, "fonts/opensans/OpenSans-Regular.ttf" ); assetManagerLoadShader( &game->assetManager, game->assetOwner, &game->shader, "shaders/textured.vert", "shaders/textured.frag" ); assetManagerLoadScaledTexture( &game->assetManager, game->assetOwner, &game->st, "poker/characters/sammy", "sprite" ); assetManagerLoadTextureScale( &game->assetManager, game->assetOwner, &game->st, &game->texture, 0 ); assetManagerStart(&game->assetManager); return true; } void sandboxGameUpdate(sandboxgame_t *game) { camera_t camera; float n; n = assetManagerProgressGet(&game->assetManager); if(n < 1.0f) { assetManagerUpdate(&game->assetManager); 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) { assetManagerHolderRelease(&game->assetManager, game->assetOwner); primitiveDispose(&game->quad); }