m4x3_expand_aabb_aabb( volume->to_world, bound,
(boxf){{-1.0f,-1.0f,-1.0f},{ 1.0f, 1.0f, 1.0f}} );
}
+ else if( type == k_ent_unlock ){
+ ent_unlock *unlock = mdl_arritm( &world->ent_unlock, index );
+
+ boxf box = {{-1.2f*0.5f,-0.72f*0.5f,-0.01f*0.5f},
+ { 1.2f*0.5f, 0.72f*0.5f, 0.01f*0.5f}};
+ m4x3f transform;
+ mdl_transform_m4x3( &unlock->transform, transform );
+ m4x3_expand_aabb_aabb( transform, bound, box );
+ }
+ else{
+ vg_fatal_error( "Programming error\n" );
+ }
}
VG_STATIC float entity_bh_centroid( void *user, u32 item_index, int axis ){
(boxf){{-1.0f,-1.0f,-1.0f},{ 1.0f, 1.0f, 1.0f}},
0xf000ff00 );
}
+ else if( type == k_ent_unlock ){
+ ent_unlock *unlock = mdl_arritm( &world->ent_unlock, index );
+
+ boxf box = {{-1.2f*0.5f,-0.72f*0.5f,-0.01f*0.5f},
+ { 1.2f*0.5f, 0.72f*0.5f, 0.01f*0.5f}};
+ m4x3f transform;
+ mdl_transform_m4x3( &unlock->transform, transform );
+ vg_line_boxf_transformed( transform, box, 0xf0ff0000 );
+ }
else{
vg_fatal_error( "Programming error\n" );
}
ent_volume *volume = mdl_arritm( &world->ent_volume, index );
v3_copy( volume->to_world[3], closest );
}
+ else if( type == k_ent_unlock ){
+ ent_unlock *unlock = mdl_arritm( &world->ent_unlock, index );
+ v3_copy( unlock->transform.co, closest );
+ }
else{
vg_fatal_error( "Programming error\n" );
}