| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275 |
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
- <head>
- <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
- <meta http-equiv="X-UA-Compatible" content="IE=11"/>
- <meta name="generator" content="Doxygen 1.12.0"/>
- <meta name="viewport" content="width=device-width, initial-scale=1"/>
- <title>Jolt Physics: ShapeCastSettings Class Reference</title>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="jquery.js"></script>
- <script type="text/javascript" src="dynsections.js"></script>
- <script type="text/javascript" src="clipboard.js"></script>
- <link href="navtree.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="navtreedata.js"></script>
- <script type="text/javascript" src="navtree.js"></script>
- <script type="text/javascript" src="resize.js"></script>
- <script type="text/javascript" src="cookie.js"></script>
- <link href="search/search.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="search/searchdata.js"></script>
- <script type="text/javascript" src="search/search.js"></script>
- <script type="text/x-mathjax-config">
- MathJax.Hub.Config({
- extensions: ["tex2jax.js"],
- jax: ["input/TeX","output/HTML-CSS"],
- });
- </script>
- <script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script>
- <link href="doxygen.css" rel="stylesheet" type="text/css" />
- </head>
- <body>
- <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
- <div id="titlearea">
- <table cellspacing="0" cellpadding="0">
- <tbody>
- <tr id="projectrow">
- <td id="projectlogo"><img alt="Logo" src="LogoSmall.png"/></td>
- <td id="projectalign">
- <div id="projectname">Jolt Physics
- </div>
- <div id="projectbrief">A multi core friendly Game Physics Engine</div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- <!-- end header part -->
- <!-- Generated by Doxygen 1.12.0 -->
- <script type="text/javascript">
- /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
- var searchBox = new SearchBox("searchBox", "search/",'.html');
- /* @license-end */
- </script>
- <script type="text/javascript">
- /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
- $(function() { codefold.init(0); });
- /* @license-end */
- </script>
- <script type="text/javascript" src="menudata.js"></script>
- <script type="text/javascript" src="menu.js"></script>
- <script type="text/javascript">
- /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
- $(function() {
- initMenu('',true,false,'search.php','Search',true);
- $(function() { init_search(); });
- });
- /* @license-end */
- </script>
- <div id="main-nav"></div>
- </div><!-- top -->
- <div id="side-nav" class="ui-resizable side-nav-resizable">
- <div id="nav-tree">
- <div id="nav-tree-contents">
- <div id="nav-sync" class="sync"></div>
- </div>
- </div>
- <div id="splitbar" style="-moz-user-select:none;"
- class="ui-resizable-handle">
- </div>
- </div>
- <script type="text/javascript">
- /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */
- $(function(){initNavTree('class_shape_cast_settings.html',''); initResizable(true); });
- /* @license-end */
- </script>
- <div id="doc-content">
- <!-- window showing the filter options -->
- <div id="MSearchSelectWindow"
- onmouseover="return searchBox.OnSearchSelectShow()"
- onmouseout="return searchBox.OnSearchSelectHide()"
- onkeydown="return searchBox.OnSearchSelectKey(event)">
- </div>
- <!-- iframe showing the search results (closed by default) -->
- <div id="MSearchResultsWindow">
- <div id="MSearchResults">
- <div class="SRPage">
- <div id="SRIndex">
- <div id="SRResults"></div>
- <div class="SRStatus" id="Loading">Loading...</div>
- <div class="SRStatus" id="Searching">Searching...</div>
- <div class="SRStatus" id="NoMatches">No Matches</div>
- </div>
- </div>
- </div>
- </div>
- <div class="header">
- <div class="summary">
- <a href="#pub-methods">Public Member Functions</a> |
- <a href="#pub-attribs">Public Attributes</a> |
- <a href="class_shape_cast_settings-members.html">List of all members</a> </div>
- <div class="headertitle"><div class="title">ShapeCastSettings Class Reference</div></div>
- </div><!--header-->
- <div class="contents">
- <p>Settings to be passed with a shape cast.
- <a href="#details">More...</a></p>
- <p><code>#include <<a class="el" href="_shape_cast_8h_source.html">ShapeCast.h</a>></code></p>
- <div class="dynheader">
- Inheritance diagram for ShapeCastSettings:</div>
- <div class="dyncontent">
- <div class="center">
- <img src="class_shape_cast_settings.png" usemap="#ShapeCastSettings_map" alt=""/>
- <map id="ShapeCastSettings_map" name="ShapeCastSettings_map">
- <area href="class_collide_settings_base.html" title="Settings to be passed with a collision query." alt="CollideSettingsBase" shape="rect" coords="0,0,123,24"/>
- </map>
- </div></div>
- <table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
- Public Member Functions</h2></td></tr>
- <tr class="memitem:a635da1ab982bb250bcd497213012c189" id="r_a635da1ab982bb250bcd497213012c189"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_memory_8h.html#a91074fb218fe28954a0938c099ddd9e0">JPH_OVERRIDE_NEW_DELETE</a> void </td><td class="memItemRight" valign="bottom"><a class="el" href="#a635da1ab982bb250bcd497213012c189">SetBackFaceMode</a> (<a class="el" href="_back_face_mode_8h.html#a3f6892e7ae9fb32f745f39d0fb911d70">EBackFaceMode</a> inMode)</td></tr>
- <tr class="memdesc:a635da1ab982bb250bcd497213012c189"><td class="mdescLeft"> </td><td class="mdescRight">Set the backfacing mode for all shapes. <br /></td></tr>
- <tr class="separator:a635da1ab982bb250bcd497213012c189"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a>
- Public Attributes</h2></td></tr>
- <tr class="memitem:a0c654586ce060400b7276a7ebb4adcdc" id="r_a0c654586ce060400b7276a7ebb4adcdc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_back_face_mode_8h.html#a3f6892e7ae9fb32f745f39d0fb911d70">EBackFaceMode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a0c654586ce060400b7276a7ebb4adcdc">mBackFaceModeTriangles</a> = <a class="el" href="_back_face_mode_8h.html#a3f6892e7ae9fb32f745f39d0fb911d70af6243a236f136f9c790a0d9cfd71c408">EBackFaceMode::IgnoreBackFaces</a></td></tr>
- <tr class="memdesc:a0c654586ce060400b7276a7ebb4adcdc"><td class="mdescLeft"> </td><td class="mdescRight">How backfacing triangles should be treated (should we report moving from back to front for triangle based shapes, e.g. for MeshShape/HeightFieldShape?) <br /></td></tr>
- <tr class="separator:a0c654586ce060400b7276a7ebb4adcdc"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a3f2bb437820c80a4ba4e2952fe9742d0" id="r_a3f2bb437820c80a4ba4e2952fe9742d0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_back_face_mode_8h.html#a3f6892e7ae9fb32f745f39d0fb911d70">EBackFaceMode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="#a3f2bb437820c80a4ba4e2952fe9742d0">mBackFaceModeConvex</a> = <a class="el" href="_back_face_mode_8h.html#a3f6892e7ae9fb32f745f39d0fb911d70af6243a236f136f9c790a0d9cfd71c408">EBackFaceMode::IgnoreBackFaces</a></td></tr>
- <tr class="memdesc:a3f2bb437820c80a4ba4e2952fe9742d0"><td class="mdescLeft"> </td><td class="mdescRight">How backfacing convex objects should be treated (should we report starting inside an object and moving out?) <br /></td></tr>
- <tr class="separator:a3f2bb437820c80a4ba4e2952fe9742d0"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ac3cb9da5f5cce51f465609ac117f643e" id="r_ac3cb9da5f5cce51f465609ac117f643e"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#ac3cb9da5f5cce51f465609ac117f643e">mUseShrunkenShapeAndConvexRadius</a> = false</td></tr>
- <tr class="memdesc:ac3cb9da5f5cce51f465609ac117f643e"><td class="mdescLeft"> </td><td class="mdescRight">Indicates if we want to shrink the shape by the convex radius and then expand it again. This speeds up collision detection and gives a more accurate normal at the cost of a more 'rounded' shape. <br /></td></tr>
- <tr class="separator:ac3cb9da5f5cce51f465609ac117f643e"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a38fe76bbe3df55bb0ea0f9aa031bcc6e" id="r_a38fe76bbe3df55bb0ea0f9aa031bcc6e"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="#a38fe76bbe3df55bb0ea0f9aa031bcc6e">mReturnDeepestPoint</a> = false</td></tr>
- <tr class="memdesc:a38fe76bbe3df55bb0ea0f9aa031bcc6e"><td class="mdescLeft"> </td><td class="mdescRight">When true, and the shape is intersecting at the beginning of the cast (fraction = 0) then this will calculate the deepest penetration point (costing additional CPU time) <br /></td></tr>
- <tr class="separator:a38fe76bbe3df55bb0ea0f9aa031bcc6e"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="inherit_header pub_attribs_class_collide_settings_base"><td colspan="2" onclick="javascript:dynsection.toggleInherit('pub_attribs_class_collide_settings_base')"><img src="closed.png" alt="-"/> Public Attributes inherited from <a class="el" href="class_collide_settings_base.html">CollideSettingsBase</a></td></tr>
- <tr class="memitem:a15b85d50667172c651f917096a99a54e inherit pub_attribs_class_collide_settings_base" id="r_a15b85d50667172c651f917096a99a54e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_memory_8h.html#a91074fb218fe28954a0938c099ddd9e0">JPH_OVERRIDE_NEW_DELETE</a> <a class="el" href="_active_edge_mode_8h.html#a4405632c58efc7502bf1295038080183">EActiveEdgeMode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_collide_settings_base.html#a15b85d50667172c651f917096a99a54e">mActiveEdgeMode</a> = <a class="el" href="_active_edge_mode_8h.html#a4405632c58efc7502bf1295038080183a505c6aab0af57196fa3df673d7325917">EActiveEdgeMode::CollideOnlyWithActive</a></td></tr>
- <tr class="memdesc:a15b85d50667172c651f917096a99a54e inherit pub_attribs_class_collide_settings_base"><td class="mdescLeft"> </td><td class="mdescRight">How active edges (edges that a moving object should bump into) are handled. <br /></td></tr>
- <tr class="separator:a15b85d50667172c651f917096a99a54e inherit pub_attribs_class_collide_settings_base"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a0c9c32e2267f57dcc73952e3469512bd inherit pub_attribs_class_collide_settings_base" id="r_a0c9c32e2267f57dcc73952e3469512bd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="_collect_faces_mode_8h.html#a43f9b52c7b53fe169fd83842e75935b6">ECollectFacesMode</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_collide_settings_base.html#a0c9c32e2267f57dcc73952e3469512bd">mCollectFacesMode</a> = <a class="el" href="_collect_faces_mode_8h.html#a43f9b52c7b53fe169fd83842e75935b6af92940cc2936d4efee54451acd04e6b8">ECollectFacesMode::NoFaces</a></td></tr>
- <tr class="memdesc:a0c9c32e2267f57dcc73952e3469512bd inherit pub_attribs_class_collide_settings_base"><td class="mdescLeft"> </td><td class="mdescRight">If colliding faces should be collected or only the collision point. <br /></td></tr>
- <tr class="separator:a0c9c32e2267f57dcc73952e3469512bd inherit pub_attribs_class_collide_settings_base"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a0b92708903a65cb2bcc412a49b080736 inherit pub_attribs_class_collide_settings_base" id="r_a0b92708903a65cb2bcc412a49b080736"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_collide_settings_base.html#a0b92708903a65cb2bcc412a49b080736">mCollisionTolerance</a> = <a class="el" href="_physics_settings_8h.html#a4199156431c225865fda0e5e6bc593fd">cDefaultCollisionTolerance</a></td></tr>
- <tr class="memdesc:a0b92708903a65cb2bcc412a49b080736 inherit pub_attribs_class_collide_settings_base"><td class="mdescLeft"> </td><td class="mdescRight">If objects are closer than this distance, they are considered to be colliding (used for GJK) (unit: meter) <br /></td></tr>
- <tr class="separator:a0b92708903a65cb2bcc412a49b080736 inherit pub_attribs_class_collide_settings_base"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a153906919e1de4a797964973d0164f44 inherit pub_attribs_class_collide_settings_base" id="r_a153906919e1de4a797964973d0164f44"><td class="memItemLeft" align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="class_collide_settings_base.html#a153906919e1de4a797964973d0164f44">mPenetrationTolerance</a> = <a class="el" href="_physics_settings_8h.html#adeaa0f0b4cc2e2de1021f3669d5d83d9">cDefaultPenetrationTolerance</a></td></tr>
- <tr class="memdesc:a153906919e1de4a797964973d0164f44 inherit pub_attribs_class_collide_settings_base"><td class="mdescLeft"> </td><td class="mdescRight">A factor that determines the accuracy of the penetration depth calculation. If the change of the squared distance is less than tolerance * current_penetration_depth^2 the algorithm will terminate. (unit: dimensionless) <br /></td></tr>
- <tr class="separator:a153906919e1de4a797964973d0164f44 inherit pub_attribs_class_collide_settings_base"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aede854538605c943e5076753ac2ff9e2 inherit pub_attribs_class_collide_settings_base" id="r_aede854538605c943e5076753ac2ff9e2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_vec3.html">Vec3</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_collide_settings_base.html#aede854538605c943e5076753ac2ff9e2">mActiveEdgeMovementDirection</a> = <a class="el" href="class_vec3.html#ad03c52ab27761bc1e64e33c47632ba51">Vec3::sZero</a>()</td></tr>
- <tr class="memdesc:aede854538605c943e5076753ac2ff9e2 inherit pub_attribs_class_collide_settings_base"><td class="mdescLeft"> </td><td class="mdescRight">When mActiveEdgeMode is CollideOnlyWithActive a movement direction can be provided. When hitting an inactive edge, the system will select the triangle normal as penetration depth only if it impedes the movement less than with the calculated penetration depth. <br /></td></tr>
- <tr class="separator:aede854538605c943e5076753ac2ff9e2 inherit pub_attribs_class_collide_settings_base"><td class="memSeparator" colspan="2"> </td></tr>
- </table>
- <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
- <div class="textblock"><p>Settings to be passed with a shape cast. </p>
- </div><h2 class="groupheader">Member Function Documentation</h2>
- <a id="a635da1ab982bb250bcd497213012c189" name="a635da1ab982bb250bcd497213012c189"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a635da1ab982bb250bcd497213012c189">◆ </a></span>SetBackFaceMode()</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="_memory_8h.html#a91074fb218fe28954a0938c099ddd9e0">JPH_OVERRIDE_NEW_DELETE</a> void ShapeCastSettings::SetBackFaceMode </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="_back_face_mode_8h.html#a3f6892e7ae9fb32f745f39d0fb911d70">EBackFaceMode</a></td> <td class="paramname"><span class="paramname"><em>inMode</em></span></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Set the backfacing mode for all shapes. </p>
- </div>
- </div>
- <h2 class="groupheader">Member Data Documentation</h2>
- <a id="a3f2bb437820c80a4ba4e2952fe9742d0" name="a3f2bb437820c80a4ba4e2952fe9742d0"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a3f2bb437820c80a4ba4e2952fe9742d0">◆ </a></span>mBackFaceModeConvex</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="_back_face_mode_8h.html#a3f6892e7ae9fb32f745f39d0fb911d70">EBackFaceMode</a> ShapeCastSettings::mBackFaceModeConvex = <a class="el" href="_back_face_mode_8h.html#a3f6892e7ae9fb32f745f39d0fb911d70af6243a236f136f9c790a0d9cfd71c408">EBackFaceMode::IgnoreBackFaces</a></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>How backfacing convex objects should be treated (should we report starting inside an object and moving out?) </p>
- </div>
- </div>
- <a id="a0c654586ce060400b7276a7ebb4adcdc" name="a0c654586ce060400b7276a7ebb4adcdc"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a0c654586ce060400b7276a7ebb4adcdc">◆ </a></span>mBackFaceModeTriangles</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="_back_face_mode_8h.html#a3f6892e7ae9fb32f745f39d0fb911d70">EBackFaceMode</a> ShapeCastSettings::mBackFaceModeTriangles = <a class="el" href="_back_face_mode_8h.html#a3f6892e7ae9fb32f745f39d0fb911d70af6243a236f136f9c790a0d9cfd71c408">EBackFaceMode::IgnoreBackFaces</a></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>How backfacing triangles should be treated (should we report moving from back to front for triangle based shapes, e.g. for MeshShape/HeightFieldShape?) </p>
- </div>
- </div>
- <a id="a38fe76bbe3df55bb0ea0f9aa031bcc6e" name="a38fe76bbe3df55bb0ea0f9aa031bcc6e"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a38fe76bbe3df55bb0ea0f9aa031bcc6e">◆ </a></span>mReturnDeepestPoint</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">bool ShapeCastSettings::mReturnDeepestPoint = false</td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>When true, and the shape is intersecting at the beginning of the cast (fraction = 0) then this will calculate the deepest penetration point (costing additional CPU time) </p>
- </div>
- </div>
- <a id="ac3cb9da5f5cce51f465609ac117f643e" name="ac3cb9da5f5cce51f465609ac117f643e"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ac3cb9da5f5cce51f465609ac117f643e">◆ </a></span>mUseShrunkenShapeAndConvexRadius</h2>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">bool ShapeCastSettings::mUseShrunkenShapeAndConvexRadius = false</td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Indicates if we want to shrink the shape by the convex radius and then expand it again. This speeds up collision detection and gives a more accurate normal at the cost of a more 'rounded' shape. </p>
- </div>
- </div>
- <hr/>The documentation for this class was generated from the following file:<ul>
- <li>Jolt/Physics/Collision/<a class="el" href="_shape_cast_8h_source.html">ShapeCast.h</a></li>
- </ul>
- </div><!-- contents -->
- </div><!-- doc-content -->
- <!-- start footer part -->
- <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
- <ul>
- <li class="navelem"><a class="el" href="class_shape_cast_settings.html">ShapeCastSettings</a></li>
- <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>
- </ul>
- </div>
- </body>
- </html>
|