class_contact_manifold.html 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361
  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: ContactManifold 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_contact_manifold.html',''); initResizable(true); });
  83. /* @license-end */
  84. </script>
  85. <div id="doc-content">
  86. <!-- window showing the filter options -->
  87. <div id="MSearchSelectWindow"
  88. onmouseover="return searchBox.OnSearchSelectShow()"
  89. onmouseout="return searchBox.OnSearchSelectHide()"
  90. onkeydown="return searchBox.OnSearchSelectKey(event)">
  91. </div>
  92. <!-- iframe showing the search results (closed by default) -->
  93. <div id="MSearchResultsWindow">
  94. <div id="MSearchResults">
  95. <div class="SRPage">
  96. <div id="SRIndex">
  97. <div id="SRResults"></div>
  98. <div class="SRStatus" id="Loading">Loading...</div>
  99. <div class="SRStatus" id="Searching">Searching...</div>
  100. <div class="SRStatus" id="NoMatches">No Matches</div>
  101. </div>
  102. </div>
  103. </div>
  104. </div>
  105. <div class="header">
  106. <div class="summary">
  107. <a href="#pub-methods">Public Member Functions</a> &#124;
  108. <a href="#pub-attribs">Public Attributes</a> &#124;
  109. <a href="class_contact_manifold-members.html">List of all members</a> </div>
  110. <div class="headertitle"><div class="title">ContactManifold Class Reference</div></div>
  111. </div><!--header-->
  112. <div class="contents">
  113. <p>Manifold class, describes the contact surface between two bodies.
  114. <a href="#details">More...</a></p>
  115. <p><code>#include &lt;<a class="el" href="_contact_listener_8h_source.html">ContactListener.h</a>&gt;</code></p>
  116. <table class="memberdecls">
  117. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
  118. Public Member Functions</h2></td></tr>
  119. <tr class="memitem:a48787ecfb82e124dfa8cd1de71ed8027" id="r_a48787ecfb82e124dfa8cd1de71ed8027"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_contact_manifold.html">ContactManifold</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a48787ecfb82e124dfa8cd1de71ed8027">SwapShapes</a> () const</td></tr>
  120. <tr class="memdesc:a48787ecfb82e124dfa8cd1de71ed8027"><td class="mdescLeft">&#160;</td><td class="mdescRight">Swaps shape 1 and 2. <br /></td></tr>
  121. <tr class="separator:a48787ecfb82e124dfa8cd1de71ed8027"><td class="memSeparator" colspan="2">&#160;</td></tr>
  122. <tr class="memitem:a1112cfe6df7934c56e585d5985d2870a" id="r_a1112cfe6df7934c56e585d5985d2870a"><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="#a1112cfe6df7934c56e585d5985d2870a">GetWorldSpaceContactPointOn1</a> (<a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inIndex) const</td></tr>
  123. <tr class="memdesc:a1112cfe6df7934c56e585d5985d2870a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access to the world space contact positions. <br /></td></tr>
  124. <tr class="separator:a1112cfe6df7934c56e585d5985d2870a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  125. <tr class="memitem:a28d3d860f9bb992c0c581b7a68df6681" id="r_a28d3d860f9bb992c0c581b7a68df6681"><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="#a28d3d860f9bb992c0c581b7a68df6681">GetWorldSpaceContactPointOn2</a> (<a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a> inIndex) const</td></tr>
  126. <tr class="separator:a28d3d860f9bb992c0c581b7a68df6681"><td class="memSeparator" colspan="2">&#160;</td></tr>
  127. </table><table class="memberdecls">
  128. <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
  129. Public Attributes</h2></td></tr>
  130. <tr class="memitem:a7411bc12e55f88b3e2855fe8dc57a05e" id="r_a7411bc12e55f88b3e2855fe8dc57a05e"><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="#a7411bc12e55f88b3e2855fe8dc57a05e">mBaseOffset</a></td></tr>
  131. <tr class="memdesc:a7411bc12e55f88b3e2855fe8dc57a05e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Offset to which all the contact points are relative. <br /></td></tr>
  132. <tr class="separator:a7411bc12e55f88b3e2855fe8dc57a05e"><td class="memSeparator" colspan="2">&#160;</td></tr>
  133. <tr class="memitem:ab90dc956aa8b9936495992212fa64487" id="r_ab90dc956aa8b9936495992212fa64487"><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="#ab90dc956aa8b9936495992212fa64487">mWorldSpaceNormal</a></td></tr>
  134. <tr class="memdesc:ab90dc956aa8b9936495992212fa64487"><td class="mdescLeft">&#160;</td><td class="mdescRight">Normal for this manifold, direction along which to move body 2 out of collision along the shortest path. <br /></td></tr>
  135. <tr class="separator:ab90dc956aa8b9936495992212fa64487"><td class="memSeparator" colspan="2">&#160;</td></tr>
  136. <tr class="memitem:add2819f7131894b379fd2c6f4b90099a" id="r_add2819f7131894b379fd2c6f4b90099a"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#add2819f7131894b379fd2c6f4b90099a">mPenetrationDepth</a></td></tr>
  137. <tr class="memdesc:add2819f7131894b379fd2c6f4b90099a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Penetration depth (move shape 2 by this distance to resolve the collision). If this value is negative, this is a speculative contact point and may not actually result in a velocity change as during solving the bodies may not actually collide. <br /></td></tr>
  138. <tr class="separator:add2819f7131894b379fd2c6f4b90099a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  139. <tr class="memitem:ad02e3fa2a71653627234207197f2038a" id="r_ad02e3fa2a71653627234207197f2038a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_sub_shape_i_d.html">SubShapeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ad02e3fa2a71653627234207197f2038a">mSubShapeID1</a></td></tr>
  140. <tr class="memdesc:ad02e3fa2a71653627234207197f2038a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sub shapes that formed this manifold (note that when multiple manifolds are combined because they're coplanar, we lose some information here because we only keep track of one sub shape pair that we encounter, see description at <a class="el" href="class_body.html#a8c24ff0c08f1a31fc57d01420f9cae8b">Body::SetUseManifoldReduction</a>) <br /></td></tr>
  141. <tr class="separator:ad02e3fa2a71653627234207197f2038a"><td class="memSeparator" colspan="2">&#160;</td></tr>
  142. <tr class="memitem:a4daf9a7c0e11fcbfe1a65ffcea1a5fb1" id="r_a4daf9a7c0e11fcbfe1a65ffcea1a5fb1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_sub_shape_i_d.html">SubShapeID</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a4daf9a7c0e11fcbfe1a65ffcea1a5fb1">mSubShapeID2</a></td></tr>
  143. <tr class="separator:a4daf9a7c0e11fcbfe1a65ffcea1a5fb1"><td class="memSeparator" colspan="2">&#160;</td></tr>
  144. <tr class="memitem:ab878d752ba8167d0e1292ddded15f153" id="r_ab878d752ba8167d0e1292ddded15f153"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_contact_listener_8h.html#ac6f5f34116f161cc13203803010c37c1">ContactPoints</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#ab878d752ba8167d0e1292ddded15f153">mRelativeContactPointsOn1</a></td></tr>
  145. <tr class="memdesc:ab878d752ba8167d0e1292ddded15f153"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contact points on the surface of shape 1 relative to mBaseOffset. <br /></td></tr>
  146. <tr class="separator:ab878d752ba8167d0e1292ddded15f153"><td class="memSeparator" colspan="2">&#160;</td></tr>
  147. <tr class="memitem:a82c0a5937e977e8ce4169d39e1a3d64c" id="r_a82c0a5937e977e8ce4169d39e1a3d64c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_contact_listener_8h.html#ac6f5f34116f161cc13203803010c37c1">ContactPoints</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="#a82c0a5937e977e8ce4169d39e1a3d64c">mRelativeContactPointsOn2</a></td></tr>
  148. <tr class="memdesc:a82c0a5937e977e8ce4169d39e1a3d64c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contact points on the surface of shape 2 relative to mBaseOffset. If there's no penetration, this will be the same as mRelativeContactPointsOn1. If there is penetration they will be different. <br /></td></tr>
  149. <tr class="separator:a82c0a5937e977e8ce4169d39e1a3d64c"><td class="memSeparator" colspan="2">&#160;</td></tr>
  150. </table>
  151. <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
  152. <div class="textblock"><p>Manifold class, describes the contact surface between two bodies. </p>
  153. </div><h2 class="groupheader">Member Function Documentation</h2>
  154. <a id="a1112cfe6df7934c56e585d5985d2870a" name="a1112cfe6df7934c56e585d5985d2870a"></a>
  155. <h2 class="memtitle"><span class="permalink"><a href="#a1112cfe6df7934c56e585d5985d2870a">&#9670;&#160;</a></span>GetWorldSpaceContactPointOn1()</h2>
  156. <div class="memitem">
  157. <div class="memproto">
  158. <table class="mlabels">
  159. <tr>
  160. <td class="mlabels-left">
  161. <table class="memname">
  162. <tr>
  163. <td class="memname"><a class="el" href="_real_8h.html#ae088dda635fb0ba1c96ea179d384ca40">RVec3</a> ContactManifold::GetWorldSpaceContactPointOn1 </td>
  164. <td>(</td>
  165. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inIndex</em></span></td><td>)</td>
  166. <td> const</td>
  167. </tr>
  168. </table>
  169. </td>
  170. <td class="mlabels-right">
  171. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  172. </tr>
  173. </table>
  174. </div><div class="memdoc">
  175. <p>Access to the world space contact positions. </p>
  176. </div>
  177. </div>
  178. <a id="a28d3d860f9bb992c0c581b7a68df6681" name="a28d3d860f9bb992c0c581b7a68df6681"></a>
  179. <h2 class="memtitle"><span class="permalink"><a href="#a28d3d860f9bb992c0c581b7a68df6681">&#9670;&#160;</a></span>GetWorldSpaceContactPointOn2()</h2>
  180. <div class="memitem">
  181. <div class="memproto">
  182. <table class="mlabels">
  183. <tr>
  184. <td class="mlabels-left">
  185. <table class="memname">
  186. <tr>
  187. <td class="memname"><a class="el" href="_real_8h.html#ae088dda635fb0ba1c96ea179d384ca40">RVec3</a> ContactManifold::GetWorldSpaceContactPointOn2 </td>
  188. <td>(</td>
  189. <td class="paramtype"><a class="el" href="_core_8h.html#a69aa29b598b851b0640aa225a9e5d61d">uint</a></td> <td class="paramname"><span class="paramname"><em>inIndex</em></span></td><td>)</td>
  190. <td> const</td>
  191. </tr>
  192. </table>
  193. </td>
  194. <td class="mlabels-right">
  195. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  196. </tr>
  197. </table>
  198. </div><div class="memdoc">
  199. </div>
  200. </div>
  201. <a id="a48787ecfb82e124dfa8cd1de71ed8027" name="a48787ecfb82e124dfa8cd1de71ed8027"></a>
  202. <h2 class="memtitle"><span class="permalink"><a href="#a48787ecfb82e124dfa8cd1de71ed8027">&#9670;&#160;</a></span>SwapShapes()</h2>
  203. <div class="memitem">
  204. <div class="memproto">
  205. <table class="mlabels">
  206. <tr>
  207. <td class="mlabels-left">
  208. <table class="memname">
  209. <tr>
  210. <td class="memname"><a class="el" href="class_contact_manifold.html">ContactManifold</a> ContactManifold::SwapShapes </td>
  211. <td>(</td>
  212. <td class="paramname"><span class="paramname"><em></em></span></td><td>)</td>
  213. <td> const</td>
  214. </tr>
  215. </table>
  216. </td>
  217. <td class="mlabels-right">
  218. <span class="mlabels"><span class="mlabel">inline</span></span> </td>
  219. </tr>
  220. </table>
  221. </div><div class="memdoc">
  222. <p>Swaps shape 1 and 2. </p>
  223. </div>
  224. </div>
  225. <h2 class="groupheader">Member Data Documentation</h2>
  226. <a id="a7411bc12e55f88b3e2855fe8dc57a05e" name="a7411bc12e55f88b3e2855fe8dc57a05e"></a>
  227. <h2 class="memtitle"><span class="permalink"><a href="#a7411bc12e55f88b3e2855fe8dc57a05e">&#9670;&#160;</a></span>mBaseOffset</h2>
  228. <div class="memitem">
  229. <div class="memproto">
  230. <table class="memname">
  231. <tr>
  232. <td class="memname"><a class="el" href="_real_8h.html#ae088dda635fb0ba1c96ea179d384ca40">RVec3</a> ContactManifold::mBaseOffset</td>
  233. </tr>
  234. </table>
  235. </div><div class="memdoc">
  236. <p>Offset to which all the contact points are relative. </p>
  237. </div>
  238. </div>
  239. <a id="add2819f7131894b379fd2c6f4b90099a" name="add2819f7131894b379fd2c6f4b90099a"></a>
  240. <h2 class="memtitle"><span class="permalink"><a href="#add2819f7131894b379fd2c6f4b90099a">&#9670;&#160;</a></span>mPenetrationDepth</h2>
  241. <div class="memitem">
  242. <div class="memproto">
  243. <table class="memname">
  244. <tr>
  245. <td class="memname">float ContactManifold::mPenetrationDepth</td>
  246. </tr>
  247. </table>
  248. </div><div class="memdoc">
  249. <p>Penetration depth (move shape 2 by this distance to resolve the collision). If this value is negative, this is a speculative contact point and may not actually result in a velocity change as during solving the bodies may not actually collide. </p>
  250. </div>
  251. </div>
  252. <a id="ab878d752ba8167d0e1292ddded15f153" name="ab878d752ba8167d0e1292ddded15f153"></a>
  253. <h2 class="memtitle"><span class="permalink"><a href="#ab878d752ba8167d0e1292ddded15f153">&#9670;&#160;</a></span>mRelativeContactPointsOn1</h2>
  254. <div class="memitem">
  255. <div class="memproto">
  256. <table class="memname">
  257. <tr>
  258. <td class="memname"><a class="el" href="_contact_listener_8h.html#ac6f5f34116f161cc13203803010c37c1">ContactPoints</a> ContactManifold::mRelativeContactPointsOn1</td>
  259. </tr>
  260. </table>
  261. </div><div class="memdoc">
  262. <p>Contact points on the surface of shape 1 relative to mBaseOffset. </p>
  263. </div>
  264. </div>
  265. <a id="a82c0a5937e977e8ce4169d39e1a3d64c" name="a82c0a5937e977e8ce4169d39e1a3d64c"></a>
  266. <h2 class="memtitle"><span class="permalink"><a href="#a82c0a5937e977e8ce4169d39e1a3d64c">&#9670;&#160;</a></span>mRelativeContactPointsOn2</h2>
  267. <div class="memitem">
  268. <div class="memproto">
  269. <table class="memname">
  270. <tr>
  271. <td class="memname"><a class="el" href="_contact_listener_8h.html#ac6f5f34116f161cc13203803010c37c1">ContactPoints</a> ContactManifold::mRelativeContactPointsOn2</td>
  272. </tr>
  273. </table>
  274. </div><div class="memdoc">
  275. <p>Contact points on the surface of shape 2 relative to mBaseOffset. If there's no penetration, this will be the same as mRelativeContactPointsOn1. If there is penetration they will be different. </p>
  276. </div>
  277. </div>
  278. <a id="ad02e3fa2a71653627234207197f2038a" name="ad02e3fa2a71653627234207197f2038a"></a>
  279. <h2 class="memtitle"><span class="permalink"><a href="#ad02e3fa2a71653627234207197f2038a">&#9670;&#160;</a></span>mSubShapeID1</h2>
  280. <div class="memitem">
  281. <div class="memproto">
  282. <table class="memname">
  283. <tr>
  284. <td class="memname"><a class="el" href="class_sub_shape_i_d.html">SubShapeID</a> ContactManifold::mSubShapeID1</td>
  285. </tr>
  286. </table>
  287. </div><div class="memdoc">
  288. <p>Sub shapes that formed this manifold (note that when multiple manifolds are combined because they're coplanar, we lose some information here because we only keep track of one sub shape pair that we encounter, see description at <a class="el" href="class_body.html#a8c24ff0c08f1a31fc57d01420f9cae8b">Body::SetUseManifoldReduction</a>) </p>
  289. </div>
  290. </div>
  291. <a id="a4daf9a7c0e11fcbfe1a65ffcea1a5fb1" name="a4daf9a7c0e11fcbfe1a65ffcea1a5fb1"></a>
  292. <h2 class="memtitle"><span class="permalink"><a href="#a4daf9a7c0e11fcbfe1a65ffcea1a5fb1">&#9670;&#160;</a></span>mSubShapeID2</h2>
  293. <div class="memitem">
  294. <div class="memproto">
  295. <table class="memname">
  296. <tr>
  297. <td class="memname"><a class="el" href="class_sub_shape_i_d.html">SubShapeID</a> ContactManifold::mSubShapeID2</td>
  298. </tr>
  299. </table>
  300. </div><div class="memdoc">
  301. </div>
  302. </div>
  303. <a id="ab90dc956aa8b9936495992212fa64487" name="ab90dc956aa8b9936495992212fa64487"></a>
  304. <h2 class="memtitle"><span class="permalink"><a href="#ab90dc956aa8b9936495992212fa64487">&#9670;&#160;</a></span>mWorldSpaceNormal</h2>
  305. <div class="memitem">
  306. <div class="memproto">
  307. <table class="memname">
  308. <tr>
  309. <td class="memname"><a class="el" href="class_vec3.html">Vec3</a> ContactManifold::mWorldSpaceNormal</td>
  310. </tr>
  311. </table>
  312. </div><div class="memdoc">
  313. <p>Normal for this manifold, direction along which to move body 2 out of collision along the shortest path. </p>
  314. </div>
  315. </div>
  316. <hr/>The documentation for this class was generated from the following file:<ul>
  317. <li>Jolt/Physics/Collision/<a class="el" href="_contact_listener_8h_source.html">ContactListener.h</a></li>
  318. </ul>
  319. </div><!-- contents -->
  320. </div><!-- doc-content -->
  321. <!-- start footer part -->
  322. <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  323. <ul>
  324. <li class="navelem"><a class="el" href="class_contact_manifold.html">ContactManifold</a></li>
  325. <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>
  326. </ul>
  327. </div>
  328. </body>
  329. </html>