Put more boilerplate inits into engine init

scene_man
En Yi 2023-10-13 21:08:48 +08:00
parent e318c65135
commit 92555708d7
6 changed files with 10 additions and 24 deletions

View File

@ -1,5 +1,5 @@
#include "mempool.h"
#include "ent_impl.h"
#include "mempool.h"
#include <stdio.h>
int main(void)

View File

@ -1,6 +1,4 @@
#include "constants.h"
#include "mempool.h"
#include "raymath.h"
#include "scene_impl.h"
#include "ent_impl.h"
#include "water_flow.h"
@ -23,9 +21,7 @@ int main(void)
init_engine(&engine);
InitWindow(1280, 640, "raylib");
SetTargetFPS(60);
init_memory_pools();
init_assets(&engine.assets);
load_from_infofile("res/test_assets.info", &engine.assets);
LevelPack_t* pack = get_level_pack(&engine.assets, "TestLevels");
assert(pack != NULL);
@ -61,7 +57,6 @@ int main(void)
}
free_scene(&scene.scene);
term_level_scene_data(&scene.data);
deinit_engine(&engine);
term_assets(&engine.assets);
CloseWindow();
deinit_engine(&engine);
}

6
main.c
View File

@ -27,9 +27,6 @@ int main(void)
init_engine(&engine);
InitWindow(screenWidth, screenHeight, "raylib");
SetTargetFPS(60); // Set our game to run at 60 frames-per-second
init_memory_pools();
init_assets(&engine.assets);
#ifndef NDEBUG
load_from_infofile("res/assets_debug.info", &engine.assets);
init_player_creation("res/player_spr.info", &engine.assets);
@ -95,7 +92,6 @@ int main(void)
free_sandbox_scene(&sandbox_scene);
free_game_scene(&level_scene);
free_menu_scene(&menu_scene);
deinit_engine(&engine);
term_assets(&engine.assets);
CloseWindow();
deinit_engine(&engine);
}

View File

@ -1,4 +1,3 @@
#include "mempool.h"
#include "scene_impl.h"
#include "ent_impl.h"
#include "assets_loader.h"
@ -42,11 +41,8 @@ int main(void)
InitWindow(1280, 640, "raylib");
SetTargetFPS(60);
InitAudioDevice();
init_engine(&engine);
init_memory_pools();
init_assets(&engine.assets);
#ifndef NDEBUG
load_from_infofile("res/assets.info.raw", &engine.assets);
@ -102,7 +98,6 @@ int main(void)
#endif
free_sandbox_scene(&scene);
deinit_engine(&engine);
term_assets(&engine.assets);
CloseWindow();
}

View File

@ -1,13 +1,18 @@
#include "engine.h"
#include "mempool.h"
void init_engine(GameEngine_t* engine)
{
sc_queue_init(&engine->key_buffer);
memset(engine->sfx_list.sfx, 0, engine->sfx_list.n_sfx * sizeof(SFX_t));
init_memory_pools();
init_assets(&engine->assets);
}
void deinit_engine(GameEngine_t* engine)
{
term_assets(&engine->assets);
free_memory_pools();
sc_queue_term(&engine->key_buffer);
}

View File

@ -1,11 +1,10 @@
#include "constants.h"
#include "mempool.h"
#include "raymath.h"
#include "scene_impl.h"
#include "ent_impl.h"
#include "water_flow.h"
#include "game_systems.h"
#include "assets_loader.h"
#include "raymath.h"
#include <stdio.h>
#include <unistd.h>
@ -407,12 +406,9 @@ static void player_simple_movement_system(Scene_t* scene)
int main(void)
{
init_engine(&engine);
InitWindow(1280, 640, "raylib");
SetTargetFPS(60);
init_memory_pools();
init_assets(&engine.assets);
init_engine(&engine);
LevelScene_t scene;
scene.scene.engine = &engine;
@ -474,6 +470,5 @@ int main(void)
free_scene(&scene.scene);
term_level_scene_data(&scene.data);
deinit_engine(&engine);
term_assets(&engine.assets);
CloseWindow();
}