X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;f=rigidbody.h;h=efce416487fc164d2a2772d8c4a44d499fc2d989;hb=02e5027d274fc66fecca0572d0998e2c562da7a7;hp=5796c7aed341b577afad3bc607e40a7b046bcabf;hpb=f99902f513b0ad606437bf32de47405dd4ea5f98;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/rigidbody.h b/rigidbody.h index 5796c7a..efce416 100644 --- a/rigidbody.h +++ b/rigidbody.h @@ -375,8 +375,7 @@ VG_STATIC void rb_update_transform( rigidbody *rb ) */ VG_STATIC void rb_extrapolate( rigidbody *rb, v3f co, v4f q ) { - float substep = vg_clampf( vg.accumulator / k_rb_delta, 0.0f, 1.0f ); - + float substep = vg.time_fixed_extrapolate; v3_muladds( rb->co, rb->v, k_rb_delta*substep, co ); if( v3_length2( rb->w ) > 0.0f ){ @@ -467,7 +466,7 @@ VG_STATIC void rb_iter( rigidbody *rb ) !vg_validf( rb->v[1] ) || !vg_validf( rb->v[2] ) ) { - vg_fatal_exit_loop( "NaN velocity" ); + vg_fatal_error( "NaN velocity" ); } v3f gravity = { 0.0f, -9.8f, 0.0f }; @@ -1232,7 +1231,7 @@ VG_STATIC int rb_sphere__triangle( m4x3f mtxA, rb_sphere *b, VG_STATIC int rb_sphere__scene( m4x3f mtxA, rb_sphere *b, m4x3f mtxB, rb_scene *s, rb_ct *buf ) { - scene *sc = s->bh_scene->user; + scene_context *sc = s->bh_scene->user; bh_iter it; bh_iter_init( 0, &it ); @@ -1274,7 +1273,7 @@ VG_STATIC int rb_box__scene( m4x3f mtxA, boxf bbx, m4x3f mtxB, rb_scene *s, rb_ct *buf ) { #if 1 - scene *sc = s->bh_scene->user; + scene_context *sc = s->bh_scene->user; v3f tri[3]; v3f extent, center; @@ -1527,7 +1526,7 @@ VG_STATIC int rb_capsule__scene( m4x3f mtxA, rb_capsule *c, v3_sub( mtxA[3], (v3f){ c->height, c->height, c->height }, bbx[0] ); v3_add( mtxA[3], (v3f){ c->height, c->height, c->height }, bbx[1] ); - scene *sc = s->bh_scene->user; + scene_context *sc = s->bh_scene->user; while( bh_next( s->bh_scene, &it, bbx, &idx ) ){ u32 *ptri = &sc->arrindices[ idx*3 ];