class_ragdoll.html 66 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  5. <meta http-equiv="X-UA-Compatible" content="IE=11"/>
  6. <meta name="generator" content="Doxygen 1.12.0"/>
  7. <meta name="viewport" content="width=device-width, initial-scale=1"/>
  8. <title>Jolt Physics: Ragdoll Class Reference</title>
  9. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  10. <script type="text/javascript" src="jquery.js"></script>
  11. <script type="text/javascript" src="dynsections.js"></script>
  12. <script type="text/javascript" src="clipboard.js"></script>
  13. <link href="navtree.css" rel="stylesheet" type="text/css"/>
  14. <script type="text/javascript" src="navtreedata.js"></script>
  15. <script type="text/javascript" src="navtree.js"></script>
  16. <script type="text/javascript" src="resize.js"></script>
  17. <script type="text/javascript" src="cookie.js"></script>
  18. <link href="search/search.css" rel="stylesheet" type="text/css"/>
  19. <script type="text/javascript" src="search/searchdata.js"></script>
  20. <script type="text/javascript" src="search/search.js"></script>
  21. <script type="text/x-mathjax-config">
  22. MathJax.Hub.Config({
  23. extensions: ["tex2jax.js"],
  24. jax: ["input/TeX","output/HTML-CSS"],
  25. });
  26. </script>
  27. <script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script>
  28. <link href="doxygen.css" rel="stylesheet" type="text/css" />
  29. </head>
  30. <body>
  31. <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
  32. <div id="titlearea">
  33. <table cellspacing="0" cellpadding="0">
  34. <tbody>
  35. <tr id="projectrow">
  36. <td id="projectlogo"><img alt="Logo" src="LogoSmall.png"/></td>
  37. <td id="projectalign">
  38. <div id="projectname">Jolt Physics
  39. </div>
  40. <div id="projectbrief">A multi core friendly Game Physics Engine</div>
  41. </td>
  42. </tr>
  43. </tbody>
  44. </table>
  45. </div>
  46. <!-- end header part -->
  47. <!-- Generated by Doxygen 1.12.0 -->
  48. <script type="text/javascript">
  49. /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
  50. var searchBox = new SearchBox("searchBox", "search/",'.html');
  51. /* @license-end */
  52. </script>
  53. <script type="text/javascript">
  54. /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
  55. $(function() { codefold.init(0); });
  56. /* @license-end */
  57. </script>
  58. <script type="text/javascript" src="menudata.js"></script>
  59. <script type="text/javascript" src="menu.js"></script>
  60. <script type="text/javascript">
  61. /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
  62. $(function() {
  63. initMenu('',true,false,'search.php','Search',true);
  64. $(function() { init_search(); });
  65. });
  66. /* @license-end */
  67. </script>
  68. <div id="main-nav"></div>
  69. </div><!-- top -->
  70. <div id="side-nav" class="ui-resizable side-nav-resizable">
  71. <div id="nav-tree">
  72. <div id="nav-tree-contents">
  73. <div id="nav-sync" class="sync"></div>
  74. </div>
  75. </div>
  76. <div id="splitbar" style="-moz-user-select:none;"
  77. class="ui-resizable-handle">
  78. </div>
  79. </div>
  80. <script type="text/javascript">
  81. /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
  82. $(function(){initNavTree('class_ragdoll.html',''); initResizable(true); });
  83. /* @license-end */
  84. </script>
  85. <div id="doc-content">
  86. <!-- window showing the filter options -->
  87. <div id="MSearchSelectWindow"
  88. onmouseover="return searchBox.OnSearchSelectShow()"
  89. onmouseout="return searchBox.OnSearchSelectHide()"
  90. onkeydown="return searchBox.OnSearchSelectKey(event)">
  91. </div>
  92. <!-- iframe showing the search results (closed by default) -->
  93. <div id="MSearchResultsWindow">
  94. <div id="MSearchResults">
  95. <div class="SRPage">
  96. <div id="SRIndex">
  97. <div id="SRResults"></div>
  98. <div class="SRStatus" id="Loading">Loading...</div>
  99. <div class="SRStatus" id="Searching">Searching...</div>
  100. <div class="SRStatus" id="NoMatches">No Matches</div>
  101. </div>
  102. </div>
  103. </div>
  104. </div>
  105. <div class="header">
  106. <div class="summary">
  107. <a href="#pub-methods">Public Member Functions</a> &#124;
  108. <a href="#friends">Friends</a> &#124;
  109. <a href="class_ragdoll-members.html">List of all members</a> </div>
  110. <div class="headertitle"><div class="title">Ragdoll Class Reference</div></div>
  111. </div><!--header-->
  112. <div class="contents">
  113. <p>Runtime ragdoll information.
  114. <a href="#details">More...</a></p>
  115. <p><code>#include &lt;<a class="el" href="_ragdoll_8h_source.html">Ragdoll.h</a>&gt;</code></p>
  116. <div class="dynheader">
  117. Inheritance diagram for Ragdoll:</div>
  118. <div class="dyncontent">
  119. <div class="center">
  120. <img src="class_ragdoll.png" usemap="#Ragdoll_map" alt=""/>
  121. <map id="Ragdoll_map" name="Ragdoll_map">
  122. <area href="class_ref_target.html" alt="RefTarget&lt; Ragdoll &gt;" shape="rect" coords="0,0,133,24"/>
  123. <area href="class_non_copyable.html" title="Class that makes another class non-copyable. Usage: Inherit from NonCopyable." alt="NonCopyable" shape="rect" coords="143,0,276,24"/>
  124. </map>
  125. </div></div>
  126. <table class="memberdecls">
  127. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
  128. Public Member Functions</h2></td></tr>
  129. <tr class="memitem:abf6b6eb34e63af813cc4e394b536208e" id="r_abf6b6eb34e63af813cc4e394b536208e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_memory_8h.html#a91074fb218fe28954a0938c099ddd9e0">JPH_OVERRIDE_NEW_DELETE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abf6b6eb34e63af813cc4e394b536208e">Ragdoll</a> (<a class="el" href="class_physics_system.html">PhysicsSystem</a> *inSystem)</td></tr>
  130. <tr class="memdesc:abf6b6eb34e63af813cc4e394b536208e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
  131. <tr class="separator:abf6b6eb34e63af813cc4e394b536208e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  132. <tr class="memitem:afbd932bcd7ceae5811204c5c1219d5ac" id="r_afbd932bcd7ceae5811204c5c1219d5ac"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afbd932bcd7ceae5811204c5c1219d5ac">~Ragdoll</a> ()</td></tr>
  133. <tr class="memdesc:afbd932bcd7ceae5811204c5c1219d5ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor. <br /></td></tr>
  134. <tr class="separator:afbd932bcd7ceae5811204c5c1219d5ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
  135. <tr class="memitem:a3c419f92dd96329ba429ed6f8fe9a74e" id="r_a3c419f92dd96329ba429ed6f8fe9a74e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3c419f92dd96329ba429ed6f8fe9a74e">AddToPhysicsSystem</a> (<a class="el" href="_e_activation_8h.html#a4a0a592959c9a1beb4221e8908fce4a6">EActivation</a> inActivationMode, bool inLockBodies=true)</td></tr>
  136. <tr class="memdesc:a3c419f92dd96329ba429ed6f8fe9a74e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add bodies and constraints to the system and optionally activate the bodies. <br /></td></tr>
  137. <tr class="separator:a3c419f92dd96329ba429ed6f8fe9a74e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  138. <tr class="memitem:a76f2d87e4f41cc22ff280b9c962698cf" id="r_a76f2d87e4f41cc22ff280b9c962698cf"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a76f2d87e4f41cc22ff280b9c962698cf">RemoveFromPhysicsSystem</a> (bool inLockBodies=true)</td></tr>
  139. <tr class="memdesc:a76f2d87e4f41cc22ff280b9c962698cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove bodies and constraints from the system. <br /></td></tr>
  140. <tr class="separator:a76f2d87e4f41cc22ff280b9c962698cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
  141. <tr class="memitem:a584d5a41fd6118589b420ed96272827b" id="r_a584d5a41fd6118589b420ed96272827b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a584d5a41fd6118589b420ed96272827b">Activate</a> (bool inLockBodies=true)</td></tr>
  142. <tr class="memdesc:a584d5a41fd6118589b420ed96272827b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Wake up all bodies in the ragdoll. <br /></td></tr>
  143. <tr class="separator:a584d5a41fd6118589b420ed96272827b"><td class="memSeparator" colspan="2">&#160;</td></tr>
  144. <tr class="memitem:aa86e5cf49f753abc4ad077440d08faa0" id="r_aa86e5cf49f753abc4ad077440d08faa0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aa86e5cf49f753abc4ad077440d08faa0">IsActive</a> (bool inLockBodies=true) const</td></tr>
  145. <tr class="separator:aa86e5cf49f753abc4ad077440d08faa0"><td class="memSeparator" colspan="2">&#160;</td></tr>
  146. <tr class="memitem:add1a811191c5e75e489598594123e85b" id="r_add1a811191c5e75e489598594123e85b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#add1a811191c5e75e489598594123e85b">SetGroupID</a> (<a class="el" href="class_collision_group.html#ab44e31c9fa83c4818b1560d71c15dddd">CollisionGroup::GroupID</a> inGroupID, bool inLockBodies=true)</td></tr>
  147. <tr class="memdesc:add1a811191c5e75e489598594123e85b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the group ID on all bodies in the ragdoll. <br /></td></tr>
  148. <tr class="separator:add1a811191c5e75e489598594123e85b"><td class="memSeparator" colspan="2">&#160;</td></tr>
  149. <tr class="memitem:a535e76f7fb7bfee484d82570a3066ae7" id="r_a535e76f7fb7bfee484d82570a3066ae7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a535e76f7fb7bfee484d82570a3066ae7">SetPose</a> (const <a class="el" href="class_skeleton_pose.html">SkeletonPose</a> &amp;inPose, bool inLockBodies=true)</td></tr>
  150. <tr class="memdesc:a535e76f7fb7bfee484d82570a3066ae7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the ragdoll to a pose (calls <a class="el" href="class_body_interface.html#a369e907b665f5814d864790173062d7f">BodyInterface::SetPositionAndRotation</a> to instantly move the ragdoll) <br /></td></tr>
  151. <tr class="separator:a535e76f7fb7bfee484d82570a3066ae7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  152. <tr class="memitem:a789ec3bece447ec849e7ecb109c15a9c" id="r_a789ec3bece447ec849e7ecb109c15a9c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a789ec3bece447ec849e7ecb109c15a9c">SetPose</a> (<a class="el" href="_real_8h.html#a43bea2d9c57780b4b66bab1312fd77f3">RVec3Arg</a> inRootOffset, const <a class="el" href="class_mat44.html">Mat44</a> *inJointMatrices, bool inLockBodies=true)</td></tr>
  153. <tr class="memdesc:a789ec3bece447ec849e7ecb109c15a9c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Lower level version of SetPose that directly takes the world space joint matrices. <br /></td></tr>
  154. <tr class="separator:a789ec3bece447ec849e7ecb109c15a9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  155. <tr class="memitem:aeb6b26fdc0eefbb815af1d06c9e5da69" id="r_aeb6b26fdc0eefbb815af1d06c9e5da69"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aeb6b26fdc0eefbb815af1d06c9e5da69">GetPose</a> (<a class="el" href="class_skeleton_pose.html">SkeletonPose</a> &amp;outPose, bool inLockBodies=true)</td></tr>
  156. <tr class="memdesc:aeb6b26fdc0eefbb815af1d06c9e5da69"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the ragdoll pose (uses the world transform of the bodies to calculate the pose) <br /></td></tr>
  157. <tr class="separator:aeb6b26fdc0eefbb815af1d06c9e5da69"><td class="memSeparator" colspan="2">&#160;</td></tr>
  158. <tr class="memitem:a9c9a6d0791b776f4360d0cd9ddfc6f84" id="r_a9c9a6d0791b776f4360d0cd9ddfc6f84"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9c9a6d0791b776f4360d0cd9ddfc6f84">GetPose</a> (<a class="el" href="_real_8h.html#ae088dda635fb0ba1c96ea179d384ca40">RVec3</a> &amp;outRootOffset, <a class="el" href="class_mat44.html">Mat44</a> *outJointMatrices, bool inLockBodies=true)</td></tr>
  159. <tr class="memdesc:a9c9a6d0791b776f4360d0cd9ddfc6f84"><td class="mdescLeft">&#160;</td><td class="mdescRight">Lower level version of GetPose that directly returns the world space joint matrices. <br /></td></tr>
  160. <tr class="separator:a9c9a6d0791b776f4360d0cd9ddfc6f84"><td class="memSeparator" colspan="2">&#160;</td></tr>
  161. <tr class="memitem:ab311adf5d4b6bd72199e6d46d04886f8" id="r_ab311adf5d4b6bd72199e6d46d04886f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab311adf5d4b6bd72199e6d46d04886f8">ResetWarmStart</a> ()</td></tr>
  162. <tr class="memdesc:ab311adf5d4b6bd72199e6d46d04886f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">This function calls ResetWarmStart on all constraints. It can be used after calling SetPose to reset previous frames impulses. See: <a class="el" href="class_constraint.html#af6f6f7bc9ec10dbaf721515b19241294">Constraint::ResetWarmStart</a>. <br /></td></tr>
  163. <tr class="separator:ab311adf5d4b6bd72199e6d46d04886f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  164. <tr class="memitem:a5708fad69260914b0fdfd6d80a834d23" id="r_a5708fad69260914b0fdfd6d80a834d23"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5708fad69260914b0fdfd6d80a834d23">DriveToPoseUsingKinematics</a> (const <a class="el" href="class_skeleton_pose.html">SkeletonPose</a> &amp;inPose, float inDeltaTime, bool inLockBodies=true)</td></tr>
  165. <tr class="memdesc:a5708fad69260914b0fdfd6d80a834d23"><td class="mdescLeft">&#160;</td><td class="mdescRight">Drive the ragdoll to a specific pose by setting velocities on each of the bodies so that it will reach inPose in inDeltaTime. <br /></td></tr>
  166. <tr class="separator:a5708fad69260914b0fdfd6d80a834d23"><td class="memSeparator" colspan="2">&#160;</td></tr>
  167. <tr class="memitem:a1a25f99af9c3a3d8eb7a069143db34e6" id="r_a1a25f99af9c3a3d8eb7a069143db34e6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1a25f99af9c3a3d8eb7a069143db34e6">DriveToPoseUsingKinematics</a> (<a class="el" href="_real_8h.html#a43bea2d9c57780b4b66bab1312fd77f3">RVec3Arg</a> inRootOffset, const <a class="el" href="class_mat44.html">Mat44</a> *inJointMatrices, float inDeltaTime, bool inLockBodies=true)</td></tr>
  168. <tr class="memdesc:a1a25f99af9c3a3d8eb7a069143db34e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Lower level version of DriveToPoseUsingKinematics that directly takes the world space joint matrices. <br /></td></tr>
  169. <tr class="separator:a1a25f99af9c3a3d8eb7a069143db34e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
  170. <tr class="memitem:a367f16f5385eb377e5419d12457c22c6" id="r_a367f16f5385eb377e5419d12457c22c6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a367f16f5385eb377e5419d12457c22c6">DriveToPoseUsingMotors</a> (const <a class="el" href="class_skeleton_pose.html">SkeletonPose</a> &amp;inPose)</td></tr>
  171. <tr class="memdesc:a367f16f5385eb377e5419d12457c22c6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Drive the ragdoll to a specific pose by activating the motors on each constraint. <br /></td></tr>
  172. <tr class="separator:a367f16f5385eb377e5419d12457c22c6"><td class="memSeparator" colspan="2">&#160;</td></tr>
  173. <tr class="memitem:a8ba64ad182563d9110980155b86538bc" id="r_a8ba64ad182563d9110980155b86538bc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8ba64ad182563d9110980155b86538bc">SetLinearAndAngularVelocity</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inLinearVelocity, <a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inAngularVelocity, bool inLockBodies=true)</td></tr>
  174. <tr class="memdesc:a8ba64ad182563d9110980155b86538bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Control the linear and velocity of all bodies in the ragdoll. <br /></td></tr>
  175. <tr class="separator:a8ba64ad182563d9110980155b86538bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
  176. <tr class="memitem:ac0b96e2a568868b67792889d26137ec8" id="r_ac0b96e2a568868b67792889d26137ec8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac0b96e2a568868b67792889d26137ec8">SetLinearVelocity</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inLinearVelocity, bool inLockBodies=true)</td></tr>
  177. <tr class="memdesc:ac0b96e2a568868b67792889d26137ec8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the world space linear velocity of all bodies in the ragdoll. <br /></td></tr>
  178. <tr class="separator:ac0b96e2a568868b67792889d26137ec8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  179. <tr class="memitem:abcf8c32f6b7cbdf98bc29e2bf7075ba7" id="r_abcf8c32f6b7cbdf98bc29e2bf7075ba7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#abcf8c32f6b7cbdf98bc29e2bf7075ba7">AddLinearVelocity</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inLinearVelocity, bool inLockBodies=true)</td></tr>
  180. <tr class="memdesc:abcf8c32f6b7cbdf98bc29e2bf7075ba7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a world space velocity (in m/s) to all bodies in the ragdoll. <br /></td></tr>
  181. <tr class="separator:abcf8c32f6b7cbdf98bc29e2bf7075ba7"><td class="memSeparator" colspan="2">&#160;</td></tr>
  182. <tr class="memitem:a5ea2bcad36c7346ffd9a81dee6ab03d1" id="r_a5ea2bcad36c7346ffd9a81dee6ab03d1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a5ea2bcad36c7346ffd9a81dee6ab03d1">AddImpulse</a> (<a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a> inImpulse, bool inLockBodies=true)</td></tr>
  183. <tr class="memdesc:a5ea2bcad36c7346ffd9a81dee6ab03d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add impulse to all bodies of the ragdoll (center of mass of each of them) <br /></td></tr>
  184. <tr class="separator:a5ea2bcad36c7346ffd9a81dee6ab03d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  185. <tr class="memitem:ab6ccff7d0aee7c9931a308c722614fff" id="r_ab6ccff7d0aee7c9931a308c722614fff"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab6ccff7d0aee7c9931a308c722614fff">GetRootTransform</a> (<a class="el" href="_real_8h.html#ae088dda635fb0ba1c96ea179d384ca40">RVec3</a> &amp;outPosition, <a class="el" href="class_quat.html">Quat</a> &amp;outRotation, bool inLockBodies=true) const</td></tr>
  186. <tr class="memdesc:ab6ccff7d0aee7c9931a308c722614fff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the position and orientation of the root of the ragdoll. <br /></td></tr>
  187. <tr class="separator:ab6ccff7d0aee7c9931a308c722614fff"><td class="memSeparator" colspan="2">&#160;</td></tr>
  188. <tr class="memitem:a6395143c1655e5272eccdf0895d57c53" id="r_a6395143c1655e5272eccdf0895d57c53"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6395143c1655e5272eccdf0895d57c53">GetBodyCount</a> () const</td></tr>
  189. <tr class="memdesc:a6395143c1655e5272eccdf0895d57c53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get number of bodies in the ragdoll. <br /></td></tr>
  190. <tr class="separator:a6395143c1655e5272eccdf0895d57c53"><td class="memSeparator" colspan="2">&#160;</td></tr>
  191. <tr class="memitem:ac57cdfcd77dc9dce4679fcb45012083a" id="r_ac57cdfcd77dc9dce4679fcb45012083a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_body_i_d.html">BodyID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac57cdfcd77dc9dce4679fcb45012083a">GetBodyID</a> (int inBodyIndex) const</td></tr>
  192. <tr class="memdesc:ac57cdfcd77dc9dce4679fcb45012083a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access a body ID. <br /></td></tr>
  193. <tr class="separator:ac57cdfcd77dc9dce4679fcb45012083a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  194. <tr class="memitem:a98603396696b276256ffe74283a26fca" id="r_a98603396696b276256ffe74283a26fca"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_array.html">Array</a>&lt; <a class="el" href="class_body_i_d.html">BodyID</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a98603396696b276256ffe74283a26fca">GetBodyIDs</a> () const</td></tr>
  195. <tr class="memdesc:a98603396696b276256ffe74283a26fca"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access to the array of body IDs. <br /></td></tr>
  196. <tr class="separator:a98603396696b276256ffe74283a26fca"><td class="memSeparator" colspan="2">&#160;</td></tr>
  197. <tr class="memitem:a4aed9348c613c386d5cf32c25e3931f2" id="r_a4aed9348c613c386d5cf32c25e3931f2"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4aed9348c613c386d5cf32c25e3931f2">GetConstraintCount</a> () const</td></tr>
  198. <tr class="memdesc:a4aed9348c613c386d5cf32c25e3931f2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get number of constraints in the ragdoll. <br /></td></tr>
  199. <tr class="separator:a4aed9348c613c386d5cf32c25e3931f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
  200. <tr class="memitem:a86b347f11599361d0cf8bddcacad4295" id="r_a86b347f11599361d0cf8bddcacad4295"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_two_body_constraint.html">TwoBodyConstraint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a86b347f11599361d0cf8bddcacad4295">GetConstraint</a> (int inConstraintIndex)</td></tr>
  201. <tr class="memdesc:a86b347f11599361d0cf8bddcacad4295"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access a constraint by index. <br /></td></tr>
  202. <tr class="separator:a86b347f11599361d0cf8bddcacad4295"><td class="memSeparator" colspan="2">&#160;</td></tr>
  203. <tr class="memitem:a001b9a360f16a8a24d7cc547c763bbd8" id="r_a001b9a360f16a8a24d7cc547c763bbd8"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_two_body_constraint.html">TwoBodyConstraint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a001b9a360f16a8a24d7cc547c763bbd8">GetConstraint</a> (int inConstraintIndex) const</td></tr>
  204. <tr class="memdesc:a001b9a360f16a8a24d7cc547c763bbd8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access a constraint by index. <br /></td></tr>
  205. <tr class="separator:a001b9a360f16a8a24d7cc547c763bbd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  206. <tr class="memitem:a8ab1cc3715aafa05d4b04647c54282a3" id="r_a8ab1cc3715aafa05d4b04647c54282a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_a_a_box.html">AABox</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8ab1cc3715aafa05d4b04647c54282a3">GetWorldSpaceBounds</a> (bool inLockBodies=true) const</td></tr>
  207. <tr class="memdesc:a8ab1cc3715aafa05d4b04647c54282a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get world space bounding box for all bodies of the ragdoll. <br /></td></tr>
  208. <tr class="separator:a8ab1cc3715aafa05d4b04647c54282a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
  209. <tr class="memitem:adf2f2237288c30779260c4b1e744a76d" id="r_adf2f2237288c30779260c4b1e744a76d"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_ragdoll_settings.html">RagdollSettings</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#adf2f2237288c30779260c4b1e744a76d">GetRagdollSettings</a> () const</td></tr>
  210. <tr class="memdesc:adf2f2237288c30779260c4b1e744a76d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the settings object that created this ragdoll. <br /></td></tr>
  211. <tr class="separator:adf2f2237288c30779260c4b1e744a76d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  212. <tr class="inherit_header pub_methods_class_ref_target"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_ref_target')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_ref_target.html">RefTarget&lt; Ragdoll &gt;</a></td></tr>
  213. <tr class="memitem:a4c8a23738e2e1dd6369520a30e250b17 inherit pub_methods_class_ref_target" id="r_a4c8a23738e2e1dd6369520a30e250b17"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ref_target.html#a4c8a23738e2e1dd6369520a30e250b17">RefTarget</a> ()=default</td></tr>
  214. <tr class="memdesc:a4c8a23738e2e1dd6369520a30e250b17 inherit pub_methods_class_ref_target"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
  215. <tr class="separator:a4c8a23738e2e1dd6369520a30e250b17 inherit pub_methods_class_ref_target"><td class="memSeparator" colspan="2">&#160;</td></tr>
  216. <tr class="memitem:a50444e3b659c6f93c64aee224a93f6ab inherit pub_methods_class_ref_target" id="r_a50444e3b659c6f93c64aee224a93f6ab"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ref_target.html#a50444e3b659c6f93c64aee224a93f6ab">RefTarget</a> (const <a class="el" href="class_ref_target.html">RefTarget</a> &amp;)</td></tr>
  217. <tr class="separator:a50444e3b659c6f93c64aee224a93f6ab inherit pub_methods_class_ref_target"><td class="memSeparator" colspan="2">&#160;</td></tr>
  218. <tr class="memitem:ac3110b9f511287f881d7afaf26871e1b inherit pub_methods_class_ref_target" id="r_ac3110b9f511287f881d7afaf26871e1b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ref_target.html#ac3110b9f511287f881d7afaf26871e1b">~RefTarget</a> ()</td></tr>
  219. <tr class="memdesc:ac3110b9f511287f881d7afaf26871e1b inherit pub_methods_class_ref_target"><td class="mdescLeft">&#160;</td><td class="mdescRight">assert no one is referencing us <br /></td></tr>
  220. <tr class="separator:ac3110b9f511287f881d7afaf26871e1b inherit pub_methods_class_ref_target"><td class="memSeparator" colspan="2">&#160;</td></tr>
  221. <tr class="memitem:a3befa746ea517453572f6f4f5fc3b099 inherit pub_methods_class_ref_target" id="r_a3befa746ea517453572f6f4f5fc3b099"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ref_target.html#a3befa746ea517453572f6f4f5fc3b099">SetEmbedded</a> () const</td></tr>
  222. <tr class="separator:a3befa746ea517453572f6f4f5fc3b099 inherit pub_methods_class_ref_target"><td class="memSeparator" colspan="2">&#160;</td></tr>
  223. <tr class="memitem:a1fc15bfe979bc43a7fa71c7c34f87ed0 inherit pub_methods_class_ref_target" id="r_a1fc15bfe979bc43a7fa71c7c34f87ed0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_ref_target.html">RefTarget</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ref_target.html#a1fc15bfe979bc43a7fa71c7c34f87ed0">operator=</a> (const <a class="el" href="class_ref_target.html">RefTarget</a> &amp;)</td></tr>
  224. <tr class="memdesc:a1fc15bfe979bc43a7fa71c7c34f87ed0 inherit pub_methods_class_ref_target"><td class="mdescLeft">&#160;</td><td class="mdescRight">Assignment operator. <br /></td></tr>
  225. <tr class="separator:a1fc15bfe979bc43a7fa71c7c34f87ed0 inherit pub_methods_class_ref_target"><td class="memSeparator" colspan="2">&#160;</td></tr>
  226. <tr class="memitem:acaf07366183c51cd8460c7d3dcd07c2d inherit pub_methods_class_ref_target" id="r_acaf07366183c51cd8460c7d3dcd07c2d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_core_8h.html#a8f95e75e58492e87412191fabadd8ca8">uint32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ref_target.html#acaf07366183c51cd8460c7d3dcd07c2d">GetRefCount</a> () const</td></tr>
  227. <tr class="memdesc:acaf07366183c51cd8460c7d3dcd07c2d inherit pub_methods_class_ref_target"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get current refcount of this object. <br /></td></tr>
  228. <tr class="separator:acaf07366183c51cd8460c7d3dcd07c2d inherit pub_methods_class_ref_target"><td class="memSeparator" colspan="2">&#160;</td></tr>
  229. <tr class="memitem:acf02c18a343bc9de9d6afb7c966f0363 inherit pub_methods_class_ref_target" id="r_acf02c18a343bc9de9d6afb7c966f0363"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ref_target.html#acf02c18a343bc9de9d6afb7c966f0363">AddRef</a> () const</td></tr>
  230. <tr class="memdesc:acf02c18a343bc9de9d6afb7c966f0363 inherit pub_methods_class_ref_target"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add or release a reference to this object. <br /></td></tr>
  231. <tr class="separator:acf02c18a343bc9de9d6afb7c966f0363 inherit pub_methods_class_ref_target"><td class="memSeparator" colspan="2">&#160;</td></tr>
  232. <tr class="memitem:a0451661dd5d85b01f969319e767993eb inherit pub_methods_class_ref_target" id="r_a0451661dd5d85b01f969319e767993eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ref_target.html#a0451661dd5d85b01f969319e767993eb">Release</a> () const</td></tr>
  233. <tr class="separator:a0451661dd5d85b01f969319e767993eb inherit pub_methods_class_ref_target"><td class="memSeparator" colspan="2">&#160;</td></tr>
  234. <tr class="inherit_header pub_methods_class_non_copyable"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_methods_class_non_copyable')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_non_copyable.html">NonCopyable</a></td></tr>
  235. <tr class="memitem:a809b6e4ade7ae32f6d248f2a3b783d45 inherit pub_methods_class_non_copyable" id="r_a809b6e4ade7ae32f6d248f2a3b783d45"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_non_copyable.html#a809b6e4ade7ae32f6d248f2a3b783d45">NonCopyable</a> ()=default</td></tr>
  236. <tr class="separator:a809b6e4ade7ae32f6d248f2a3b783d45 inherit pub_methods_class_non_copyable"><td class="memSeparator" colspan="2">&#160;</td></tr>
  237. <tr class="memitem:a501d34ffcc34b30de6d541887a901057 inherit pub_methods_class_non_copyable" id="r_a501d34ffcc34b30de6d541887a901057"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_non_copyable.html#a501d34ffcc34b30de6d541887a901057">NonCopyable</a> (const <a class="el" href="class_non_copyable.html">NonCopyable</a> &amp;)=delete</td></tr>
  238. <tr class="separator:a501d34ffcc34b30de6d541887a901057 inherit pub_methods_class_non_copyable"><td class="memSeparator" colspan="2">&#160;</td></tr>
  239. <tr class="memitem:aaf9b12dcaae80c9d304df7a941d4e21f inherit pub_methods_class_non_copyable" id="r_aaf9b12dcaae80c9d304df7a941d4e21f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_non_copyable.html#aaf9b12dcaae80c9d304df7a941d4e21f">operator=</a> (const <a class="el" href="class_non_copyable.html">NonCopyable</a> &amp;)=delete</td></tr>
  240. <tr class="separator:aaf9b12dcaae80c9d304df7a941d4e21f inherit pub_methods_class_non_copyable"><td class="memSeparator" colspan="2">&#160;</td></tr>
  241. </table><table class="memberdecls">
  242. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="friends" name="friends"></a>
  243. Friends</h2></td></tr>
  244. <tr class="memitem:af287d5dd184fd0349ba44a279f6cacdf" id="r_af287d5dd184fd0349ba44a279f6cacdf"><td class="memItemLeft" align="right" valign="top">class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af287d5dd184fd0349ba44a279f6cacdf">RagdollSettings</a></td></tr>
  245. <tr class="memdesc:af287d5dd184fd0349ba44a279f6cacdf"><td class="mdescLeft">&#160;</td><td class="mdescRight">For <a class="el" href="class_ragdoll_settings.html#a6f5c2dd947c77b071431f91a1f1b6251">RagdollSettings::CreateRagdoll</a> function. <br /></td></tr>
  246. <tr class="separator:af287d5dd184fd0349ba44a279f6cacdf"><td class="memSeparator" colspan="2">&#160;</td></tr>
  247. </table><table class="memberdecls">
  248. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
  249. Additional Inherited Members</h2></td></tr>
  250. <tr class="inherit_header pub_static_methods_class_ref_target"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_static_methods_class_ref_target')"><img src="closed.png" alt="-"/>&#160;Static Public Member Functions inherited from <a class="el" href="class_ref_target.html">RefTarget&lt; Ragdoll &gt;</a></td></tr>
  251. <tr class="memitem:a58b5a94748691b18ecf651ce918ae743 inherit pub_static_methods_class_ref_target" id="r_a58b5a94748691b18ecf651ce918ae743"><td class="memItemLeft" align="right" valign="top">static int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ref_target.html#a58b5a94748691b18ecf651ce918ae743">sInternalGetRefCountOffset</a> ()</td></tr>
  252. <tr class="memdesc:a58b5a94748691b18ecf651ce918ae743 inherit pub_static_methods_class_ref_target"><td class="mdescLeft">&#160;</td><td class="mdescRight">INTERNAL HELPER FUNCTION USED BY SERIALIZATION. <br /></td></tr>
  253. <tr class="separator:a58b5a94748691b18ecf651ce918ae743 inherit pub_static_methods_class_ref_target"><td class="memSeparator" colspan="2">&#160;</td></tr>
  254. <tr class="inherit_header pro_attribs_class_ref_target"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_attribs_class_ref_target')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_ref_target.html">RefTarget&lt; Ragdoll &gt;</a></td></tr>
  255. <tr class="memitem:a12afba0bdae7706a0afd4d96ac128231 inherit pro_attribs_class_ref_target" id="r_a12afba0bdae7706a0afd4d96ac128231"><td class="memItemLeft" align="right" valign="top">atomic&lt; <a class="el" href="_core_8h.html#a8f95e75e58492e87412191fabadd8ca8">uint32</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ref_target.html#a12afba0bdae7706a0afd4d96ac128231">mRefCount</a></td></tr>
  256. <tr class="memdesc:a12afba0bdae7706a0afd4d96ac128231 inherit pro_attribs_class_ref_target"><td class="mdescLeft">&#160;</td><td class="mdescRight">Current reference count. <br /></td></tr>
  257. <tr class="separator:a12afba0bdae7706a0afd4d96ac128231 inherit pro_attribs_class_ref_target"><td class="memSeparator" colspan="2">&#160;</td></tr>
  258. <tr class="inherit_header pro_static_attribs_class_ref_target"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pro_static_attribs_class_ref_target')"><img src="closed.png" alt="-"/>&#160;Static Protected Attributes inherited from <a class="el" href="class_ref_target.html">RefTarget&lt; Ragdoll &gt;</a></td></tr>
  259. <tr class="memitem:ad37db773efa3c8756f6d95df3862b875 inherit pro_static_attribs_class_ref_target" id="r_ad37db773efa3c8756f6d95df3862b875"><td class="memItemLeft" align="right" valign="top">static constexpr <a class="el" href="_core_8h.html#a8f95e75e58492e87412191fabadd8ca8">uint32</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_ref_target.html#ad37db773efa3c8756f6d95df3862b875">cEmbedded</a></td></tr>
  260. <tr class="memdesc:ad37db773efa3c8756f6d95df3862b875 inherit pro_static_attribs_class_ref_target"><td class="mdescLeft">&#160;</td><td class="mdescRight">A large value that gets added to the refcount to mark the object as embedded. <br /></td></tr>
  261. <tr class="separator:ad37db773efa3c8756f6d95df3862b875 inherit pro_static_attribs_class_ref_target"><td class="memSeparator" colspan="2">&#160;</td></tr>
  262. </table>
  263. <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
  264. <div class="textblock"><p>Runtime ragdoll information. </p>
  265. </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
  266. <a id="abf6b6eb34e63af813cc4e394b536208e" name="abf6b6eb34e63af813cc4e394b536208e"></a>
  267. <h2 class="memtitle"><span class="permalink"><a href="#abf6b6eb34e63af813cc4e394b536208e">&#9670;&#160;</a></span>Ragdoll()</h2>
  268. <div class="memitem">
  269. <div class="memproto">
  270. <table class="mlabels">
  271. <tr>
  272. <td class="mlabels-left">
  273. <table class="memname">
  274. <tr>
  275. <td class="memname"><a class="el" href="_memory_8h.html#a91074fb218fe28954a0938c099ddd9e0">JPH_OVERRIDE_NEW_DELETE</a> Ragdoll::Ragdoll </td>
  276. <td>(</td>
  277. <td class="paramtype"><a class="el" href="class_physics_system.html">PhysicsSystem</a> *</td> <td class="paramname"><span class="paramname"><em>inSystem</em></span></td><td>)</td>
  278. <td></td>
  279. </tr>
  280. </table>
  281. </td>
  282. <td class="mlabels-right">
  283. <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
  284. </tr>
  285. </table>
  286. </div><div class="memdoc">
  287. <p>Constructor. </p>
  288. </div>
  289. </div>
  290. <a id="afbd932bcd7ceae5811204c5c1219d5ac" name="afbd932bcd7ceae5811204c5c1219d5ac"></a>
  291. <h2 class="memtitle"><span class="permalink"><a href="#afbd932bcd7ceae5811204c5c1219d5ac">&#9670;&#160;</a></span>~Ragdoll()</h2>
  292. <div class="memitem">
  293. <div class="memproto">
  294. <table class="memname">
  295. <tr>
  296. <td class="memname">Ragdoll::~Ragdoll </td>
  297. <td>(</td>
  298. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  299. <td></td>
  300. </tr>
  301. </table>
  302. </div><div class="memdoc">
  303. <p>Destructor. </p>
  304. </div>
  305. </div>
  306. <h2 class="groupheader">Member Function Documentation</h2>
  307. <a id="a584d5a41fd6118589b420ed96272827b" name="a584d5a41fd6118589b420ed96272827b"></a>
  308. <h2 class="memtitle"><span class="permalink"><a href="#a584d5a41fd6118589b420ed96272827b">&#9670;&#160;</a></span>Activate()</h2>
  309. <div class="memitem">
  310. <div class="memproto">
  311. <table class="memname">
  312. <tr>
  313. <td class="memname">void Ragdoll::Activate </td>
  314. <td>(</td>
  315. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span></td><td>)</td>
  316. <td></td>
  317. </tr>
  318. </table>
  319. </div><div class="memdoc">
  320. <p>Wake up all bodies in the ragdoll. </p>
  321. </div>
  322. </div>
  323. <a id="a5ea2bcad36c7346ffd9a81dee6ab03d1" name="a5ea2bcad36c7346ffd9a81dee6ab03d1"></a>
  324. <h2 class="memtitle"><span class="permalink"><a href="#a5ea2bcad36c7346ffd9a81dee6ab03d1">&#9670;&#160;</a></span>AddImpulse()</h2>
  325. <div class="memitem">
  326. <div class="memproto">
  327. <table class="memname">
  328. <tr>
  329. <td class="memname">void Ragdoll::AddImpulse </td>
  330. <td>(</td>
  331. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inImpulse</em></span>, </td>
  332. </tr>
  333. <tr>
  334. <td class="paramkey"></td>
  335. <td></td>
  336. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  337. </tr>
  338. </table>
  339. </div><div class="memdoc">
  340. <p>Add impulse to all bodies of the ragdoll (center of mass of each of them) </p>
  341. </div>
  342. </div>
  343. <a id="abcf8c32f6b7cbdf98bc29e2bf7075ba7" name="abcf8c32f6b7cbdf98bc29e2bf7075ba7"></a>
  344. <h2 class="memtitle"><span class="permalink"><a href="#abcf8c32f6b7cbdf98bc29e2bf7075ba7">&#9670;&#160;</a></span>AddLinearVelocity()</h2>
  345. <div class="memitem">
  346. <div class="memproto">
  347. <table class="memname">
  348. <tr>
  349. <td class="memname">void Ragdoll::AddLinearVelocity </td>
  350. <td>(</td>
  351. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inLinearVelocity</em></span>, </td>
  352. </tr>
  353. <tr>
  354. <td class="paramkey"></td>
  355. <td></td>
  356. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  357. </tr>
  358. </table>
  359. </div><div class="memdoc">
  360. <p>Add a world space velocity (in m/s) to all bodies in the ragdoll. </p>
  361. </div>
  362. </div>
  363. <a id="a3c419f92dd96329ba429ed6f8fe9a74e" name="a3c419f92dd96329ba429ed6f8fe9a74e"></a>
  364. <h2 class="memtitle"><span class="permalink"><a href="#a3c419f92dd96329ba429ed6f8fe9a74e">&#9670;&#160;</a></span>AddToPhysicsSystem()</h2>
  365. <div class="memitem">
  366. <div class="memproto">
  367. <table class="memname">
  368. <tr>
  369. <td class="memname">void Ragdoll::AddToPhysicsSystem </td>
  370. <td>(</td>
  371. <td class="paramtype"><a class="el" href="_e_activation_8h.html#a4a0a592959c9a1beb4221e8908fce4a6">EActivation</a></td> <td class="paramname"><span class="paramname"><em>inActivationMode</em></span>, </td>
  372. </tr>
  373. <tr>
  374. <td class="paramkey"></td>
  375. <td></td>
  376. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  377. </tr>
  378. </table>
  379. </div><div class="memdoc">
  380. <p>Add bodies and constraints to the system and optionally activate the bodies. </p>
  381. </div>
  382. </div>
  383. <a id="a5708fad69260914b0fdfd6d80a834d23" name="a5708fad69260914b0fdfd6d80a834d23"></a>
  384. <h2 class="memtitle"><span class="permalink"><a href="#a5708fad69260914b0fdfd6d80a834d23">&#9670;&#160;</a></span>DriveToPoseUsingKinematics() <span class="overload">[1/2]</span></h2>
  385. <div class="memitem">
  386. <div class="memproto">
  387. <table class="memname">
  388. <tr>
  389. <td class="memname">void Ragdoll::DriveToPoseUsingKinematics </td>
  390. <td>(</td>
  391. <td class="paramtype">const <a class="el" href="class_skeleton_pose.html">SkeletonPose</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inPose</em></span>, </td>
  392. </tr>
  393. <tr>
  394. <td class="paramkey"></td>
  395. <td></td>
  396. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inDeltaTime</em></span>, </td>
  397. </tr>
  398. <tr>
  399. <td class="paramkey"></td>
  400. <td></td>
  401. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  402. </tr>
  403. </table>
  404. </div><div class="memdoc">
  405. <p>Drive the ragdoll to a specific pose by setting velocities on each of the bodies so that it will reach inPose in inDeltaTime. </p>
  406. </div>
  407. </div>
  408. <a id="a1a25f99af9c3a3d8eb7a069143db34e6" name="a1a25f99af9c3a3d8eb7a069143db34e6"></a>
  409. <h2 class="memtitle"><span class="permalink"><a href="#a1a25f99af9c3a3d8eb7a069143db34e6">&#9670;&#160;</a></span>DriveToPoseUsingKinematics() <span class="overload">[2/2]</span></h2>
  410. <div class="memitem">
  411. <div class="memproto">
  412. <table class="memname">
  413. <tr>
  414. <td class="memname">void Ragdoll::DriveToPoseUsingKinematics </td>
  415. <td>(</td>
  416. <td class="paramtype"><a class="el" href="_real_8h.html#a43bea2d9c57780b4b66bab1312fd77f3">RVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inRootOffset</em></span>, </td>
  417. </tr>
  418. <tr>
  419. <td class="paramkey"></td>
  420. <td></td>
  421. <td class="paramtype">const <a class="el" href="class_mat44.html">Mat44</a> *</td> <td class="paramname"><span class="paramname"><em>inJointMatrices</em></span>, </td>
  422. </tr>
  423. <tr>
  424. <td class="paramkey"></td>
  425. <td></td>
  426. <td class="paramtype">float</td> <td class="paramname"><span class="paramname"><em>inDeltaTime</em></span>, </td>
  427. </tr>
  428. <tr>
  429. <td class="paramkey"></td>
  430. <td></td>
  431. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  432. </tr>
  433. </table>
  434. </div><div class="memdoc">
  435. <p>Lower level version of DriveToPoseUsingKinematics that directly takes the world space joint matrices. </p>
  436. </div>
  437. </div>
  438. <a id="a367f16f5385eb377e5419d12457c22c6" name="a367f16f5385eb377e5419d12457c22c6"></a>
  439. <h2 class="memtitle"><span class="permalink"><a href="#a367f16f5385eb377e5419d12457c22c6">&#9670;&#160;</a></span>DriveToPoseUsingMotors()</h2>
  440. <div class="memitem">
  441. <div class="memproto">
  442. <table class="memname">
  443. <tr>
  444. <td class="memname">void Ragdoll::DriveToPoseUsingMotors </td>
  445. <td>(</td>
  446. <td class="paramtype">const <a class="el" href="class_skeleton_pose.html">SkeletonPose</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inPose</em></span></td><td>)</td>
  447. <td></td>
  448. </tr>
  449. </table>
  450. </div><div class="memdoc">
  451. <p>Drive the ragdoll to a specific pose by activating the motors on each constraint. </p>
  452. </div>
  453. </div>
  454. <a id="a6395143c1655e5272eccdf0895d57c53" name="a6395143c1655e5272eccdf0895d57c53"></a>
  455. <h2 class="memtitle"><span class="permalink"><a href="#a6395143c1655e5272eccdf0895d57c53">&#9670;&#160;</a></span>GetBodyCount()</h2>
  456. <div class="memitem">
  457. <div class="memproto">
  458. <table class="mlabels">
  459. <tr>
  460. <td class="mlabels-left">
  461. <table class="memname">
  462. <tr>
  463. <td class="memname">size_t Ragdoll::GetBodyCount </td>
  464. <td>(</td>
  465. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  466. <td> const</td>
  467. </tr>
  468. </table>
  469. </td>
  470. <td class="mlabels-right">
  471. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  472. </tr>
  473. </table>
  474. </div><div class="memdoc">
  475. <p>Get number of bodies in the ragdoll. </p>
  476. </div>
  477. </div>
  478. <a id="ac57cdfcd77dc9dce4679fcb45012083a" name="ac57cdfcd77dc9dce4679fcb45012083a"></a>
  479. <h2 class="memtitle"><span class="permalink"><a href="#ac57cdfcd77dc9dce4679fcb45012083a">&#9670;&#160;</a></span>GetBodyID()</h2>
  480. <div class="memitem">
  481. <div class="memproto">
  482. <table class="mlabels">
  483. <tr>
  484. <td class="mlabels-left">
  485. <table class="memname">
  486. <tr>
  487. <td class="memname"><a class="el" href="class_body_i_d.html">BodyID</a> Ragdoll::GetBodyID </td>
  488. <td>(</td>
  489. <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>inBodyIndex</em></span></td><td>)</td>
  490. <td> const</td>
  491. </tr>
  492. </table>
  493. </td>
  494. <td class="mlabels-right">
  495. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  496. </tr>
  497. </table>
  498. </div><div class="memdoc">
  499. <p>Access a body ID. </p>
  500. </div>
  501. </div>
  502. <a id="a98603396696b276256ffe74283a26fca" name="a98603396696b276256ffe74283a26fca"></a>
  503. <h2 class="memtitle"><span class="permalink"><a href="#a98603396696b276256ffe74283a26fca">&#9670;&#160;</a></span>GetBodyIDs()</h2>
  504. <div class="memitem">
  505. <div class="memproto">
  506. <table class="mlabels">
  507. <tr>
  508. <td class="mlabels-left">
  509. <table class="memname">
  510. <tr>
  511. <td class="memname">const <a class="el" href="class_array.html">Array</a>&lt; <a class="el" href="class_body_i_d.html">BodyID</a> &gt; &amp; Ragdoll::GetBodyIDs </td>
  512. <td>(</td>
  513. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  514. <td> const</td>
  515. </tr>
  516. </table>
  517. </td>
  518. <td class="mlabels-right">
  519. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  520. </tr>
  521. </table>
  522. </div><div class="memdoc">
  523. <p>Access to the array of body IDs. </p>
  524. </div>
  525. </div>
  526. <a id="a86b347f11599361d0cf8bddcacad4295" name="a86b347f11599361d0cf8bddcacad4295"></a>
  527. <h2 class="memtitle"><span class="permalink"><a href="#a86b347f11599361d0cf8bddcacad4295">&#9670;&#160;</a></span>GetConstraint() <span class="overload">[1/2]</span></h2>
  528. <div class="memitem">
  529. <div class="memproto">
  530. <table class="mlabels">
  531. <tr>
  532. <td class="mlabels-left">
  533. <table class="memname">
  534. <tr>
  535. <td class="memname"><a class="el" href="class_two_body_constraint.html">TwoBodyConstraint</a> * Ragdoll::GetConstraint </td>
  536. <td>(</td>
  537. <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>inConstraintIndex</em></span></td><td>)</td>
  538. <td></td>
  539. </tr>
  540. </table>
  541. </td>
  542. <td class="mlabels-right">
  543. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  544. </tr>
  545. </table>
  546. </div><div class="memdoc">
  547. <p>Access a constraint by index. </p>
  548. </div>
  549. </div>
  550. <a id="a001b9a360f16a8a24d7cc547c763bbd8" name="a001b9a360f16a8a24d7cc547c763bbd8"></a>
  551. <h2 class="memtitle"><span class="permalink"><a href="#a001b9a360f16a8a24d7cc547c763bbd8">&#9670;&#160;</a></span>GetConstraint() <span class="overload">[2/2]</span></h2>
  552. <div class="memitem">
  553. <div class="memproto">
  554. <table class="mlabels">
  555. <tr>
  556. <td class="mlabels-left">
  557. <table class="memname">
  558. <tr>
  559. <td class="memname">const <a class="el" href="class_two_body_constraint.html">TwoBodyConstraint</a> * Ragdoll::GetConstraint </td>
  560. <td>(</td>
  561. <td class="paramtype">int</td> <td class="paramname"><span class="paramname"><em>inConstraintIndex</em></span></td><td>)</td>
  562. <td> const</td>
  563. </tr>
  564. </table>
  565. </td>
  566. <td class="mlabels-right">
  567. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  568. </tr>
  569. </table>
  570. </div><div class="memdoc">
  571. <p>Access a constraint by index. </p>
  572. </div>
  573. </div>
  574. <a id="a4aed9348c613c386d5cf32c25e3931f2" name="a4aed9348c613c386d5cf32c25e3931f2"></a>
  575. <h2 class="memtitle"><span class="permalink"><a href="#a4aed9348c613c386d5cf32c25e3931f2">&#9670;&#160;</a></span>GetConstraintCount()</h2>
  576. <div class="memitem">
  577. <div class="memproto">
  578. <table class="mlabels">
  579. <tr>
  580. <td class="mlabels-left">
  581. <table class="memname">
  582. <tr>
  583. <td class="memname">size_t Ragdoll::GetConstraintCount </td>
  584. <td>(</td>
  585. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  586. <td> const</td>
  587. </tr>
  588. </table>
  589. </td>
  590. <td class="mlabels-right">
  591. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  592. </tr>
  593. </table>
  594. </div><div class="memdoc">
  595. <p>Get number of constraints in the ragdoll. </p>
  596. </div>
  597. </div>
  598. <a id="a9c9a6d0791b776f4360d0cd9ddfc6f84" name="a9c9a6d0791b776f4360d0cd9ddfc6f84"></a>
  599. <h2 class="memtitle"><span class="permalink"><a href="#a9c9a6d0791b776f4360d0cd9ddfc6f84">&#9670;&#160;</a></span>GetPose() <span class="overload">[1/2]</span></h2>
  600. <div class="memitem">
  601. <div class="memproto">
  602. <table class="memname">
  603. <tr>
  604. <td class="memname">void Ragdoll::GetPose </td>
  605. <td>(</td>
  606. <td class="paramtype"><a class="el" href="_real_8h.html#ae088dda635fb0ba1c96ea179d384ca40">RVec3</a> &amp;</td> <td class="paramname"><span class="paramname"><em>outRootOffset</em></span>, </td>
  607. </tr>
  608. <tr>
  609. <td class="paramkey"></td>
  610. <td></td>
  611. <td class="paramtype"><a class="el" href="class_mat44.html">Mat44</a> *</td> <td class="paramname"><span class="paramname"><em>outJointMatrices</em></span>, </td>
  612. </tr>
  613. <tr>
  614. <td class="paramkey"></td>
  615. <td></td>
  616. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  617. </tr>
  618. </table>
  619. </div><div class="memdoc">
  620. <p>Lower level version of GetPose that directly returns the world space joint matrices. </p>
  621. </div>
  622. </div>
  623. <a id="aeb6b26fdc0eefbb815af1d06c9e5da69" name="aeb6b26fdc0eefbb815af1d06c9e5da69"></a>
  624. <h2 class="memtitle"><span class="permalink"><a href="#aeb6b26fdc0eefbb815af1d06c9e5da69">&#9670;&#160;</a></span>GetPose() <span class="overload">[2/2]</span></h2>
  625. <div class="memitem">
  626. <div class="memproto">
  627. <table class="memname">
  628. <tr>
  629. <td class="memname">void Ragdoll::GetPose </td>
  630. <td>(</td>
  631. <td class="paramtype"><a class="el" href="class_skeleton_pose.html">SkeletonPose</a> &amp;</td> <td class="paramname"><span class="paramname"><em>outPose</em></span>, </td>
  632. </tr>
  633. <tr>
  634. <td class="paramkey"></td>
  635. <td></td>
  636. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  637. </tr>
  638. </table>
  639. </div><div class="memdoc">
  640. <p>Get the ragdoll pose (uses the world transform of the bodies to calculate the pose) </p>
  641. </div>
  642. </div>
  643. <a id="adf2f2237288c30779260c4b1e744a76d" name="adf2f2237288c30779260c4b1e744a76d"></a>
  644. <h2 class="memtitle"><span class="permalink"><a href="#adf2f2237288c30779260c4b1e744a76d">&#9670;&#160;</a></span>GetRagdollSettings()</h2>
  645. <div class="memitem">
  646. <div class="memproto">
  647. <table class="mlabels">
  648. <tr>
  649. <td class="mlabels-left">
  650. <table class="memname">
  651. <tr>
  652. <td class="memname">const <a class="el" href="class_ragdoll_settings.html">RagdollSettings</a> * Ragdoll::GetRagdollSettings </td>
  653. <td>(</td>
  654. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  655. <td> const</td>
  656. </tr>
  657. </table>
  658. </td>
  659. <td class="mlabels-right">
  660. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  661. </tr>
  662. </table>
  663. </div><div class="memdoc">
  664. <p>Get the settings object that created this ragdoll. </p>
  665. </div>
  666. </div>
  667. <a id="ab6ccff7d0aee7c9931a308c722614fff" name="ab6ccff7d0aee7c9931a308c722614fff"></a>
  668. <h2 class="memtitle"><span class="permalink"><a href="#ab6ccff7d0aee7c9931a308c722614fff">&#9670;&#160;</a></span>GetRootTransform()</h2>
  669. <div class="memitem">
  670. <div class="memproto">
  671. <table class="memname">
  672. <tr>
  673. <td class="memname">void Ragdoll::GetRootTransform </td>
  674. <td>(</td>
  675. <td class="paramtype"><a class="el" href="_real_8h.html#ae088dda635fb0ba1c96ea179d384ca40">RVec3</a> &amp;</td> <td class="paramname"><span class="paramname"><em>outPosition</em></span>, </td>
  676. </tr>
  677. <tr>
  678. <td class="paramkey"></td>
  679. <td></td>
  680. <td class="paramtype"><a class="el" href="class_quat.html">Quat</a> &amp;</td> <td class="paramname"><span class="paramname"><em>outRotation</em></span>, </td>
  681. </tr>
  682. <tr>
  683. <td class="paramkey"></td>
  684. <td></td>
  685. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;) const</td>
  686. </tr>
  687. </table>
  688. </div><div class="memdoc">
  689. <p>Get the position and orientation of the root of the ragdoll. </p>
  690. </div>
  691. </div>
  692. <a id="a8ab1cc3715aafa05d4b04647c54282a3" name="a8ab1cc3715aafa05d4b04647c54282a3"></a>
  693. <h2 class="memtitle"><span class="permalink"><a href="#a8ab1cc3715aafa05d4b04647c54282a3">&#9670;&#160;</a></span>GetWorldSpaceBounds()</h2>
  694. <div class="memitem">
  695. <div class="memproto">
  696. <table class="memname">
  697. <tr>
  698. <td class="memname"><a class="el" href="class_a_a_box.html">AABox</a> Ragdoll::GetWorldSpaceBounds </td>
  699. <td>(</td>
  700. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span></td><td>)</td>
  701. <td> const</td>
  702. </tr>
  703. </table>
  704. </div><div class="memdoc">
  705. <p>Get world space bounding box for all bodies of the ragdoll. </p>
  706. </div>
  707. </div>
  708. <a id="aa86e5cf49f753abc4ad077440d08faa0" name="aa86e5cf49f753abc4ad077440d08faa0"></a>
  709. <h2 class="memtitle"><span class="permalink"><a href="#aa86e5cf49f753abc4ad077440d08faa0">&#9670;&#160;</a></span>IsActive()</h2>
  710. <div class="memitem">
  711. <div class="memproto">
  712. <table class="memname">
  713. <tr>
  714. <td class="memname">bool Ragdoll::IsActive </td>
  715. <td>(</td>
  716. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span></td><td>)</td>
  717. <td> const</td>
  718. </tr>
  719. </table>
  720. </div><div class="memdoc">
  721. <p>Check if one or more of the bodies in the ragdoll are active. Note that this involves locking the bodies (if inLockBodies is true) and looping over them. An alternative and possibly faster way could be to install a <a class="el" href="class_body_activation_listener.html">BodyActivationListener</a> and count the number of active bodies of a ragdoll as they're activated / deactivated (basically check if the body that activates / deactivates is in <a class="el" href="#a98603396696b276256ffe74283a26fca" title="Access to the array of body IDs.">GetBodyIDs()</a> and increment / decrement a counter). </p>
  722. </div>
  723. </div>
  724. <a id="a76f2d87e4f41cc22ff280b9c962698cf" name="a76f2d87e4f41cc22ff280b9c962698cf"></a>
  725. <h2 class="memtitle"><span class="permalink"><a href="#a76f2d87e4f41cc22ff280b9c962698cf">&#9670;&#160;</a></span>RemoveFromPhysicsSystem()</h2>
  726. <div class="memitem">
  727. <div class="memproto">
  728. <table class="memname">
  729. <tr>
  730. <td class="memname">void Ragdoll::RemoveFromPhysicsSystem </td>
  731. <td>(</td>
  732. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span></td><td>)</td>
  733. <td></td>
  734. </tr>
  735. </table>
  736. </div><div class="memdoc">
  737. <p>Remove bodies and constraints from the system. </p>
  738. </div>
  739. </div>
  740. <a id="ab311adf5d4b6bd72199e6d46d04886f8" name="ab311adf5d4b6bd72199e6d46d04886f8"></a>
  741. <h2 class="memtitle"><span class="permalink"><a href="#ab311adf5d4b6bd72199e6d46d04886f8">&#9670;&#160;</a></span>ResetWarmStart()</h2>
  742. <div class="memitem">
  743. <div class="memproto">
  744. <table class="memname">
  745. <tr>
  746. <td class="memname">void Ragdoll::ResetWarmStart </td>
  747. <td>(</td>
  748. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  749. <td></td>
  750. </tr>
  751. </table>
  752. </div><div class="memdoc">
  753. <p>This function calls ResetWarmStart on all constraints. It can be used after calling SetPose to reset previous frames impulses. See: <a class="el" href="class_constraint.html#af6f6f7bc9ec10dbaf721515b19241294">Constraint::ResetWarmStart</a>. </p>
  754. </div>
  755. </div>
  756. <a id="add1a811191c5e75e489598594123e85b" name="add1a811191c5e75e489598594123e85b"></a>
  757. <h2 class="memtitle"><span class="permalink"><a href="#add1a811191c5e75e489598594123e85b">&#9670;&#160;</a></span>SetGroupID()</h2>
  758. <div class="memitem">
  759. <div class="memproto">
  760. <table class="memname">
  761. <tr>
  762. <td class="memname">void Ragdoll::SetGroupID </td>
  763. <td>(</td>
  764. <td class="paramtype"><a class="el" href="class_collision_group.html#ab44e31c9fa83c4818b1560d71c15dddd">CollisionGroup::GroupID</a></td> <td class="paramname"><span class="paramname"><em>inGroupID</em></span>, </td>
  765. </tr>
  766. <tr>
  767. <td class="paramkey"></td>
  768. <td></td>
  769. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  770. </tr>
  771. </table>
  772. </div><div class="memdoc">
  773. <p>Set the group ID on all bodies in the ragdoll. </p>
  774. </div>
  775. </div>
  776. <a id="a8ba64ad182563d9110980155b86538bc" name="a8ba64ad182563d9110980155b86538bc"></a>
  777. <h2 class="memtitle"><span class="permalink"><a href="#a8ba64ad182563d9110980155b86538bc">&#9670;&#160;</a></span>SetLinearAndAngularVelocity()</h2>
  778. <div class="memitem">
  779. <div class="memproto">
  780. <table class="memname">
  781. <tr>
  782. <td class="memname">void Ragdoll::SetLinearAndAngularVelocity </td>
  783. <td>(</td>
  784. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inLinearVelocity</em></span>, </td>
  785. </tr>
  786. <tr>
  787. <td class="paramkey"></td>
  788. <td></td>
  789. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inAngularVelocity</em></span>, </td>
  790. </tr>
  791. <tr>
  792. <td class="paramkey"></td>
  793. <td></td>
  794. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  795. </tr>
  796. </table>
  797. </div><div class="memdoc">
  798. <p>Control the linear and velocity of all bodies in the ragdoll. </p>
  799. </div>
  800. </div>
  801. <a id="ac0b96e2a568868b67792889d26137ec8" name="ac0b96e2a568868b67792889d26137ec8"></a>
  802. <h2 class="memtitle"><span class="permalink"><a href="#ac0b96e2a568868b67792889d26137ec8">&#9670;&#160;</a></span>SetLinearVelocity()</h2>
  803. <div class="memitem">
  804. <div class="memproto">
  805. <table class="memname">
  806. <tr>
  807. <td class="memname">void Ragdoll::SetLinearVelocity </td>
  808. <td>(</td>
  809. <td class="paramtype"><a class="el" href="_math_types_8h.html#a6bc57c31f15cea47640b580d03737c68">Vec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inLinearVelocity</em></span>, </td>
  810. </tr>
  811. <tr>
  812. <td class="paramkey"></td>
  813. <td></td>
  814. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  815. </tr>
  816. </table>
  817. </div><div class="memdoc">
  818. <p>Set the world space linear velocity of all bodies in the ragdoll. </p>
  819. </div>
  820. </div>
  821. <a id="a535e76f7fb7bfee484d82570a3066ae7" name="a535e76f7fb7bfee484d82570a3066ae7"></a>
  822. <h2 class="memtitle"><span class="permalink"><a href="#a535e76f7fb7bfee484d82570a3066ae7">&#9670;&#160;</a></span>SetPose() <span class="overload">[1/2]</span></h2>
  823. <div class="memitem">
  824. <div class="memproto">
  825. <table class="memname">
  826. <tr>
  827. <td class="memname">void Ragdoll::SetPose </td>
  828. <td>(</td>
  829. <td class="paramtype">const <a class="el" href="class_skeleton_pose.html">SkeletonPose</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inPose</em></span>, </td>
  830. </tr>
  831. <tr>
  832. <td class="paramkey"></td>
  833. <td></td>
  834. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  835. </tr>
  836. </table>
  837. </div><div class="memdoc">
  838. <p>Set the ragdoll to a pose (calls <a class="el" href="class_body_interface.html#a369e907b665f5814d864790173062d7f">BodyInterface::SetPositionAndRotation</a> to instantly move the ragdoll) </p>
  839. </div>
  840. </div>
  841. <a id="a789ec3bece447ec849e7ecb109c15a9c" name="a789ec3bece447ec849e7ecb109c15a9c"></a>
  842. <h2 class="memtitle"><span class="permalink"><a href="#a789ec3bece447ec849e7ecb109c15a9c">&#9670;&#160;</a></span>SetPose() <span class="overload">[2/2]</span></h2>
  843. <div class="memitem">
  844. <div class="memproto">
  845. <table class="memname">
  846. <tr>
  847. <td class="memname">void Ragdoll::SetPose </td>
  848. <td>(</td>
  849. <td class="paramtype"><a class="el" href="_real_8h.html#a43bea2d9c57780b4b66bab1312fd77f3">RVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inRootOffset</em></span>, </td>
  850. </tr>
  851. <tr>
  852. <td class="paramkey"></td>
  853. <td></td>
  854. <td class="paramtype">const <a class="el" href="class_mat44.html">Mat44</a> *</td> <td class="paramname"><span class="paramname"><em>inJointMatrices</em></span>, </td>
  855. </tr>
  856. <tr>
  857. <td class="paramkey"></td>
  858. <td></td>
  859. <td class="paramtype">bool</td> <td class="paramname"><span class="paramname"><em>inLockBodies</em></span><span class="paramdefsep"> = </span><span class="paramdefval">true</span>&#160;)</td>
  860. </tr>
  861. </table>
  862. </div><div class="memdoc">
  863. <p>Lower level version of SetPose that directly takes the world space joint matrices. </p>
  864. </div>
  865. </div>
  866. <h2 class="groupheader">Friends And Related Symbol Documentation</h2>
  867. <a id="af287d5dd184fd0349ba44a279f6cacdf" name="af287d5dd184fd0349ba44a279f6cacdf"></a>
  868. <h2 class="memtitle"><span class="permalink"><a href="#af287d5dd184fd0349ba44a279f6cacdf">&#9670;&#160;</a></span>RagdollSettings</h2>
  869. <div class="memitem">
  870. <div class="memproto">
  871. <table class="mlabels">
  872. <tr>
  873. <td class="mlabels-left">
  874. <table class="memname">
  875. <tr>
  876. <td class="memname">friend class <a class="el" href="class_ragdoll_settings.html">RagdollSettings</a></td>
  877. </tr>
  878. </table>
  879. </td>
  880. <td class="mlabels-right">
  881. <span class="mlabels"><span class="mlabel">friend</span></span> </td>
  882. </tr>
  883. </table>
  884. </div><div class="memdoc">
  885. <p>For <a class="el" href="class_ragdoll_settings.html#a6f5c2dd947c77b071431f91a1f1b6251">RagdollSettings::CreateRagdoll</a> function. </p>
  886. </div>
  887. </div>
  888. <hr/>The documentation for this class was generated from the following files:<ul>
  889. <li>Jolt/Physics/Ragdoll/<a class="el" href="_ragdoll_8h_source.html">Ragdoll.h</a></li>
  890. <li>Jolt/Physics/Ragdoll/<a class="el" href="_ragdoll_8cpp.html">Ragdoll.cpp</a></li>
  891. </ul>
  892. </div><!-- contents -->
  893. </div><!-- doc-content -->
  894. <!-- start footer part -->
  895. <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  896. <ul>
  897. <li class="navelem"><a class="el" href="class_ragdoll.html">Ragdoll</a></li>
  898. <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.12.0 </li>
  899. </ul>
  900. </div>
  901. </body>
  902. </html>