class_body_creation_settings.html 84 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255
  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: BodyCreationSettings 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_body_creation_settings.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-types">Public Types</a> &#124;
  108. <a href="#pub-methods">Public Member Functions</a> &#124;
  109. <a href="#pub-static-methods">Static Public Member Functions</a> &#124;
  110. <a href="#pub-attribs">Public Attributes</a> &#124;
  111. <a href="class_body_creation_settings-members.html">List of all members</a> </div>
  112. <div class="headertitle"><div class="title">BodyCreationSettings Class Reference</div></div>
  113. </div><!--header-->
  114. <div class="contents">
  115. <p>Settings for constructing a rigid body.
  116. <a href="#details">More...</a></p>
  117. <p><code>#include &lt;<a class="el" href="_body_creation_settings_8h_source.html">BodyCreationSettings.h</a>&gt;</code></p>
  118. <div class="dynheader">
  119. Inheritance diagram for BodyCreationSettings:</div>
  120. <div class="dyncontent">
  121. <div class="center">
  122. <img src="class_body_creation_settings.png" usemap="#BodyCreationSettings_map" alt=""/>
  123. <map id="BodyCreationSettings_map" name="BodyCreationSettings_map">
  124. <area href="class_ragdoll_settings_1_1_part.html" title="A single rigid body sub part of the ragdoll." alt="RagdollSettings::Part" shape="rect" coords="0,56,133,80"/>
  125. </map>
  126. </div></div>
  127. <table class="memberdecls">
  128. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
  129. Public Types</h2></td></tr>
  130. <tr class="memitem:a1b23e021697957516526baf59f549f0e" id="r_a1b23e021697957516526baf59f549f0e"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1b23e021697957516526baf59f549f0e">GroupFilterToIDMap</a> = <a class="el" href="namespace_stream_utils.html#a2c35a4aac73cd9d9d8c567e1cd528603">StreamUtils::ObjectToIDMap</a>&lt;<a class="el" href="class_group_filter.html">GroupFilter</a>&gt;</td></tr>
  131. <tr class="separator:a1b23e021697957516526baf59f549f0e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  132. <tr class="memitem:a0489d76cdd3ec9368ef0edfd99878c92" id="r_a0489d76cdd3ec9368ef0edfd99878c92"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0489d76cdd3ec9368ef0edfd99878c92">IDToGroupFilterMap</a> = <a class="el" href="namespace_stream_utils.html#a4e9b8d62b617c5d31288ae8313a6b6cb">StreamUtils::IDToObjectMap</a>&lt;<a class="el" href="class_group_filter.html">GroupFilter</a>&gt;</td></tr>
  133. <tr class="separator:a0489d76cdd3ec9368ef0edfd99878c92"><td class="memSeparator" colspan="2">&#160;</td></tr>
  134. <tr class="memitem:af26faa1cd67cfc60a3f9ebe90873f446" id="r_af26faa1cd67cfc60a3f9ebe90873f446"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af26faa1cd67cfc60a3f9ebe90873f446">ShapeToIDMap</a> = <a class="el" href="class_shape.html#a5944ae14aeacc70bb42a38d7c3a31220">Shape::ShapeToIDMap</a></td></tr>
  135. <tr class="separator:af26faa1cd67cfc60a3f9ebe90873f446"><td class="memSeparator" colspan="2">&#160;</td></tr>
  136. <tr class="memitem:a38d63e9e7f85d16ecca1db06ca0dabc8" id="r_a38d63e9e7f85d16ecca1db06ca0dabc8"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a38d63e9e7f85d16ecca1db06ca0dabc8">IDToShapeMap</a> = <a class="el" href="class_shape.html#a06ba83cf87213a408c508acbc786d2fe">Shape::IDToShapeMap</a></td></tr>
  137. <tr class="separator:a38d63e9e7f85d16ecca1db06ca0dabc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  138. <tr class="memitem:a2cb4b24152969669d6f2193e2f9f7b76" id="r_a2cb4b24152969669d6f2193e2f9f7b76"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a2cb4b24152969669d6f2193e2f9f7b76">MaterialToIDMap</a> = <a class="el" href="namespace_stream_utils.html#a2c35a4aac73cd9d9d8c567e1cd528603">StreamUtils::ObjectToIDMap</a>&lt;<a class="el" href="class_physics_material.html">PhysicsMaterial</a>&gt;</td></tr>
  139. <tr class="separator:a2cb4b24152969669d6f2193e2f9f7b76"><td class="memSeparator" colspan="2">&#160;</td></tr>
  140. <tr class="memitem:ada70b5de55b8cc6ea9f93e67b0d98227" id="r_ada70b5de55b8cc6ea9f93e67b0d98227"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ada70b5de55b8cc6ea9f93e67b0d98227">IDToMaterialMap</a> = <a class="el" href="namespace_stream_utils.html#a4e9b8d62b617c5d31288ae8313a6b6cb">StreamUtils::IDToObjectMap</a>&lt;<a class="el" href="class_physics_material.html">PhysicsMaterial</a>&gt;</td></tr>
  141. <tr class="separator:ada70b5de55b8cc6ea9f93e67b0d98227"><td class="memSeparator" colspan="2">&#160;</td></tr>
  142. <tr class="memitem:a3d7ae6cc90958bea23ab0383b6b90cc1" id="r_a3d7ae6cc90958bea23ab0383b6b90cc1"><td class="memItemLeft" align="right" valign="top">using&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3d7ae6cc90958bea23ab0383b6b90cc1">BCSResult</a> = <a class="el" href="class_result.html">Result</a>&lt;<a class="el" href="class_body_creation_settings.html">BodyCreationSettings</a>&gt;</td></tr>
  143. <tr class="separator:a3d7ae6cc90958bea23ab0383b6b90cc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  144. </table><table class="memberdecls">
  145. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
  146. Public Member Functions</h2></td></tr>
  147. <tr class="memitem:aec5d90393812f5354e8505f70f4b00c9" id="r_aec5d90393812f5354e8505f70f4b00c9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aec5d90393812f5354e8505f70f4b00c9">BodyCreationSettings</a> ()=default</td></tr>
  148. <tr class="memdesc:aec5d90393812f5354e8505f70f4b00c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor. <br /></td></tr>
  149. <tr class="separator:aec5d90393812f5354e8505f70f4b00c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  150. <tr class="memitem:a6926eec582c4902d3040637ff5ff2332" id="r_a6926eec582c4902d3040637ff5ff2332"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a6926eec582c4902d3040637ff5ff2332">BodyCreationSettings</a> (const <a class="el" href="class_shape_settings.html">ShapeSettings</a> *inShape, <a class="el" href="_real_8h.html#a43bea2d9c57780b4b66bab1312fd77f3">RVec3Arg</a> inPosition, <a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a> inRotation, <a class="el" href="_motion_type_8h.html#a328245ddbb758681fad3c44c9d488fd8">EMotionType</a> inMotionType, <a class="el" href="_object_layer_8h.html#a960eb396e2803ddad87bf25e0dcb4470">ObjectLayer</a> inObjectLayer)</td></tr>
  151. <tr class="separator:a6926eec582c4902d3040637ff5ff2332"><td class="memSeparator" colspan="2">&#160;</td></tr>
  152. <tr class="memitem:a807ecf473d73ab8a468ee4126f5ac79b" id="r_a807ecf473d73ab8a468ee4126f5ac79b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a807ecf473d73ab8a468ee4126f5ac79b">BodyCreationSettings</a> (const <a class="el" href="class_shape.html">Shape</a> *inShape, <a class="el" href="_real_8h.html#a43bea2d9c57780b4b66bab1312fd77f3">RVec3Arg</a> inPosition, <a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a> inRotation, <a class="el" href="_motion_type_8h.html#a328245ddbb758681fad3c44c9d488fd8">EMotionType</a> inMotionType, <a class="el" href="_object_layer_8h.html#a960eb396e2803ddad87bf25e0dcb4470">ObjectLayer</a> inObjectLayer)</td></tr>
  153. <tr class="separator:a807ecf473d73ab8a468ee4126f5ac79b"><td class="memSeparator" colspan="2">&#160;</td></tr>
  154. <tr class="memitem:a35093b07ed1677438e4f3d004d0d8a2e" id="r_a35093b07ed1677438e4f3d004d0d8a2e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_shape_settings.html">ShapeSettings</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a35093b07ed1677438e4f3d004d0d8a2e">GetShapeSettings</a> () const</td></tr>
  155. <tr class="memdesc:a35093b07ed1677438e4f3d004d0d8a2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access to the shape settings object. This contains serializable (non-runtime optimized) information about the <a class="el" href="class_shape.html" title="Base class for all shapes (collision volume of a body). Defines a virtual interface for collision det...">Shape</a>. <br /></td></tr>
  156. <tr class="separator:a35093b07ed1677438e4f3d004d0d8a2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  157. <tr class="memitem:af8e4ddec15be3ad2ba87e99139fec1e5" id="r_af8e4ddec15be3ad2ba87e99139fec1e5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af8e4ddec15be3ad2ba87e99139fec1e5">SetShapeSettings</a> (const <a class="el" href="class_shape_settings.html">ShapeSettings</a> *inShape)</td></tr>
  158. <tr class="separator:af8e4ddec15be3ad2ba87e99139fec1e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
  159. <tr class="memitem:ac3bf8e14319df094679f6644f6b80e48" id="r_ac3bf8e14319df094679f6644f6b80e48"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_shape.html#a11c1ce0984dccb67176566d78331375e">Shape::ShapeResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac3bf8e14319df094679f6644f6b80e48">ConvertShapeSettings</a> ()</td></tr>
  160. <tr class="memdesc:ac3bf8e14319df094679f6644f6b80e48"><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert <a class="el" href="class_shape_settings.html">ShapeSettings</a> object into a <a class="el" href="class_shape.html" title="Base class for all shapes (collision volume of a body). Defines a virtual interface for collision det...">Shape</a> object. This will free the <a class="el" href="class_shape_settings.html">ShapeSettings</a> object and make the object ready for runtime. Serialization is no longer possible after this. <br /></td></tr>
  161. <tr class="separator:ac3bf8e14319df094679f6644f6b80e48"><td class="memSeparator" colspan="2">&#160;</td></tr>
  162. <tr class="memitem:ab668ffb9415e2e9d8790bb532b83bf53" id="r_ab668ffb9415e2e9d8790bb532b83bf53"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_shape.html">Shape</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab668ffb9415e2e9d8790bb532b83bf53">GetShape</a> () const</td></tr>
  163. <tr class="memdesc:ab668ffb9415e2e9d8790bb532b83bf53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access to the run-time shape object. Will convert from <a class="el" href="class_shape_settings.html">ShapeSettings</a> object if needed. <br /></td></tr>
  164. <tr class="separator:ab668ffb9415e2e9d8790bb532b83bf53"><td class="memSeparator" colspan="2">&#160;</td></tr>
  165. <tr class="memitem:a0c74dee7b551bce3c0a7477283f27145" id="r_a0c74dee7b551bce3c0a7477283f27145"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a0c74dee7b551bce3c0a7477283f27145">SetShape</a> (const <a class="el" href="class_shape.html">Shape</a> *inShape)</td></tr>
  166. <tr class="separator:a0c74dee7b551bce3c0a7477283f27145"><td class="memSeparator" colspan="2">&#160;</td></tr>
  167. <tr class="memitem:a9386fbbcc940bfb89b8442f342748e32" id="r_a9386fbbcc940bfb89b8442f342748e32"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9386fbbcc940bfb89b8442f342748e32">HasMassProperties</a> () const</td></tr>
  168. <tr class="memdesc:a9386fbbcc940bfb89b8442f342748e32"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if the mass properties of this body will be calculated (only relevant for kinematic or dynamic objects that need a <a class="el" href="class_motion_properties.html" title="The Body class only keeps track of state for static bodies, the MotionProperties class keeps the addi...">MotionProperties</a> object) <br /></td></tr>
  169. <tr class="separator:a9386fbbcc940bfb89b8442f342748e32"><td class="memSeparator" colspan="2">&#160;</td></tr>
  170. <tr class="memitem:acce5eaf6c72e325d23d8d791039c6954" id="r_acce5eaf6c72e325d23d8d791039c6954"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_mass_properties.html">MassProperties</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acce5eaf6c72e325d23d8d791039c6954">GetMassProperties</a> () const</td></tr>
  171. <tr class="memdesc:acce5eaf6c72e325d23d8d791039c6954"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate (or return when overridden) the mass and inertia for this body. <br /></td></tr>
  172. <tr class="separator:acce5eaf6c72e325d23d8d791039c6954"><td class="memSeparator" colspan="2">&#160;</td></tr>
  173. <tr class="memitem:aabf81d68f5c180341800d69b401dddee" id="r_aabf81d68f5c180341800d69b401dddee"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aabf81d68f5c180341800d69b401dddee">SaveBinaryState</a> (<a class="el" href="class_stream_out.html">StreamOut</a> &amp;inStream) const</td></tr>
  174. <tr class="memdesc:aabf81d68f5c180341800d69b401dddee"><td class="mdescLeft">&#160;</td><td class="mdescRight">Saves the state of this object in binary form to inStream. Doesn't store the shape nor the group filter. <br /></td></tr>
  175. <tr class="separator:aabf81d68f5c180341800d69b401dddee"><td class="memSeparator" colspan="2">&#160;</td></tr>
  176. <tr class="memitem:a272d105640dc6f4376a064a8ebe2c343" id="r_a272d105640dc6f4376a064a8ebe2c343"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a272d105640dc6f4376a064a8ebe2c343">RestoreBinaryState</a> (<a class="el" href="class_stream_in.html">StreamIn</a> &amp;inStream)</td></tr>
  177. <tr class="memdesc:a272d105640dc6f4376a064a8ebe2c343"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restore the state of this object from inStream. Doesn't restore the shape nor the group filter. <br /></td></tr>
  178. <tr class="separator:a272d105640dc6f4376a064a8ebe2c343"><td class="memSeparator" colspan="2">&#160;</td></tr>
  179. <tr class="memitem:a1fd7d70d7e594158940a126d69c64a77" id="r_a1fd7d70d7e594158940a126d69c64a77"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a1fd7d70d7e594158940a126d69c64a77">SaveWithChildren</a> (<a class="el" href="class_stream_out.html">StreamOut</a> &amp;inStream, <a class="el" href="#af26faa1cd67cfc60a3f9ebe90873f446">ShapeToIDMap</a> *ioShapeMap, <a class="el" href="#a2cb4b24152969669d6f2193e2f9f7b76">MaterialToIDMap</a> *ioMaterialMap, <a class="el" href="#a1b23e021697957516526baf59f549f0e">GroupFilterToIDMap</a> *ioGroupFilterMap) const</td></tr>
  180. <tr class="separator:a1fd7d70d7e594158940a126d69c64a77"><td class="memSeparator" colspan="2">&#160;</td></tr>
  181. </table><table class="memberdecls">
  182. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-static-methods" name="pub-static-methods"></a>
  183. Static Public Member Functions</h2></td></tr>
  184. <tr class="memitem:ace0c4cc07ee02c076d09ec966f510860" id="r_ace0c4cc07ee02c076d09ec966f510860"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="#a3d7ae6cc90958bea23ab0383b6b90cc1">BCSResult</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ace0c4cc07ee02c076d09ec966f510860">sRestoreWithChildren</a> (<a class="el" href="class_stream_in.html">StreamIn</a> &amp;inStream, <a class="el" href="#a38d63e9e7f85d16ecca1db06ca0dabc8">IDToShapeMap</a> &amp;ioShapeMap, <a class="el" href="#ada70b5de55b8cc6ea9f93e67b0d98227">IDToMaterialMap</a> &amp;ioMaterialMap, <a class="el" href="#a0489d76cdd3ec9368ef0edfd99878c92">IDToGroupFilterMap</a> &amp;ioGroupFilterMap)</td></tr>
  185. <tr class="memdesc:ace0c4cc07ee02c076d09ec966f510860"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restore body creation settings, its shape, materials and group filter. Pass in an empty map in ioShapeMap / ioMaterialMap / ioGroupFilterMap or reuse the same map while reading multiple shapes from the same stream in order to restore duplicates. <br /></td></tr>
  186. <tr class="separator:ace0c4cc07ee02c076d09ec966f510860"><td class="memSeparator" colspan="2">&#160;</td></tr>
  187. </table><table class="memberdecls">
  188. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
  189. Public Attributes</h2></td></tr>
  190. <tr class="memitem:a71bcd0c1b8798b78246f3ccb9c2ab637" id="r_a71bcd0c1b8798b78246f3ccb9c2ab637"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_real_8h.html#ae088dda635fb0ba1c96ea179d384ca40">RVec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a71bcd0c1b8798b78246f3ccb9c2ab637">mPosition</a> = <a class="el" href="class_vec3.html#ad03c52ab27761bc1e64e33c47632ba51">RVec3::sZero</a>()</td></tr>
  191. <tr class="memdesc:a71bcd0c1b8798b78246f3ccb9c2ab637"><td class="mdescLeft">&#160;</td><td class="mdescRight">Position of the body (not of the center of mass) <br /></td></tr>
  192. <tr class="separator:a71bcd0c1b8798b78246f3ccb9c2ab637"><td class="memSeparator" colspan="2">&#160;</td></tr>
  193. <tr class="memitem:a8b4eaa2eceb1493a1a70d3bef422e3ad" id="r_a8b4eaa2eceb1493a1a70d3bef422e3ad"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_quat.html">Quat</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a8b4eaa2eceb1493a1a70d3bef422e3ad">mRotation</a> = <a class="el" href="class_quat.html#a73a43fe262fbbbc0b1872d238b972794">Quat::sIdentity</a>()</td></tr>
  194. <tr class="memdesc:a8b4eaa2eceb1493a1a70d3bef422e3ad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Rotation of the body. <br /></td></tr>
  195. <tr class="separator:a8b4eaa2eceb1493a1a70d3bef422e3ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
  196. <tr class="memitem:a31f029773df5278a498c417d0a7e2c83" id="r_a31f029773df5278a498c417d0a7e2c83"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_vec3.html">Vec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a31f029773df5278a498c417d0a7e2c83">mLinearVelocity</a> = <a class="el" href="class_vec3.html#ad03c52ab27761bc1e64e33c47632ba51">Vec3::sZero</a>()</td></tr>
  197. <tr class="memdesc:a31f029773df5278a498c417d0a7e2c83"><td class="mdescLeft">&#160;</td><td class="mdescRight">World space linear velocity of the center of mass (m/s) <br /></td></tr>
  198. <tr class="separator:a31f029773df5278a498c417d0a7e2c83"><td class="memSeparator" colspan="2">&#160;</td></tr>
  199. <tr class="memitem:a390f9572645214782004c8296f0e90cf" id="r_a390f9572645214782004c8296f0e90cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_vec3.html">Vec3</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a390f9572645214782004c8296f0e90cf">mAngularVelocity</a> = <a class="el" href="class_vec3.html#ad03c52ab27761bc1e64e33c47632ba51">Vec3::sZero</a>()</td></tr>
  200. <tr class="memdesc:a390f9572645214782004c8296f0e90cf"><td class="mdescLeft">&#160;</td><td class="mdescRight">World space angular velocity (rad/s) <br /></td></tr>
  201. <tr class="separator:a390f9572645214782004c8296f0e90cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
  202. <tr class="memitem:aca747cc540a625d75c5a5abf0ad68216" id="r_aca747cc540a625d75c5a5abf0ad68216"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_core_8h.html#a60e8696a4678cd348e991a1f172e53f7">uint64</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aca747cc540a625d75c5a5abf0ad68216">mUserData</a> = 0</td></tr>
  203. <tr class="memdesc:aca747cc540a625d75c5a5abf0ad68216"><td class="mdescLeft">&#160;</td><td class="mdescRight">User data value (can be used by application) <br /></td></tr>
  204. <tr class="separator:aca747cc540a625d75c5a5abf0ad68216"><td class="memSeparator" colspan="2">&#160;</td></tr>
  205. <tr><td colspan="2"><div class="groupHeader">Collision settings</div></td></tr>
  206. <tr class="memitem:a976a222257c112edca9c43805e1331cd" id="r_a976a222257c112edca9c43805e1331cd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_object_layer_8h.html#a960eb396e2803ddad87bf25e0dcb4470">ObjectLayer</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a976a222257c112edca9c43805e1331cd">mObjectLayer</a> = 0</td></tr>
  207. <tr class="memdesc:a976a222257c112edca9c43805e1331cd"><td class="mdescLeft">&#160;</td><td class="mdescRight">The collision layer this body belongs to (determines if two objects can collide) <br /></td></tr>
  208. <tr class="separator:a976a222257c112edca9c43805e1331cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
  209. <tr class="memitem:ae0a1420ed9449ccae2b1b58715f6fe41" id="r_ae0a1420ed9449ccae2b1b58715f6fe41"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_collision_group.html">CollisionGroup</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ae0a1420ed9449ccae2b1b58715f6fe41">mCollisionGroup</a></td></tr>
  210. <tr class="memdesc:ae0a1420ed9449ccae2b1b58715f6fe41"><td class="mdescLeft">&#160;</td><td class="mdescRight">The collision group this body belongs to (determines if two objects can collide) <br /></td></tr>
  211. <tr class="separator:ae0a1420ed9449ccae2b1b58715f6fe41"><td class="memSeparator" colspan="2">&#160;</td></tr>
  212. <tr><td colspan="2"><div class="groupHeader">Simulation properties</div></td></tr>
  213. <tr class="memitem:ad8fc3740b604486c0b030b2d9d381b2f" id="r_ad8fc3740b604486c0b030b2d9d381b2f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_motion_type_8h.html#a328245ddbb758681fad3c44c9d488fd8">EMotionType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad8fc3740b604486c0b030b2d9d381b2f">mMotionType</a> = <a class="el" href="_motion_type_8h.html#a328245ddbb758681fad3c44c9d488fd8a971fd8cc345d8bd9f92e9f7d88fdf20c">EMotionType::Dynamic</a></td></tr>
  214. <tr class="memdesc:ad8fc3740b604486c0b030b2d9d381b2f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Motion type, determines if the object is static, dynamic or kinematic. <br /></td></tr>
  215. <tr class="separator:ad8fc3740b604486c0b030b2d9d381b2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  216. <tr class="memitem:a871979dfec392313a4fe00760ff9ae07" id="r_a871979dfec392313a4fe00760ff9ae07"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_allowed_d_o_fs_8h.html#a47bc570d6b4f457c417078ebab07d913">EAllowedDOFs</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a871979dfec392313a4fe00760ff9ae07">mAllowedDOFs</a> = <a class="el" href="_allowed_d_o_fs_8h.html#a47bc570d6b4f457c417078ebab07d913ab1c94ca2fbc3e78fc30069c8d0f01680">EAllowedDOFs::All</a></td></tr>
  217. <tr class="memdesc:a871979dfec392313a4fe00760ff9ae07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Which degrees of freedom this body has (can be used to limit simulation to 2D) <br /></td></tr>
  218. <tr class="separator:a871979dfec392313a4fe00760ff9ae07"><td class="memSeparator" colspan="2">&#160;</td></tr>
  219. <tr class="memitem:afe686c8d207fb99499a89e19d1780158" id="r_afe686c8d207fb99499a89e19d1780158"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#afe686c8d207fb99499a89e19d1780158">mAllowDynamicOrKinematic</a> = false</td></tr>
  220. <tr class="memdesc:afe686c8d207fb99499a89e19d1780158"><td class="mdescLeft">&#160;</td><td class="mdescRight">When this body is created as static, this setting tells the system to create a <a class="el" href="class_motion_properties.html" title="The Body class only keeps track of state for static bodies, the MotionProperties class keeps the addi...">MotionProperties</a> object so that the object can be switched to kinematic or dynamic. <br /></td></tr>
  221. <tr class="separator:afe686c8d207fb99499a89e19d1780158"><td class="memSeparator" colspan="2">&#160;</td></tr>
  222. <tr class="memitem:ad327b3b479e63fe5bfbecf0510d69d44" id="r_ad327b3b479e63fe5bfbecf0510d69d44"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad327b3b479e63fe5bfbecf0510d69d44">mIsSensor</a> = false</td></tr>
  223. <tr class="memdesc:ad327b3b479e63fe5bfbecf0510d69d44"><td class="mdescLeft">&#160;</td><td class="mdescRight">If this body is a sensor. A sensor will receive collision callbacks, but will not cause any collision responses and can be used as a trigger volume. See description at <a class="el" href="class_body.html#a5d8e1f66eed163868a633cdb93859f77">Body::SetIsSensor</a>. <br /></td></tr>
  224. <tr class="separator:ad327b3b479e63fe5bfbecf0510d69d44"><td class="memSeparator" colspan="2">&#160;</td></tr>
  225. <tr class="memitem:a824e71e8ce2673afc3a7716411016ee6" id="r_a824e71e8ce2673afc3a7716411016ee6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a824e71e8ce2673afc3a7716411016ee6">mCollideKinematicVsNonDynamic</a> = false</td></tr>
  226. <tr class="memdesc:a824e71e8ce2673afc3a7716411016ee6"><td class="mdescLeft">&#160;</td><td class="mdescRight">If kinematic objects can generate contact points against other kinematic or static objects. See description at <a class="el" href="class_body.html#adefe521957195c57e06a905431160d10">Body::SetCollideKinematicVsNonDynamic</a>. <br /></td></tr>
  227. <tr class="separator:a824e71e8ce2673afc3a7716411016ee6"><td class="memSeparator" colspan="2">&#160;</td></tr>
  228. <tr class="memitem:a50e9e038bb9df7acfe71dbb56480271c" id="r_a50e9e038bb9df7acfe71dbb56480271c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a50e9e038bb9df7acfe71dbb56480271c">mUseManifoldReduction</a> = true</td></tr>
  229. <tr class="memdesc:a50e9e038bb9df7acfe71dbb56480271c"><td class="mdescLeft">&#160;</td><td class="mdescRight">If this body should use manifold reduction (see description at <a class="el" href="class_body.html#a8c24ff0c08f1a31fc57d01420f9cae8b">Body::SetUseManifoldReduction</a>) <br /></td></tr>
  230. <tr class="separator:a50e9e038bb9df7acfe71dbb56480271c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  231. <tr class="memitem:a4bfa019a5f9d834392c7c8243c885396" id="r_a4bfa019a5f9d834392c7c8243c885396"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4bfa019a5f9d834392c7c8243c885396">mApplyGyroscopicForce</a> = false</td></tr>
  232. <tr class="memdesc:a4bfa019a5f9d834392c7c8243c885396"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set to indicate that the gyroscopic force should be applied to this body (aka Dzhanibekov effect, see <a href="https://en.wikipedia.org/wiki/Tennis_racket_theorem">https://en.wikipedia.org/wiki/Tennis_racket_theorem</a>) <br /></td></tr>
  233. <tr class="separator:a4bfa019a5f9d834392c7c8243c885396"><td class="memSeparator" colspan="2">&#160;</td></tr>
  234. <tr class="memitem:a66c8700dfa9204a90b9bd7c7db50e85f" id="r_a66c8700dfa9204a90b9bd7c7db50e85f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_motion_quality_8h.html#af43db3453103c2e62526f54dd8542d3a">EMotionQuality</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a66c8700dfa9204a90b9bd7c7db50e85f">mMotionQuality</a> = <a class="el" href="_motion_quality_8h.html#af43db3453103c2e62526f54dd8542d3aa4984667940802dedc139aa7a430a6553">EMotionQuality::Discrete</a></td></tr>
  235. <tr class="memdesc:a66c8700dfa9204a90b9bd7c7db50e85f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Motion quality, or how well it detects collisions when it has a high velocity. <br /></td></tr>
  236. <tr class="separator:a66c8700dfa9204a90b9bd7c7db50e85f"><td class="memSeparator" colspan="2">&#160;</td></tr>
  237. <tr class="memitem:a3ff57f2892a515d062718701434601c9" id="r_a3ff57f2892a515d062718701434601c9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a3ff57f2892a515d062718701434601c9">mEnhancedInternalEdgeRemoval</a> = false</td></tr>
  238. <tr class="memdesc:a3ff57f2892a515d062718701434601c9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set to indicate that extra effort should be made to try to remove ghost contacts (collisions with internal edges of a mesh). This is more expensive but makes bodies move smoother over a mesh with convex edges. <br /></td></tr>
  239. <tr class="separator:a3ff57f2892a515d062718701434601c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
  240. <tr class="memitem:a23d76509d285d785fbc84c7573343be8" id="r_a23d76509d285d785fbc84c7573343be8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a23d76509d285d785fbc84c7573343be8">mAllowSleeping</a> = true</td></tr>
  241. <tr class="memdesc:a23d76509d285d785fbc84c7573343be8"><td class="mdescLeft">&#160;</td><td class="mdescRight">If this body can go to sleep or not. <br /></td></tr>
  242. <tr class="separator:a23d76509d285d785fbc84c7573343be8"><td class="memSeparator" colspan="2">&#160;</td></tr>
  243. <tr class="memitem:a43650f269088d8351a1ad5a1da8824c0" id="r_a43650f269088d8351a1ad5a1da8824c0"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a43650f269088d8351a1ad5a1da8824c0">mFriction</a> = 0.2f</td></tr>
  244. <tr class="memdesc:a43650f269088d8351a1ad5a1da8824c0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Friction of the body (dimensionless number, usually between 0 and 1, 0 = no friction, 1 = friction force equals force that presses the two bodies together). Note that bodies can have negative friction but the combined friction (see <a class="el" href="class_physics_system.html#ae1cc3e726b7e186f642c7da5f6c6a2c2">PhysicsSystem::SetCombineFriction</a>) should never go below zero. <br /></td></tr>
  245. <tr class="separator:a43650f269088d8351a1ad5a1da8824c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
  246. <tr class="memitem:ad248781dc0ad8671c19af02106c9f054" id="r_ad248781dc0ad8671c19af02106c9f054"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad248781dc0ad8671c19af02106c9f054">mRestitution</a> = 0.0f</td></tr>
  247. <tr class="memdesc:ad248781dc0ad8671c19af02106c9f054"><td class="mdescLeft">&#160;</td><td class="mdescRight">Restitution of body (dimensionless number, usually between 0 and 1, 0 = completely inelastic collision response, 1 = completely elastic collision response). Note that bodies can have negative restitution but the combined restitution (see <a class="el" href="class_physics_system.html#a1bf5312ff70cb942e4899eb0766d5ebe">PhysicsSystem::SetCombineRestitution</a>) should never go below zero. <br /></td></tr>
  248. <tr class="separator:ad248781dc0ad8671c19af02106c9f054"><td class="memSeparator" colspan="2">&#160;</td></tr>
  249. <tr class="memitem:acda69c9b63d5be31be48b13059d3d438" id="r_acda69c9b63d5be31be48b13059d3d438"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#acda69c9b63d5be31be48b13059d3d438">mLinearDamping</a> = 0.05f</td></tr>
  250. <tr class="memdesc:acda69c9b63d5be31be48b13059d3d438"><td class="mdescLeft">&#160;</td><td class="mdescRight">Linear damping: dv/dt = -c * v. c. Value should be zero or positive and is usually close to 0. <br /></td></tr>
  251. <tr class="separator:acda69c9b63d5be31be48b13059d3d438"><td class="memSeparator" colspan="2">&#160;</td></tr>
  252. <tr class="memitem:ac900bf31bcafa1dd0d5dfe42969687dd" id="r_ac900bf31bcafa1dd0d5dfe42969687dd"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ac900bf31bcafa1dd0d5dfe42969687dd">mAngularDamping</a> = 0.05f</td></tr>
  253. <tr class="memdesc:ac900bf31bcafa1dd0d5dfe42969687dd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Angular damping: dw/dt = -c * w. c. Value should be zero or positive and is usually close to 0. <br /></td></tr>
  254. <tr class="separator:ac900bf31bcafa1dd0d5dfe42969687dd"><td class="memSeparator" colspan="2">&#160;</td></tr>
  255. <tr class="memitem:a54911a3a04da2c077dd27c5f8bca960d" id="r_a54911a3a04da2c077dd27c5f8bca960d"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a54911a3a04da2c077dd27c5f8bca960d">mMaxLinearVelocity</a> = 500.0f</td></tr>
  256. <tr class="memdesc:a54911a3a04da2c077dd27c5f8bca960d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum linear velocity that this body can reach (m/s) <br /></td></tr>
  257. <tr class="separator:a54911a3a04da2c077dd27c5f8bca960d"><td class="memSeparator" colspan="2">&#160;</td></tr>
  258. <tr class="memitem:a86ee89ede6a31b9f8df4e9c257051119" id="r_a86ee89ede6a31b9f8df4e9c257051119"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a86ee89ede6a31b9f8df4e9c257051119">mMaxAngularVelocity</a> = 0.25f * JPH_PI * 60.0f</td></tr>
  259. <tr class="memdesc:a86ee89ede6a31b9f8df4e9c257051119"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maximum angular velocity that this body can reach (rad/s) <br /></td></tr>
  260. <tr class="separator:a86ee89ede6a31b9f8df4e9c257051119"><td class="memSeparator" colspan="2">&#160;</td></tr>
  261. <tr class="memitem:a428f8482f140f5bd09e542d6d9c699c2" id="r_a428f8482f140f5bd09e542d6d9c699c2"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a428f8482f140f5bd09e542d6d9c699c2">mGravityFactor</a> = 1.0f</td></tr>
  262. <tr class="memdesc:a428f8482f140f5bd09e542d6d9c699c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Value to multiply gravity with for this body. <br /></td></tr>
  263. <tr class="separator:a428f8482f140f5bd09e542d6d9c699c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
  264. <tr class="memitem:a84ee0ecf67e26c9ffffe42ad435b8ec1" id="r_a84ee0ecf67e26c9ffffe42ad435b8ec1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a84ee0ecf67e26c9ffffe42ad435b8ec1">mNumVelocityStepsOverride</a> = 0</td></tr>
  265. <tr class="memdesc:a84ee0ecf67e26c9ffffe42ad435b8ec1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Used only when this body is dynamic and colliding. Override for the number of solver velocity iterations to run, 0 means use the default in <a class="el" href="struct_physics_settings.html#a66af679ba7f202b402bb23d0a0e117ad">PhysicsSettings::mNumVelocitySteps</a>. The number of iterations to use is the max of all contacts and constraints in the island. <br /></td></tr>
  266. <tr class="separator:a84ee0ecf67e26c9ffffe42ad435b8ec1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  267. <tr class="memitem:a9caedbea102f60fadfbf1e96fc8cde85" id="r_a9caedbea102f60fadfbf1e96fc8cde85"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a9caedbea102f60fadfbf1e96fc8cde85">mNumPositionStepsOverride</a> = 0</td></tr>
  268. <tr class="memdesc:a9caedbea102f60fadfbf1e96fc8cde85"><td class="mdescLeft">&#160;</td><td class="mdescRight">Used only when this body is dynamic and colliding. Override for the number of solver position iterations to run, 0 means use the default in <a class="el" href="struct_physics_settings.html#a3724f8c1ef9269076dac93c4d7b7cfdb" title="Number of solver position iterations to run.">PhysicsSettings::mNumPositionSteps</a>. The number of iterations to use is the max of all contacts and constraints in the island. <br /></td></tr>
  269. <tr class="separator:a9caedbea102f60fadfbf1e96fc8cde85"><td class="memSeparator" colspan="2">&#160;</td></tr>
  270. </table><table class="memberdecls">
  271. <tr class="heading"><td colspan="2"><h2 class="groupheader">Mass properties of the body (by default calculated by the shape)</h2></td></tr>
  272. <tr class="memitem:aaefa0f471f73fbfaf0f288e56e20b384" id="r_aaefa0f471f73fbfaf0f288e56e20b384"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_body_creation_settings_8h.html#a758835911f67742d0ad74841f6bdbe38">EOverrideMassProperties</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#aaefa0f471f73fbfaf0f288e56e20b384">mOverrideMassProperties</a> = <a class="el" href="_body_creation_settings_8h.html#a758835911f67742d0ad74841f6bdbe38a945736934966a328b226aea49bb2ead6">EOverrideMassProperties::CalculateMassAndInertia</a></td></tr>
  273. <tr class="memdesc:aaefa0f471f73fbfaf0f288e56e20b384"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determines how mMassPropertiesOverride will be used. <br /></td></tr>
  274. <tr class="separator:aaefa0f471f73fbfaf0f288e56e20b384"><td class="memSeparator" colspan="2">&#160;</td></tr>
  275. <tr class="memitem:a4bd85f028390274d79f291ea20f7c9f5" id="r_a4bd85f028390274d79f291ea20f7c9f5"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4bd85f028390274d79f291ea20f7c9f5">mInertiaMultiplier</a> = 1.0f</td></tr>
  276. <tr class="memdesc:a4bd85f028390274d79f291ea20f7c9f5"><td class="mdescLeft">&#160;</td><td class="mdescRight">When calculating the inertia (not when it is provided) the calculated inertia will be multiplied by this value. <br /></td></tr>
  277. <tr class="separator:a4bd85f028390274d79f291ea20f7c9f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
  278. <tr class="memitem:af7f022cb3042750da187b24e8a242c99" id="r_af7f022cb3042750da187b24e8a242c99"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_mass_properties.html">MassProperties</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#af7f022cb3042750da187b24e8a242c99">mMassPropertiesOverride</a></td></tr>
  279. <tr class="memdesc:af7f022cb3042750da187b24e8a242c99"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contains replacement mass settings which override the automatically calculated values. <br /></td></tr>
  280. <tr class="separator:af7f022cb3042750da187b24e8a242c99"><td class="memSeparator" colspan="2">&#160;</td></tr>
  281. </table>
  282. <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
  283. <div class="textblock"><p>Settings for constructing a rigid body. </p>
  284. </div><h2 class="groupheader">Member Typedef Documentation</h2>
  285. <a id="a3d7ae6cc90958bea23ab0383b6b90cc1" name="a3d7ae6cc90958bea23ab0383b6b90cc1"></a>
  286. <h2 class="memtitle"><span class="permalink"><a href="#a3d7ae6cc90958bea23ab0383b6b90cc1">&#9670;&#160;</a></span>BCSResult</h2>
  287. <div class="memitem">
  288. <div class="memproto">
  289. <table class="memname">
  290. <tr>
  291. <td class="memname">using <a class="el" href="#a3d7ae6cc90958bea23ab0383b6b90cc1">BodyCreationSettings::BCSResult</a> = <a class="el" href="class_result.html">Result</a>&lt;<a class="el" href="class_body_creation_settings.html">BodyCreationSettings</a>&gt;</td>
  292. </tr>
  293. </table>
  294. </div><div class="memdoc">
  295. </div>
  296. </div>
  297. <a id="a1b23e021697957516526baf59f549f0e" name="a1b23e021697957516526baf59f549f0e"></a>
  298. <h2 class="memtitle"><span class="permalink"><a href="#a1b23e021697957516526baf59f549f0e">&#9670;&#160;</a></span>GroupFilterToIDMap</h2>
  299. <div class="memitem">
  300. <div class="memproto">
  301. <table class="memname">
  302. <tr>
  303. <td class="memname">using <a class="el" href="#a1b23e021697957516526baf59f549f0e">BodyCreationSettings::GroupFilterToIDMap</a> = <a class="el" href="namespace_stream_utils.html#a2c35a4aac73cd9d9d8c567e1cd528603">StreamUtils::ObjectToIDMap</a>&lt;<a class="el" href="class_group_filter.html">GroupFilter</a>&gt;</td>
  304. </tr>
  305. </table>
  306. </div><div class="memdoc">
  307. </div>
  308. </div>
  309. <a id="a0489d76cdd3ec9368ef0edfd99878c92" name="a0489d76cdd3ec9368ef0edfd99878c92"></a>
  310. <h2 class="memtitle"><span class="permalink"><a href="#a0489d76cdd3ec9368ef0edfd99878c92">&#9670;&#160;</a></span>IDToGroupFilterMap</h2>
  311. <div class="memitem">
  312. <div class="memproto">
  313. <table class="memname">
  314. <tr>
  315. <td class="memname">using <a class="el" href="#a0489d76cdd3ec9368ef0edfd99878c92">BodyCreationSettings::IDToGroupFilterMap</a> = <a class="el" href="namespace_stream_utils.html#a4e9b8d62b617c5d31288ae8313a6b6cb">StreamUtils::IDToObjectMap</a>&lt;<a class="el" href="class_group_filter.html">GroupFilter</a>&gt;</td>
  316. </tr>
  317. </table>
  318. </div><div class="memdoc">
  319. </div>
  320. </div>
  321. <a id="ada70b5de55b8cc6ea9f93e67b0d98227" name="ada70b5de55b8cc6ea9f93e67b0d98227"></a>
  322. <h2 class="memtitle"><span class="permalink"><a href="#ada70b5de55b8cc6ea9f93e67b0d98227">&#9670;&#160;</a></span>IDToMaterialMap</h2>
  323. <div class="memitem">
  324. <div class="memproto">
  325. <table class="memname">
  326. <tr>
  327. <td class="memname">using <a class="el" href="#ada70b5de55b8cc6ea9f93e67b0d98227">BodyCreationSettings::IDToMaterialMap</a> = <a class="el" href="namespace_stream_utils.html#a4e9b8d62b617c5d31288ae8313a6b6cb">StreamUtils::IDToObjectMap</a>&lt;<a class="el" href="class_physics_material.html">PhysicsMaterial</a>&gt;</td>
  328. </tr>
  329. </table>
  330. </div><div class="memdoc">
  331. </div>
  332. </div>
  333. <a id="a38d63e9e7f85d16ecca1db06ca0dabc8" name="a38d63e9e7f85d16ecca1db06ca0dabc8"></a>
  334. <h2 class="memtitle"><span class="permalink"><a href="#a38d63e9e7f85d16ecca1db06ca0dabc8">&#9670;&#160;</a></span>IDToShapeMap</h2>
  335. <div class="memitem">
  336. <div class="memproto">
  337. <table class="memname">
  338. <tr>
  339. <td class="memname">using <a class="el" href="#a38d63e9e7f85d16ecca1db06ca0dabc8">BodyCreationSettings::IDToShapeMap</a> = <a class="el" href="class_shape.html#a06ba83cf87213a408c508acbc786d2fe">Shape::IDToShapeMap</a></td>
  340. </tr>
  341. </table>
  342. </div><div class="memdoc">
  343. </div>
  344. </div>
  345. <a id="a2cb4b24152969669d6f2193e2f9f7b76" name="a2cb4b24152969669d6f2193e2f9f7b76"></a>
  346. <h2 class="memtitle"><span class="permalink"><a href="#a2cb4b24152969669d6f2193e2f9f7b76">&#9670;&#160;</a></span>MaterialToIDMap</h2>
  347. <div class="memitem">
  348. <div class="memproto">
  349. <table class="memname">
  350. <tr>
  351. <td class="memname">using <a class="el" href="#a2cb4b24152969669d6f2193e2f9f7b76">BodyCreationSettings::MaterialToIDMap</a> = <a class="el" href="namespace_stream_utils.html#a2c35a4aac73cd9d9d8c567e1cd528603">StreamUtils::ObjectToIDMap</a>&lt;<a class="el" href="class_physics_material.html">PhysicsMaterial</a>&gt;</td>
  352. </tr>
  353. </table>
  354. </div><div class="memdoc">
  355. </div>
  356. </div>
  357. <a id="af26faa1cd67cfc60a3f9ebe90873f446" name="af26faa1cd67cfc60a3f9ebe90873f446"></a>
  358. <h2 class="memtitle"><span class="permalink"><a href="#af26faa1cd67cfc60a3f9ebe90873f446">&#9670;&#160;</a></span>ShapeToIDMap</h2>
  359. <div class="memitem">
  360. <div class="memproto">
  361. <table class="memname">
  362. <tr>
  363. <td class="memname">using <a class="el" href="#af26faa1cd67cfc60a3f9ebe90873f446">BodyCreationSettings::ShapeToIDMap</a> = <a class="el" href="class_shape.html#a5944ae14aeacc70bb42a38d7c3a31220">Shape::ShapeToIDMap</a></td>
  364. </tr>
  365. </table>
  366. </div><div class="memdoc">
  367. </div>
  368. </div>
  369. <h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
  370. <a id="aec5d90393812f5354e8505f70f4b00c9" name="aec5d90393812f5354e8505f70f4b00c9"></a>
  371. <h2 class="memtitle"><span class="permalink"><a href="#aec5d90393812f5354e8505f70f4b00c9">&#9670;&#160;</a></span>BodyCreationSettings() <span class="overload">[1/3]</span></h2>
  372. <div class="memitem">
  373. <div class="memproto">
  374. <table class="mlabels">
  375. <tr>
  376. <td class="mlabels-left">
  377. <table class="memname">
  378. <tr>
  379. <td class="memname">BodyCreationSettings::BodyCreationSettings </td>
  380. <td>(</td>
  381. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  382. <td></td>
  383. </tr>
  384. </table>
  385. </td>
  386. <td class="mlabels-right">
  387. <span class="mlabels"><span class="mlabel">default</span></span> </td>
  388. </tr>
  389. </table>
  390. </div><div class="memdoc">
  391. <p>Constructor. </p>
  392. </div>
  393. </div>
  394. <a id="a6926eec582c4902d3040637ff5ff2332" name="a6926eec582c4902d3040637ff5ff2332"></a>
  395. <h2 class="memtitle"><span class="permalink"><a href="#a6926eec582c4902d3040637ff5ff2332">&#9670;&#160;</a></span>BodyCreationSettings() <span class="overload">[2/3]</span></h2>
  396. <div class="memitem">
  397. <div class="memproto">
  398. <table class="mlabels">
  399. <tr>
  400. <td class="mlabels-left">
  401. <table class="memname">
  402. <tr>
  403. <td class="memname">BodyCreationSettings::BodyCreationSettings </td>
  404. <td>(</td>
  405. <td class="paramtype">const <a class="el" href="class_shape_settings.html">ShapeSettings</a> *</td> <td class="paramname"><span class="paramname"><em>inShape</em></span>, </td>
  406. </tr>
  407. <tr>
  408. <td class="paramkey"></td>
  409. <td></td>
  410. <td class="paramtype"><a class="el" href="_real_8h.html#a43bea2d9c57780b4b66bab1312fd77f3">RVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inPosition</em></span>, </td>
  411. </tr>
  412. <tr>
  413. <td class="paramkey"></td>
  414. <td></td>
  415. <td class="paramtype"><a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a></td> <td class="paramname"><span class="paramname"><em>inRotation</em></span>, </td>
  416. </tr>
  417. <tr>
  418. <td class="paramkey"></td>
  419. <td></td>
  420. <td class="paramtype"><a class="el" href="_motion_type_8h.html#a328245ddbb758681fad3c44c9d488fd8">EMotionType</a></td> <td class="paramname"><span class="paramname"><em>inMotionType</em></span>, </td>
  421. </tr>
  422. <tr>
  423. <td class="paramkey"></td>
  424. <td></td>
  425. <td class="paramtype"><a class="el" href="_object_layer_8h.html#a960eb396e2803ddad87bf25e0dcb4470">ObjectLayer</a></td> <td class="paramname"><span class="paramname"><em>inObjectLayer</em></span>&#160;)</td>
  426. </tr>
  427. </table>
  428. </td>
  429. <td class="mlabels-right">
  430. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  431. </tr>
  432. </table>
  433. </div><div class="memdoc">
  434. </div>
  435. </div>
  436. <a id="a807ecf473d73ab8a468ee4126f5ac79b" name="a807ecf473d73ab8a468ee4126f5ac79b"></a>
  437. <h2 class="memtitle"><span class="permalink"><a href="#a807ecf473d73ab8a468ee4126f5ac79b">&#9670;&#160;</a></span>BodyCreationSettings() <span class="overload">[3/3]</span></h2>
  438. <div class="memitem">
  439. <div class="memproto">
  440. <table class="mlabels">
  441. <tr>
  442. <td class="mlabels-left">
  443. <table class="memname">
  444. <tr>
  445. <td class="memname">BodyCreationSettings::BodyCreationSettings </td>
  446. <td>(</td>
  447. <td class="paramtype">const <a class="el" href="class_shape.html">Shape</a> *</td> <td class="paramname"><span class="paramname"><em>inShape</em></span>, </td>
  448. </tr>
  449. <tr>
  450. <td class="paramkey"></td>
  451. <td></td>
  452. <td class="paramtype"><a class="el" href="_real_8h.html#a43bea2d9c57780b4b66bab1312fd77f3">RVec3Arg</a></td> <td class="paramname"><span class="paramname"><em>inPosition</em></span>, </td>
  453. </tr>
  454. <tr>
  455. <td class="paramkey"></td>
  456. <td></td>
  457. <td class="paramtype"><a class="el" href="_math_types_8h.html#a3c723d55f34e02bc506abe3dfb7bd2aa">QuatArg</a></td> <td class="paramname"><span class="paramname"><em>inRotation</em></span>, </td>
  458. </tr>
  459. <tr>
  460. <td class="paramkey"></td>
  461. <td></td>
  462. <td class="paramtype"><a class="el" href="_motion_type_8h.html#a328245ddbb758681fad3c44c9d488fd8">EMotionType</a></td> <td class="paramname"><span class="paramname"><em>inMotionType</em></span>, </td>
  463. </tr>
  464. <tr>
  465. <td class="paramkey"></td>
  466. <td></td>
  467. <td class="paramtype"><a class="el" href="_object_layer_8h.html#a960eb396e2803ddad87bf25e0dcb4470">ObjectLayer</a></td> <td class="paramname"><span class="paramname"><em>inObjectLayer</em></span>&#160;)</td>
  468. </tr>
  469. </table>
  470. </td>
  471. <td class="mlabels-right">
  472. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  473. </tr>
  474. </table>
  475. </div><div class="memdoc">
  476. </div>
  477. </div>
  478. <h2 class="groupheader">Member Function Documentation</h2>
  479. <a id="ac3bf8e14319df094679f6644f6b80e48" name="ac3bf8e14319df094679f6644f6b80e48"></a>
  480. <h2 class="memtitle"><span class="permalink"><a href="#ac3bf8e14319df094679f6644f6b80e48">&#9670;&#160;</a></span>ConvertShapeSettings()</h2>
  481. <div class="memitem">
  482. <div class="memproto">
  483. <table class="memname">
  484. <tr>
  485. <td class="memname"><a class="el" href="class_shape.html#a11c1ce0984dccb67176566d78331375e">Shape::ShapeResult</a> BodyCreationSettings::ConvertShapeSettings </td>
  486. <td>(</td>
  487. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  488. <td></td>
  489. </tr>
  490. </table>
  491. </div><div class="memdoc">
  492. <p>Convert <a class="el" href="class_shape_settings.html">ShapeSettings</a> object into a <a class="el" href="class_shape.html" title="Base class for all shapes (collision volume of a body). Defines a virtual interface for collision det...">Shape</a> object. This will free the <a class="el" href="class_shape_settings.html">ShapeSettings</a> object and make the object ready for runtime. Serialization is no longer possible after this. </p>
  493. </div>
  494. </div>
  495. <a id="acce5eaf6c72e325d23d8d791039c6954" name="acce5eaf6c72e325d23d8d791039c6954"></a>
  496. <h2 class="memtitle"><span class="permalink"><a href="#acce5eaf6c72e325d23d8d791039c6954">&#9670;&#160;</a></span>GetMassProperties()</h2>
  497. <div class="memitem">
  498. <div class="memproto">
  499. <table class="memname">
  500. <tr>
  501. <td class="memname"><a class="el" href="class_mass_properties.html">MassProperties</a> BodyCreationSettings::GetMassProperties </td>
  502. <td>(</td>
  503. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  504. <td> const</td>
  505. </tr>
  506. </table>
  507. </div><div class="memdoc">
  508. <p>Calculate (or return when overridden) the mass and inertia for this body. </p>
  509. </div>
  510. </div>
  511. <a id="ab668ffb9415e2e9d8790bb532b83bf53" name="ab668ffb9415e2e9d8790bb532b83bf53"></a>
  512. <h2 class="memtitle"><span class="permalink"><a href="#ab668ffb9415e2e9d8790bb532b83bf53">&#9670;&#160;</a></span>GetShape()</h2>
  513. <div class="memitem">
  514. <div class="memproto">
  515. <table class="memname">
  516. <tr>
  517. <td class="memname">const <a class="el" href="class_shape.html">Shape</a> * BodyCreationSettings::GetShape </td>
  518. <td>(</td>
  519. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  520. <td> const</td>
  521. </tr>
  522. </table>
  523. </div><div class="memdoc">
  524. <p>Access to the run-time shape object. Will convert from <a class="el" href="class_shape_settings.html">ShapeSettings</a> object if needed. </p>
  525. </div>
  526. </div>
  527. <a id="a35093b07ed1677438e4f3d004d0d8a2e" name="a35093b07ed1677438e4f3d004d0d8a2e"></a>
  528. <h2 class="memtitle"><span class="permalink"><a href="#a35093b07ed1677438e4f3d004d0d8a2e">&#9670;&#160;</a></span>GetShapeSettings()</h2>
  529. <div class="memitem">
  530. <div class="memproto">
  531. <table class="mlabels">
  532. <tr>
  533. <td class="mlabels-left">
  534. <table class="memname">
  535. <tr>
  536. <td class="memname">const <a class="el" href="class_shape_settings.html">ShapeSettings</a> * BodyCreationSettings::GetShapeSettings </td>
  537. <td>(</td>
  538. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  539. <td> const</td>
  540. </tr>
  541. </table>
  542. </td>
  543. <td class="mlabels-right">
  544. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  545. </tr>
  546. </table>
  547. </div><div class="memdoc">
  548. <p>Access to the shape settings object. This contains serializable (non-runtime optimized) information about the <a class="el" href="class_shape.html" title="Base class for all shapes (collision volume of a body). Defines a virtual interface for collision det...">Shape</a>. </p>
  549. </div>
  550. </div>
  551. <a id="a9386fbbcc940bfb89b8442f342748e32" name="a9386fbbcc940bfb89b8442f342748e32"></a>
  552. <h2 class="memtitle"><span class="permalink"><a href="#a9386fbbcc940bfb89b8442f342748e32">&#9670;&#160;</a></span>HasMassProperties()</h2>
  553. <div class="memitem">
  554. <div class="memproto">
  555. <table class="mlabels">
  556. <tr>
  557. <td class="mlabels-left">
  558. <table class="memname">
  559. <tr>
  560. <td class="memname">bool BodyCreationSettings::HasMassProperties </td>
  561. <td>(</td>
  562. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  563. <td> const</td>
  564. </tr>
  565. </table>
  566. </td>
  567. <td class="mlabels-right">
  568. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  569. </tr>
  570. </table>
  571. </div><div class="memdoc">
  572. <p>Check if the mass properties of this body will be calculated (only relevant for kinematic or dynamic objects that need a <a class="el" href="class_motion_properties.html" title="The Body class only keeps track of state for static bodies, the MotionProperties class keeps the addi...">MotionProperties</a> object) </p>
  573. </div>
  574. </div>
  575. <a id="a272d105640dc6f4376a064a8ebe2c343" name="a272d105640dc6f4376a064a8ebe2c343"></a>
  576. <h2 class="memtitle"><span class="permalink"><a href="#a272d105640dc6f4376a064a8ebe2c343">&#9670;&#160;</a></span>RestoreBinaryState()</h2>
  577. <div class="memitem">
  578. <div class="memproto">
  579. <table class="memname">
  580. <tr>
  581. <td class="memname">void BodyCreationSettings::RestoreBinaryState </td>
  582. <td>(</td>
  583. <td class="paramtype"><a class="el" href="class_stream_in.html">StreamIn</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inStream</em></span></td><td>)</td>
  584. <td></td>
  585. </tr>
  586. </table>
  587. </div><div class="memdoc">
  588. <p>Restore the state of this object from inStream. Doesn't restore the shape nor the group filter. </p>
  589. </div>
  590. </div>
  591. <a id="aabf81d68f5c180341800d69b401dddee" name="aabf81d68f5c180341800d69b401dddee"></a>
  592. <h2 class="memtitle"><span class="permalink"><a href="#aabf81d68f5c180341800d69b401dddee">&#9670;&#160;</a></span>SaveBinaryState()</h2>
  593. <div class="memitem">
  594. <div class="memproto">
  595. <table class="memname">
  596. <tr>
  597. <td class="memname">void BodyCreationSettings::SaveBinaryState </td>
  598. <td>(</td>
  599. <td class="paramtype"><a class="el" href="class_stream_out.html">StreamOut</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inStream</em></span></td><td>)</td>
  600. <td> const</td>
  601. </tr>
  602. </table>
  603. </div><div class="memdoc">
  604. <p>Saves the state of this object in binary form to inStream. Doesn't store the shape nor the group filter. </p>
  605. </div>
  606. </div>
  607. <a id="a1fd7d70d7e594158940a126d69c64a77" name="a1fd7d70d7e594158940a126d69c64a77"></a>
  608. <h2 class="memtitle"><span class="permalink"><a href="#a1fd7d70d7e594158940a126d69c64a77">&#9670;&#160;</a></span>SaveWithChildren()</h2>
  609. <div class="memitem">
  610. <div class="memproto">
  611. <table class="memname">
  612. <tr>
  613. <td class="memname">void BodyCreationSettings::SaveWithChildren </td>
  614. <td>(</td>
  615. <td class="paramtype"><a class="el" href="class_stream_out.html">StreamOut</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inStream</em></span>, </td>
  616. </tr>
  617. <tr>
  618. <td class="paramkey"></td>
  619. <td></td>
  620. <td class="paramtype"><a class="el" href="#af26faa1cd67cfc60a3f9ebe90873f446">ShapeToIDMap</a> *</td> <td class="paramname"><span class="paramname"><em>ioShapeMap</em></span>, </td>
  621. </tr>
  622. <tr>
  623. <td class="paramkey"></td>
  624. <td></td>
  625. <td class="paramtype"><a class="el" href="#a2cb4b24152969669d6f2193e2f9f7b76">MaterialToIDMap</a> *</td> <td class="paramname"><span class="paramname"><em>ioMaterialMap</em></span>, </td>
  626. </tr>
  627. <tr>
  628. <td class="paramkey"></td>
  629. <td></td>
  630. <td class="paramtype"><a class="el" href="#a1b23e021697957516526baf59f549f0e">GroupFilterToIDMap</a> *</td> <td class="paramname"><span class="paramname"><em>ioGroupFilterMap</em></span>&#160;) const</td>
  631. </tr>
  632. </table>
  633. </div><div class="memdoc">
  634. <p>Save body creation settings, its shape, materials and group filter. Pass in an empty map in ioShapeMap / ioMaterialMap / ioGroupFilterMap or reuse the same map while saving multiple shapes to the same stream in order to avoid writing duplicates. Pass nullptr to ioShapeMap and ioMaterial map to skip saving shapes Pass nullptr to ioGroupFilterMap to skip saving group filters </p>
  635. </div>
  636. </div>
  637. <a id="a0c74dee7b551bce3c0a7477283f27145" name="a0c74dee7b551bce3c0a7477283f27145"></a>
  638. <h2 class="memtitle"><span class="permalink"><a href="#a0c74dee7b551bce3c0a7477283f27145">&#9670;&#160;</a></span>SetShape()</h2>
  639. <div class="memitem">
  640. <div class="memproto">
  641. <table class="mlabels">
  642. <tr>
  643. <td class="mlabels-left">
  644. <table class="memname">
  645. <tr>
  646. <td class="memname">void BodyCreationSettings::SetShape </td>
  647. <td>(</td>
  648. <td class="paramtype">const <a class="el" href="class_shape.html">Shape</a> *</td> <td class="paramname"><span class="paramname"><em>inShape</em></span></td><td>)</td>
  649. <td></td>
  650. </tr>
  651. </table>
  652. </td>
  653. <td class="mlabels-right">
  654. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  655. </tr>
  656. </table>
  657. </div><div class="memdoc">
  658. </div>
  659. </div>
  660. <a id="af8e4ddec15be3ad2ba87e99139fec1e5" name="af8e4ddec15be3ad2ba87e99139fec1e5"></a>
  661. <h2 class="memtitle"><span class="permalink"><a href="#af8e4ddec15be3ad2ba87e99139fec1e5">&#9670;&#160;</a></span>SetShapeSettings()</h2>
  662. <div class="memitem">
  663. <div class="memproto">
  664. <table class="mlabels">
  665. <tr>
  666. <td class="mlabels-left">
  667. <table class="memname">
  668. <tr>
  669. <td class="memname">void BodyCreationSettings::SetShapeSettings </td>
  670. <td>(</td>
  671. <td class="paramtype">const <a class="el" href="class_shape_settings.html">ShapeSettings</a> *</td> <td class="paramname"><span class="paramname"><em>inShape</em></span></td><td>)</td>
  672. <td></td>
  673. </tr>
  674. </table>
  675. </td>
  676. <td class="mlabels-right">
  677. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  678. </tr>
  679. </table>
  680. </div><div class="memdoc">
  681. </div>
  682. </div>
  683. <a id="ace0c4cc07ee02c076d09ec966f510860" name="ace0c4cc07ee02c076d09ec966f510860"></a>
  684. <h2 class="memtitle"><span class="permalink"><a href="#ace0c4cc07ee02c076d09ec966f510860">&#9670;&#160;</a></span>sRestoreWithChildren()</h2>
  685. <div class="memitem">
  686. <div class="memproto">
  687. <table class="mlabels">
  688. <tr>
  689. <td class="mlabels-left">
  690. <table class="memname">
  691. <tr>
  692. <td class="memname"><a class="el" href="#a3d7ae6cc90958bea23ab0383b6b90cc1">BodyCreationSettings::BCSResult</a> BodyCreationSettings::sRestoreWithChildren </td>
  693. <td>(</td>
  694. <td class="paramtype"><a class="el" href="class_stream_in.html">StreamIn</a> &amp;</td> <td class="paramname"><span class="paramname"><em>inStream</em></span>, </td>
  695. </tr>
  696. <tr>
  697. <td class="paramkey"></td>
  698. <td></td>
  699. <td class="paramtype"><a class="el" href="#a38d63e9e7f85d16ecca1db06ca0dabc8">IDToShapeMap</a> &amp;</td> <td class="paramname"><span class="paramname"><em>ioShapeMap</em></span>, </td>
  700. </tr>
  701. <tr>
  702. <td class="paramkey"></td>
  703. <td></td>
  704. <td class="paramtype"><a class="el" href="#ada70b5de55b8cc6ea9f93e67b0d98227">IDToMaterialMap</a> &amp;</td> <td class="paramname"><span class="paramname"><em>ioMaterialMap</em></span>, </td>
  705. </tr>
  706. <tr>
  707. <td class="paramkey"></td>
  708. <td></td>
  709. <td class="paramtype"><a class="el" href="#a0489d76cdd3ec9368ef0edfd99878c92">IDToGroupFilterMap</a> &amp;</td> <td class="paramname"><span class="paramname"><em>ioGroupFilterMap</em></span>&#160;)</td>
  710. </tr>
  711. </table>
  712. </td>
  713. <td class="mlabels-right">
  714. <span class="mlabels"><span class="mlabel">static</span></span> </td>
  715. </tr>
  716. </table>
  717. </div><div class="memdoc">
  718. <p>Restore body creation settings, its shape, materials and group filter. Pass in an empty map in ioShapeMap / ioMaterialMap / ioGroupFilterMap or reuse the same map while reading multiple shapes from the same stream in order to restore duplicates. </p>
  719. </div>
  720. </div>
  721. <h2 class="groupheader">Member Data Documentation</h2>
  722. <a id="afe686c8d207fb99499a89e19d1780158" name="afe686c8d207fb99499a89e19d1780158"></a>
  723. <h2 class="memtitle"><span class="permalink"><a href="#afe686c8d207fb99499a89e19d1780158">&#9670;&#160;</a></span>mAllowDynamicOrKinematic</h2>
  724. <div class="memitem">
  725. <div class="memproto">
  726. <table class="memname">
  727. <tr>
  728. <td class="memname">bool BodyCreationSettings::mAllowDynamicOrKinematic = false</td>
  729. </tr>
  730. </table>
  731. </div><div class="memdoc">
  732. <p>When this body is created as static, this setting tells the system to create a <a class="el" href="class_motion_properties.html" title="The Body class only keeps track of state for static bodies, the MotionProperties class keeps the addi...">MotionProperties</a> object so that the object can be switched to kinematic or dynamic. </p>
  733. </div>
  734. </div>
  735. <a id="a871979dfec392313a4fe00760ff9ae07" name="a871979dfec392313a4fe00760ff9ae07"></a>
  736. <h2 class="memtitle"><span class="permalink"><a href="#a871979dfec392313a4fe00760ff9ae07">&#9670;&#160;</a></span>mAllowedDOFs</h2>
  737. <div class="memitem">
  738. <div class="memproto">
  739. <table class="memname">
  740. <tr>
  741. <td class="memname"><a class="el" href="_allowed_d_o_fs_8h.html#a47bc570d6b4f457c417078ebab07d913">EAllowedDOFs</a> BodyCreationSettings::mAllowedDOFs = <a class="el" href="_allowed_d_o_fs_8h.html#a47bc570d6b4f457c417078ebab07d913ab1c94ca2fbc3e78fc30069c8d0f01680">EAllowedDOFs::All</a></td>
  742. </tr>
  743. </table>
  744. </div><div class="memdoc">
  745. <p>Which degrees of freedom this body has (can be used to limit simulation to 2D) </p>
  746. </div>
  747. </div>
  748. <a id="a23d76509d285d785fbc84c7573343be8" name="a23d76509d285d785fbc84c7573343be8"></a>
  749. <h2 class="memtitle"><span class="permalink"><a href="#a23d76509d285d785fbc84c7573343be8">&#9670;&#160;</a></span>mAllowSleeping</h2>
  750. <div class="memitem">
  751. <div class="memproto">
  752. <table class="memname">
  753. <tr>
  754. <td class="memname">bool BodyCreationSettings::mAllowSleeping = true</td>
  755. </tr>
  756. </table>
  757. </div><div class="memdoc">
  758. <p>If this body can go to sleep or not. </p>
  759. </div>
  760. </div>
  761. <a id="ac900bf31bcafa1dd0d5dfe42969687dd" name="ac900bf31bcafa1dd0d5dfe42969687dd"></a>
  762. <h2 class="memtitle"><span class="permalink"><a href="#ac900bf31bcafa1dd0d5dfe42969687dd">&#9670;&#160;</a></span>mAngularDamping</h2>
  763. <div class="memitem">
  764. <div class="memproto">
  765. <table class="memname">
  766. <tr>
  767. <td class="memname">float BodyCreationSettings::mAngularDamping = 0.05f</td>
  768. </tr>
  769. </table>
  770. </div><div class="memdoc">
  771. <p>Angular damping: dw/dt = -c * w. c. Value should be zero or positive and is usually close to 0. </p>
  772. </div>
  773. </div>
  774. <a id="a390f9572645214782004c8296f0e90cf" name="a390f9572645214782004c8296f0e90cf"></a>
  775. <h2 class="memtitle"><span class="permalink"><a href="#a390f9572645214782004c8296f0e90cf">&#9670;&#160;</a></span>mAngularVelocity</h2>
  776. <div class="memitem">
  777. <div class="memproto">
  778. <table class="memname">
  779. <tr>
  780. <td class="memname"><a class="el" href="class_vec3.html">Vec3</a> BodyCreationSettings::mAngularVelocity = <a class="el" href="class_vec3.html#ad03c52ab27761bc1e64e33c47632ba51">Vec3::sZero</a>()</td>
  781. </tr>
  782. </table>
  783. </div><div class="memdoc">
  784. <p>World space angular velocity (rad/s) </p>
  785. </div>
  786. </div>
  787. <a id="a4bfa019a5f9d834392c7c8243c885396" name="a4bfa019a5f9d834392c7c8243c885396"></a>
  788. <h2 class="memtitle"><span class="permalink"><a href="#a4bfa019a5f9d834392c7c8243c885396">&#9670;&#160;</a></span>mApplyGyroscopicForce</h2>
  789. <div class="memitem">
  790. <div class="memproto">
  791. <table class="memname">
  792. <tr>
  793. <td class="memname">bool BodyCreationSettings::mApplyGyroscopicForce = false</td>
  794. </tr>
  795. </table>
  796. </div><div class="memdoc">
  797. <p>Set to indicate that the gyroscopic force should be applied to this body (aka Dzhanibekov effect, see <a href="https://en.wikipedia.org/wiki/Tennis_racket_theorem">https://en.wikipedia.org/wiki/Tennis_racket_theorem</a>) </p>
  798. </div>
  799. </div>
  800. <a id="a824e71e8ce2673afc3a7716411016ee6" name="a824e71e8ce2673afc3a7716411016ee6"></a>
  801. <h2 class="memtitle"><span class="permalink"><a href="#a824e71e8ce2673afc3a7716411016ee6">&#9670;&#160;</a></span>mCollideKinematicVsNonDynamic</h2>
  802. <div class="memitem">
  803. <div class="memproto">
  804. <table class="memname">
  805. <tr>
  806. <td class="memname">bool BodyCreationSettings::mCollideKinematicVsNonDynamic = false</td>
  807. </tr>
  808. </table>
  809. </div><div class="memdoc">
  810. <p>If kinematic objects can generate contact points against other kinematic or static objects. See description at <a class="el" href="class_body.html#adefe521957195c57e06a905431160d10">Body::SetCollideKinematicVsNonDynamic</a>. </p>
  811. </div>
  812. </div>
  813. <a id="ae0a1420ed9449ccae2b1b58715f6fe41" name="ae0a1420ed9449ccae2b1b58715f6fe41"></a>
  814. <h2 class="memtitle"><span class="permalink"><a href="#ae0a1420ed9449ccae2b1b58715f6fe41">&#9670;&#160;</a></span>mCollisionGroup</h2>
  815. <div class="memitem">
  816. <div class="memproto">
  817. <table class="memname">
  818. <tr>
  819. <td class="memname"><a class="el" href="class_collision_group.html">CollisionGroup</a> BodyCreationSettings::mCollisionGroup</td>
  820. </tr>
  821. </table>
  822. </div><div class="memdoc">
  823. <p>The collision group this body belongs to (determines if two objects can collide) </p>
  824. </div>
  825. </div>
  826. <a id="a3ff57f2892a515d062718701434601c9" name="a3ff57f2892a515d062718701434601c9"></a>
  827. <h2 class="memtitle"><span class="permalink"><a href="#a3ff57f2892a515d062718701434601c9">&#9670;&#160;</a></span>mEnhancedInternalEdgeRemoval</h2>
  828. <div class="memitem">
  829. <div class="memproto">
  830. <table class="memname">
  831. <tr>
  832. <td class="memname">bool BodyCreationSettings::mEnhancedInternalEdgeRemoval = false</td>
  833. </tr>
  834. </table>
  835. </div><div class="memdoc">
  836. <p>Set to indicate that extra effort should be made to try to remove ghost contacts (collisions with internal edges of a mesh). This is more expensive but makes bodies move smoother over a mesh with convex edges. </p>
  837. </div>
  838. </div>
  839. <a id="a43650f269088d8351a1ad5a1da8824c0" name="a43650f269088d8351a1ad5a1da8824c0"></a>
  840. <h2 class="memtitle"><span class="permalink"><a href="#a43650f269088d8351a1ad5a1da8824c0">&#9670;&#160;</a></span>mFriction</h2>
  841. <div class="memitem">
  842. <div class="memproto">
  843. <table class="memname">
  844. <tr>
  845. <td class="memname">float BodyCreationSettings::mFriction = 0.2f</td>
  846. </tr>
  847. </table>
  848. </div><div class="memdoc">
  849. <p>Friction of the body (dimensionless number, usually between 0 and 1, 0 = no friction, 1 = friction force equals force that presses the two bodies together). Note that bodies can have negative friction but the combined friction (see <a class="el" href="class_physics_system.html#ae1cc3e726b7e186f642c7da5f6c6a2c2">PhysicsSystem::SetCombineFriction</a>) should never go below zero. </p>
  850. </div>
  851. </div>
  852. <a id="a428f8482f140f5bd09e542d6d9c699c2" name="a428f8482f140f5bd09e542d6d9c699c2"></a>
  853. <h2 class="memtitle"><span class="permalink"><a href="#a428f8482f140f5bd09e542d6d9c699c2">&#9670;&#160;</a></span>mGravityFactor</h2>
  854. <div class="memitem">
  855. <div class="memproto">
  856. <table class="memname">
  857. <tr>
  858. <td class="memname">float BodyCreationSettings::mGravityFactor = 1.0f</td>
  859. </tr>
  860. </table>
  861. </div><div class="memdoc">
  862. <p>Value to multiply gravity with for this body. </p>
  863. </div>
  864. </div>
  865. <a id="a4bd85f028390274d79f291ea20f7c9f5" name="a4bd85f028390274d79f291ea20f7c9f5"></a>
  866. <h2 class="memtitle"><span class="permalink"><a href="#a4bd85f028390274d79f291ea20f7c9f5">&#9670;&#160;</a></span>mInertiaMultiplier</h2>
  867. <div class="memitem">
  868. <div class="memproto">
  869. <table class="memname">
  870. <tr>
  871. <td class="memname">float BodyCreationSettings::mInertiaMultiplier = 1.0f</td>
  872. </tr>
  873. </table>
  874. </div><div class="memdoc">
  875. <p>When calculating the inertia (not when it is provided) the calculated inertia will be multiplied by this value. </p>
  876. </div>
  877. </div>
  878. <a id="ad327b3b479e63fe5bfbecf0510d69d44" name="ad327b3b479e63fe5bfbecf0510d69d44"></a>
  879. <h2 class="memtitle"><span class="permalink"><a href="#ad327b3b479e63fe5bfbecf0510d69d44">&#9670;&#160;</a></span>mIsSensor</h2>
  880. <div class="memitem">
  881. <div class="memproto">
  882. <table class="memname">
  883. <tr>
  884. <td class="memname">bool BodyCreationSettings::mIsSensor = false</td>
  885. </tr>
  886. </table>
  887. </div><div class="memdoc">
  888. <p>If this body is a sensor. A sensor will receive collision callbacks, but will not cause any collision responses and can be used as a trigger volume. See description at <a class="el" href="class_body.html#a5d8e1f66eed163868a633cdb93859f77">Body::SetIsSensor</a>. </p>
  889. </div>
  890. </div>
  891. <a id="acda69c9b63d5be31be48b13059d3d438" name="acda69c9b63d5be31be48b13059d3d438"></a>
  892. <h2 class="memtitle"><span class="permalink"><a href="#acda69c9b63d5be31be48b13059d3d438">&#9670;&#160;</a></span>mLinearDamping</h2>
  893. <div class="memitem">
  894. <div class="memproto">
  895. <table class="memname">
  896. <tr>
  897. <td class="memname">float BodyCreationSettings::mLinearDamping = 0.05f</td>
  898. </tr>
  899. </table>
  900. </div><div class="memdoc">
  901. <p>Linear damping: dv/dt = -c * v. c. Value should be zero or positive and is usually close to 0. </p>
  902. </div>
  903. </div>
  904. <a id="a31f029773df5278a498c417d0a7e2c83" name="a31f029773df5278a498c417d0a7e2c83"></a>
  905. <h2 class="memtitle"><span class="permalink"><a href="#a31f029773df5278a498c417d0a7e2c83">&#9670;&#160;</a></span>mLinearVelocity</h2>
  906. <div class="memitem">
  907. <div class="memproto">
  908. <table class="memname">
  909. <tr>
  910. <td class="memname"><a class="el" href="class_vec3.html">Vec3</a> BodyCreationSettings::mLinearVelocity = <a class="el" href="class_vec3.html#ad03c52ab27761bc1e64e33c47632ba51">Vec3::sZero</a>()</td>
  911. </tr>
  912. </table>
  913. </div><div class="memdoc">
  914. <p>World space linear velocity of the center of mass (m/s) </p>
  915. </div>
  916. </div>
  917. <a id="af7f022cb3042750da187b24e8a242c99" name="af7f022cb3042750da187b24e8a242c99"></a>
  918. <h2 class="memtitle"><span class="permalink"><a href="#af7f022cb3042750da187b24e8a242c99">&#9670;&#160;</a></span>mMassPropertiesOverride</h2>
  919. <div class="memitem">
  920. <div class="memproto">
  921. <table class="memname">
  922. <tr>
  923. <td class="memname"><a class="el" href="class_mass_properties.html">MassProperties</a> BodyCreationSettings::mMassPropertiesOverride</td>
  924. </tr>
  925. </table>
  926. </div><div class="memdoc">
  927. <p>Contains replacement mass settings which override the automatically calculated values. </p>
  928. </div>
  929. </div>
  930. <a id="a86ee89ede6a31b9f8df4e9c257051119" name="a86ee89ede6a31b9f8df4e9c257051119"></a>
  931. <h2 class="memtitle"><span class="permalink"><a href="#a86ee89ede6a31b9f8df4e9c257051119">&#9670;&#160;</a></span>mMaxAngularVelocity</h2>
  932. <div class="memitem">
  933. <div class="memproto">
  934. <table class="memname">
  935. <tr>
  936. <td class="memname">float BodyCreationSettings::mMaxAngularVelocity = 0.25f * JPH_PI * 60.0f</td>
  937. </tr>
  938. </table>
  939. </div><div class="memdoc">
  940. <p>Maximum angular velocity that this body can reach (rad/s) </p>
  941. </div>
  942. </div>
  943. <a id="a54911a3a04da2c077dd27c5f8bca960d" name="a54911a3a04da2c077dd27c5f8bca960d"></a>
  944. <h2 class="memtitle"><span class="permalink"><a href="#a54911a3a04da2c077dd27c5f8bca960d">&#9670;&#160;</a></span>mMaxLinearVelocity</h2>
  945. <div class="memitem">
  946. <div class="memproto">
  947. <table class="memname">
  948. <tr>
  949. <td class="memname">float BodyCreationSettings::mMaxLinearVelocity = 500.0f</td>
  950. </tr>
  951. </table>
  952. </div><div class="memdoc">
  953. <p>Maximum linear velocity that this body can reach (m/s) </p>
  954. </div>
  955. </div>
  956. <a id="a66c8700dfa9204a90b9bd7c7db50e85f" name="a66c8700dfa9204a90b9bd7c7db50e85f"></a>
  957. <h2 class="memtitle"><span class="permalink"><a href="#a66c8700dfa9204a90b9bd7c7db50e85f">&#9670;&#160;</a></span>mMotionQuality</h2>
  958. <div class="memitem">
  959. <div class="memproto">
  960. <table class="memname">
  961. <tr>
  962. <td class="memname"><a class="el" href="_motion_quality_8h.html#af43db3453103c2e62526f54dd8542d3a">EMotionQuality</a> BodyCreationSettings::mMotionQuality = <a class="el" href="_motion_quality_8h.html#af43db3453103c2e62526f54dd8542d3aa4984667940802dedc139aa7a430a6553">EMotionQuality::Discrete</a></td>
  963. </tr>
  964. </table>
  965. </div><div class="memdoc">
  966. <p>Motion quality, or how well it detects collisions when it has a high velocity. </p>
  967. </div>
  968. </div>
  969. <a id="ad8fc3740b604486c0b030b2d9d381b2f" name="ad8fc3740b604486c0b030b2d9d381b2f"></a>
  970. <h2 class="memtitle"><span class="permalink"><a href="#ad8fc3740b604486c0b030b2d9d381b2f">&#9670;&#160;</a></span>mMotionType</h2>
  971. <div class="memitem">
  972. <div class="memproto">
  973. <table class="memname">
  974. <tr>
  975. <td class="memname"><a class="el" href="_motion_type_8h.html#a328245ddbb758681fad3c44c9d488fd8">EMotionType</a> BodyCreationSettings::mMotionType = <a class="el" href="_motion_type_8h.html#a328245ddbb758681fad3c44c9d488fd8a971fd8cc345d8bd9f92e9f7d88fdf20c">EMotionType::Dynamic</a></td>
  976. </tr>
  977. </table>
  978. </div><div class="memdoc">
  979. <p>Motion type, determines if the object is static, dynamic or kinematic. </p>
  980. </div>
  981. </div>
  982. <a id="a9caedbea102f60fadfbf1e96fc8cde85" name="a9caedbea102f60fadfbf1e96fc8cde85"></a>
  983. <h2 class="memtitle"><span class="permalink"><a href="#a9caedbea102f60fadfbf1e96fc8cde85">&#9670;&#160;</a></span>mNumPositionStepsOverride</h2>
  984. <div class="memitem">
  985. <div class="memproto">
  986. <table class="memname">
  987. <tr>
  988. <td class="memname"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> BodyCreationSettings::mNumPositionStepsOverride = 0</td>
  989. </tr>
  990. </table>
  991. </div><div class="memdoc">
  992. <p>Used only when this body is dynamic and colliding. Override for the number of solver position iterations to run, 0 means use the default in <a class="el" href="struct_physics_settings.html#a3724f8c1ef9269076dac93c4d7b7cfdb" title="Number of solver position iterations to run.">PhysicsSettings::mNumPositionSteps</a>. The number of iterations to use is the max of all contacts and constraints in the island. </p>
  993. </div>
  994. </div>
  995. <a id="a84ee0ecf67e26c9ffffe42ad435b8ec1" name="a84ee0ecf67e26c9ffffe42ad435b8ec1"></a>
  996. <h2 class="memtitle"><span class="permalink"><a href="#a84ee0ecf67e26c9ffffe42ad435b8ec1">&#9670;&#160;</a></span>mNumVelocityStepsOverride</h2>
  997. <div class="memitem">
  998. <div class="memproto">
  999. <table class="memname">
  1000. <tr>
  1001. <td class="memname"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> BodyCreationSettings::mNumVelocityStepsOverride = 0</td>
  1002. </tr>
  1003. </table>
  1004. </div><div class="memdoc">
  1005. <p>Used only when this body is dynamic and colliding. Override for the number of solver velocity iterations to run, 0 means use the default in <a class="el" href="struct_physics_settings.html#a66af679ba7f202b402bb23d0a0e117ad">PhysicsSettings::mNumVelocitySteps</a>. The number of iterations to use is the max of all contacts and constraints in the island. </p>
  1006. </div>
  1007. </div>
  1008. <a id="a976a222257c112edca9c43805e1331cd" name="a976a222257c112edca9c43805e1331cd"></a>
  1009. <h2 class="memtitle"><span class="permalink"><a href="#a976a222257c112edca9c43805e1331cd">&#9670;&#160;</a></span>mObjectLayer</h2>
  1010. <div class="memitem">
  1011. <div class="memproto">
  1012. <table class="memname">
  1013. <tr>
  1014. <td class="memname"><a class="el" href="_object_layer_8h.html#a960eb396e2803ddad87bf25e0dcb4470">ObjectLayer</a> BodyCreationSettings::mObjectLayer = 0</td>
  1015. </tr>
  1016. </table>
  1017. </div><div class="memdoc">
  1018. <p>The collision layer this body belongs to (determines if two objects can collide) </p>
  1019. </div>
  1020. </div>
  1021. <a id="aaefa0f471f73fbfaf0f288e56e20b384" name="aaefa0f471f73fbfaf0f288e56e20b384"></a>
  1022. <h2 class="memtitle"><span class="permalink"><a href="#aaefa0f471f73fbfaf0f288e56e20b384">&#9670;&#160;</a></span>mOverrideMassProperties</h2>
  1023. <div class="memitem">
  1024. <div class="memproto">
  1025. <table class="memname">
  1026. <tr>
  1027. <td class="memname"><a class="el" href="_body_creation_settings_8h.html#a758835911f67742d0ad74841f6bdbe38">EOverrideMassProperties</a> BodyCreationSettings::mOverrideMassProperties = <a class="el" href="_body_creation_settings_8h.html#a758835911f67742d0ad74841f6bdbe38a945736934966a328b226aea49bb2ead6">EOverrideMassProperties::CalculateMassAndInertia</a></td>
  1028. </tr>
  1029. </table>
  1030. </div><div class="memdoc">
  1031. <p>Determines how mMassPropertiesOverride will be used. </p>
  1032. </div>
  1033. </div>
  1034. <a id="a71bcd0c1b8798b78246f3ccb9c2ab637" name="a71bcd0c1b8798b78246f3ccb9c2ab637"></a>
  1035. <h2 class="memtitle"><span class="permalink"><a href="#a71bcd0c1b8798b78246f3ccb9c2ab637">&#9670;&#160;</a></span>mPosition</h2>
  1036. <div class="memitem">
  1037. <div class="memproto">
  1038. <table class="memname">
  1039. <tr>
  1040. <td class="memname"><a class="el" href="_real_8h.html#ae088dda635fb0ba1c96ea179d384ca40">RVec3</a> BodyCreationSettings::mPosition = <a class="el" href="class_vec3.html#ad03c52ab27761bc1e64e33c47632ba51">RVec3::sZero</a>()</td>
  1041. </tr>
  1042. </table>
  1043. </div><div class="memdoc">
  1044. <p>Position of the body (not of the center of mass) </p>
  1045. </div>
  1046. </div>
  1047. <a id="ad248781dc0ad8671c19af02106c9f054" name="ad248781dc0ad8671c19af02106c9f054"></a>
  1048. <h2 class="memtitle"><span class="permalink"><a href="#ad248781dc0ad8671c19af02106c9f054">&#9670;&#160;</a></span>mRestitution</h2>
  1049. <div class="memitem">
  1050. <div class="memproto">
  1051. <table class="memname">
  1052. <tr>
  1053. <td class="memname">float BodyCreationSettings::mRestitution = 0.0f</td>
  1054. </tr>
  1055. </table>
  1056. </div><div class="memdoc">
  1057. <p>Restitution of body (dimensionless number, usually between 0 and 1, 0 = completely inelastic collision response, 1 = completely elastic collision response). Note that bodies can have negative restitution but the combined restitution (see <a class="el" href="class_physics_system.html#a1bf5312ff70cb942e4899eb0766d5ebe">PhysicsSystem::SetCombineRestitution</a>) should never go below zero. </p>
  1058. </div>
  1059. </div>
  1060. <a id="a8b4eaa2eceb1493a1a70d3bef422e3ad" name="a8b4eaa2eceb1493a1a70d3bef422e3ad"></a>
  1061. <h2 class="memtitle"><span class="permalink"><a href="#a8b4eaa2eceb1493a1a70d3bef422e3ad">&#9670;&#160;</a></span>mRotation</h2>
  1062. <div class="memitem">
  1063. <div class="memproto">
  1064. <table class="memname">
  1065. <tr>
  1066. <td class="memname"><a class="el" href="class_quat.html">Quat</a> BodyCreationSettings::mRotation = <a class="el" href="class_quat.html#a73a43fe262fbbbc0b1872d238b972794">Quat::sIdentity</a>()</td>
  1067. </tr>
  1068. </table>
  1069. </div><div class="memdoc">
  1070. <p>Rotation of the body. </p>
  1071. </div>
  1072. </div>
  1073. <a id="a50e9e038bb9df7acfe71dbb56480271c" name="a50e9e038bb9df7acfe71dbb56480271c"></a>
  1074. <h2 class="memtitle"><span class="permalink"><a href="#a50e9e038bb9df7acfe71dbb56480271c">&#9670;&#160;</a></span>mUseManifoldReduction</h2>
  1075. <div class="memitem">
  1076. <div class="memproto">
  1077. <table class="memname">
  1078. <tr>
  1079. <td class="memname">bool BodyCreationSettings::mUseManifoldReduction = true</td>
  1080. </tr>
  1081. </table>
  1082. </div><div class="memdoc">
  1083. <p>If this body should use manifold reduction (see description at <a class="el" href="class_body.html#a8c24ff0c08f1a31fc57d01420f9cae8b">Body::SetUseManifoldReduction</a>) </p>
  1084. </div>
  1085. </div>
  1086. <a id="aca747cc540a625d75c5a5abf0ad68216" name="aca747cc540a625d75c5a5abf0ad68216"></a>
  1087. <h2 class="memtitle"><span class="permalink"><a href="#aca747cc540a625d75c5a5abf0ad68216">&#9670;&#160;</a></span>mUserData</h2>
  1088. <div class="memitem">
  1089. <div class="memproto">
  1090. <table class="memname">
  1091. <tr>
  1092. <td class="memname"><a class="el" href="_core_8h.html#a60e8696a4678cd348e991a1f172e53f7">uint64</a> BodyCreationSettings::mUserData = 0</td>
  1093. </tr>
  1094. </table>
  1095. </div><div class="memdoc">
  1096. <p>User data value (can be used by application) </p>
  1097. </div>
  1098. </div>
  1099. <hr/>The documentation for this class was generated from the following files:<ul>
  1100. <li>Jolt/Physics/Body/<a class="el" href="_body_creation_settings_8h_source.html">BodyCreationSettings.h</a></li>
  1101. <li>Jolt/Physics/Body/<a class="el" href="_body_creation_settings_8cpp.html">BodyCreationSettings.cpp</a></li>
  1102. </ul>
  1103. </div><!-- contents -->
  1104. </div><!-- doc-content -->
  1105. <!-- start footer part -->
  1106. <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  1107. <ul>
  1108. <li class="navelem"><a class="el" href="class_body_creation_settings.html">BodyCreationSettings</a></li>
  1109. <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>
  1110. </ul>
  1111. </div>
  1112. </body>
  1113. </html>