X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=world_load.c;h=b91246f261e2f0e7df5aca2adebfde75ec96388b;hb=0205109fd1609f8b59720bc704c969c046205682;hp=25d5b048af77274107d03d9b1e7e082a7cdf14fc;hpb=c77e15a8dc7b976371a473bc8794cb55601d82f6;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/world_load.c b/world_load.c index 25d5b04..b91246f 100644 --- a/world_load.c +++ b/world_load.c @@ -63,6 +63,7 @@ VG_STATIC void world_instance_load_mdl( u32 instance_id, const char *path ){ mdl_load_array( meta, &world->ent_challenge, "ent_challenge", heap ); mdl_load_array( meta, &world->ent_unlock, "ent_unlock", heap ); mdl_load_array( meta, &world->ent_relay, "ent_relay", heap ); + mdl_load_array( meta, &world->ent_cubemap, "ent_cubemap", heap ); mdl_array_ptr infos; mdl_load_array( meta, &infos, "ent_worldinfo", vg_mem.scratch ); @@ -98,7 +99,6 @@ VG_STATIC void world_instance_load_mdl( u32 instance_id, const char *path ){ vg_async_stall(); } - struct world_load_complete_data{ savedata_file save; u32 instance_start, instance_count; @@ -372,6 +372,13 @@ static void world_free( world_instance *world ) vg_linear_header(world->heap) ); } + for( u32 i=0; ient_cubemap); i++ ){ + ent_cubemap *cm = mdl_arritm(&world->ent_cubemap,i); + glDeleteTextures( 1, &cm->texture_id ); + glDeleteFramebuffers( 1, &cm->framebuffer_id ); + glDeleteRenderbuffers( 1, &cm->renderbuffer_id ); + } + world->status = k_world_status_unloaded; }