From 039e6a3e39a8de1544c9021932e9550f40514ac7 Mon Sep 17 00:00:00 2001 From: hgn Date: Fri, 8 Dec 2023 16:30:22 +0000 Subject: [PATCH] performance measurements --- skaterift.c | 63 +++++++++++++++++++++++++++++------------------------ 1 file changed, 34 insertions(+), 29 deletions(-) diff --git a/skaterift.c b/skaterift.c index 353f544..e488f77 100644 --- a/skaterift.c +++ b/skaterift.c @@ -164,6 +164,38 @@ static addon_reg *skaterift_mount_world_unloadable( const char *path, u32 ext ){ return reg; } +static void skaterift_load_world_content(void){ + /* hub world */ + addon_reg *hub = skaterift_mount_world_unloadable( "maps/dev_hub", 0 ); + skaterift_mount_world_unloadable( "maps/mp_spawn", + ADDON_REG_CITY|ADDON_REG_PREMIUM ); + skaterift_mount_world_unloadable( "maps/mp_mtzero", + ADDON_REG_MTZERO|ADDON_REG_PREMIUM ); + skaterift_mount_world_unloadable( "maps/dev_tutorial", 0 ); + + world_static.load_state = k_world_loader_load; + + struct world_load_args args = { + .purpose = k_world_purpose_hub, + .reg = hub + }; + skaterift_world_load_thread( &args ); +} + +static void skaterift_load_player_content(void){ + u32 bytes = 1024*1024*10; + skaterift.replay.data = vg_linear_alloc( vg_mem.rtmemory, bytes ); + skaterift.replay.size = bytes; + replay_clear( &skaterift.replay ); + + particle_alloc( &particles_grind, 300 ); + + player_load_animation_reference( "models/ch_none.mdl" ); + player_model_load( &localplayer.fallback_model, "models/ch_none.mdl" ); + player__bind(); + player_board_load( &localplayer.fallback_board, "models/board_none.mdl" ); +} + static void vg_load(void){ if( k_tools_mode ){ vg_async_call( async_call_ready, NULL, 0 ); @@ -191,19 +223,7 @@ static void vg_load(void){ vg_loader_step( workshop_init, NULL ); vg_loader_step( skateshop_init, NULL ); - /* player setup */ - u32 bytes = 1024*1024*10; - skaterift.replay.data = vg_linear_alloc( vg_mem.rtmemory, bytes ); - skaterift.replay.size = bytes; - replay_clear( &skaterift.replay ); - - particle_alloc( &particles_grind, 300 ); - - player_load_animation_reference( "models/ch_none.mdl" ); - player_model_load( &localplayer.fallback_model, "models/ch_none.mdl" ); - player__bind(); - - player_board_load( &localplayer.fallback_board, "models/board_none.mdl" ); + vg_loader_step( skaterift_load_player_content, NULL ); /* --------------------- */ @@ -216,23 +236,8 @@ static void vg_load(void){ * ------------------------------------- */ - /* hub world */ - addon_reg *hub = skaterift_mount_world_unloadable( "maps/dev_hub", 0 ); - skaterift_mount_world_unloadable( "maps/mp_spawn", - ADDON_REG_CITY|ADDON_REG_PREMIUM ); - skaterift_mount_world_unloadable( "maps/mp_mtzero", - ADDON_REG_MTZERO|ADDON_REG_PREMIUM ); - skaterift_mount_world_unloadable( "maps/dev_tutorial", 0 ); - /* load home/permanent world manually */ - world_static.load_state = k_world_loader_load; - - struct world_load_args args = { - .purpose = k_world_purpose_hub, - .reg = hub - }; - skaterift_world_load_thread( &args ); - + vg_loader_step( skaterift_load_world_content, NULL ); vg_async_call( async_skaterift_player_start, NULL, 0 ); vg_async_stall(); -- 2.25.1