f
[carveJwlIkooP6JGAAIwe30JlM.git] / character.h
index 94b181e053343ab7ef0f960719aa0cf0ba527271..71299e85374274ed7906c64d8da34124f6c9a1f5 100644 (file)
@@ -888,7 +888,7 @@ static void character_ragdoll_iter( struct character *ch )
    {
       rb_build_manifold_terrain( &ch->ragdoll[i] );
 
-      /* TODO: Cars */
+      /* TODO: Cars, piece-to-piece collision */
 #if 0
       u32 colliders[16];
       int len = bh_select( &world.bhcubes, ch->ragdoll[i].bbx_world, 
@@ -900,6 +900,8 @@ static void character_ragdoll_iter( struct character *ch )
 #endif
    }
 
+   rb_presolve_contacts( rb_contact_buffer, rb_contact_count );
+
    v3f rv;
 
    float shoe_vel[2];
@@ -912,7 +914,7 @@ static void character_ragdoll_iter( struct character *ch )
    {
       float const k_springfactor = 1.0f/20.0f;
       
-      rb_solve_contacts();
+      rb_solve_contacts( rb_contact_buffer, rb_contact_count );
       
       for( int j=0; j<vg_list_size(rd_joints); j++ )
       {