m4x3f mtx, rb_sphere *sphere,
rb_ct *man )
{
- world_instance *world = get_active_world();
+ world_instance *world = world_current_instance();
int len = 0;
len = rb_sphere__scene( mtx, sphere, NULL, &world->rb_geo.inf.scene, man );
v3f pos, v3f dir, float r,
struct grind_info *inf )
{
- world_instance *world = get_active_world();
+ world_instance *world = world_current_instance();
v4f plane;
v3_copy( dir, plane );
boxf box;
v3_add( pos, (v3f){ r, r, r }, box[1] );
v3_sub( pos, (v3f){ r, r, r }, box[0] );
-
- bh_iter it;
- bh_iter_init( 0, &it );
- int idx;
struct grind_sample
{
v3_cross( plane, player->basis[1], support_axis );
v3_normalize( support_axis );
- while( bh_next( world->geo_bh, &it, box, &idx ) ){
+ bh_iter it;
+ bh_iter_init_box( 0, &it, box );
+ i32 idx;
+
+ while( bh_next( world->geo_bh, &it, &idx ) ){
u32 *ptri = &world->scene_geo.arrindices[ idx*3 ];
v3f tri[3];
VG_STATIC
void player__approximate_best_trajectory( player_instance *player )
{
- world_instance *world0 = get_active_world();
+ world_instance *world0 = world_current_instance();
struct player_skate *s = &player->_skate;
float k_trace_delta = k_rb_delta * 10.0f;
m3x3_mul( gate->transport, basis, basis );
if( gate->type == k_gate_type_nonlocel ){
- trace_world = &world_global.worlds[ gate->target ];
+ trace_world = &world_static.worlds[ gate->target ];
}
}
}
v3f surface_normal, v3f axel_dir )
{
struct player_skate *s = &player->_skate;
- world_instance *world = get_active_world();
+ world_instance *world = world_current_instance();
v3f truck, left, right;
m4x3_mulv( player->rb.to_world, ra, truck );
v3_muls( dir, 1.0f/ray.dist, dir );
ray.dist -= 0.025f;
- if( ray_world( get_active_world(), origin, dir, &ray ) )
+ if( ray_world( world_current_instance(), origin, dir, &ray ) )
return 0;
return 1;
VG_STATIC void player__skate_update( player_instance *player )
{
struct player_skate *s = &player->_skate;
- world_instance *world = get_active_world();
+ world_instance *world = world_current_instance();
v3_copy( player->rb.co, s->state.prev_pos );
s->state.activity_prev = s->state.activity;