X-Git-Url: https://harrygodden.com/git/?a=blobdiff_plain;ds=sidebyside;f=character.h;h=047b714df02f62db79b113299848d467abdc2691;hb=a6e1ee0f51aa5570b20aad658365dec896f8c9b8;hp=bc2ccb5a52c3f8c2d29d7f48de61f19ceb674f59;hpb=afa80c76d03f5e983092e9d7be33a9102a7ab25e;p=carveJwlIkooP6JGAAIwe30JlM.git diff --git a/character.h b/character.h index bc2ccb5..047b714 100644 --- a/character.h +++ b/character.h @@ -368,6 +368,22 @@ static character_pose pose_stand = .cam = {-0.3477f, 1.5884f, -0.0019f} }; +static character_pose pose_stand_reverse = +{ + .b0 = {0.1624f, 1.0688f, -0.0632f}, + .b1 = {0.0499f, 1.5564f, -0.0013f}, + .p = {0.5423f, 1.2810f, -0.2368f}, + .fr = {0.0535f, 0.1312f, -0.3647f}, + .fl = {0.0354f, 0.1464f, 0.2917f}, + .pl = {-0.4325f, 0.6889f, 0.4591f}, + .pr = {-0.4794f, 0.7598f, -0.0842f}, + .hl = {0.0498f, 1.0058f, 0.2317f}, + .hr = {0.0188f, 0.9786f, -0.2725f}, + .apl = {0.2898f, 1.3453f, 0.0695f}, + .apr = {0.4715f, 1.2876f, -0.4982f}, + .cam = {-0.3477f, 1.5884f, -0.0730f} +}; + static character_pose pose_fly = { .b0 = {0.2995f, 0.6819f, -0.1369f}, @@ -831,7 +847,18 @@ static void character_debug_ragdoll( struct character *ch ) static void character_ragdoll_iter( struct character *ch ) { for( int i=0; iragdoll[i] ); + { + rb_manifold_reset( &ch->ragdoll[i] ); + rb_build_manifold_terrain( &ch->ragdoll[i] ); + + u32 colliders[16]; + int len = bh_select( &world.bhcubes, ch->ragdoll[i].bbx_world, + colliders, 16 ); + + for( int j=0; jragdoll[i], + &world.temp_rbs[colliders[j]] ); + } v3f rv;