Files
PhysX4.1/physx/documentation/PhysXAPI/files/structPxPairFlag.html
2025-11-28 23:13:44 +05:30

270 lines
28 KiB
HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.14"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>PxPairFlag Struct 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>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</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>
<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 style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="PhysXLogoBlack.png"/></td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.14 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('structPxPairFlag.html','');});
/* @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">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="structPxPairFlag-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">PxPairFlag Struct Reference<div class="ingroups"><a class="el" href="group__physics.html">Physics</a></div></div> </div>
</div><!--header-->
<div class="contents">
<p>Collection of flags describing the actions to take for a collision pair.
<a href="structPxPairFlag.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="PxFiltering_8h_source.html">PxFiltering.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a60e71a2948b030140f840766a3f7ac2f"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2f">Enum</a> { <br />
&#160;&#160;<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fa33a173d43626000f2534bc228946347e">eSOLVE_CONTACT</a> = (1&lt;&lt;0),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fa2465a37a9b236f662bda8d6636eed59b">eMODIFY_CONTACTS</a> = (1&lt;&lt;1),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fabd8650de69997eaa7c5717e347ca74ac">eNOTIFY_TOUCH_FOUND</a> = (1&lt;&lt;2),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fa69f6e6373fe2f024618f752c388ef6b1">eNOTIFY_TOUCH_PERSISTS</a> = (1&lt;&lt;3),
<br />
&#160;&#160;<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fa201281be698379417370bf7b0aeeb78e">eNOTIFY_TOUCH_LOST</a> = (1&lt;&lt;4),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fac3bd4a1e1a9cb6fbc00dd7df5770f4ac">eNOTIFY_TOUCH_CCD</a> = (1&lt;&lt;5),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fab35919229480fcf006fe1dd5a3fe38ab">eNOTIFY_THRESHOLD_FORCE_FOUND</a> = (1&lt;&lt;6),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fac74556f995b40456ab3dfcf1ea9de2dd">eNOTIFY_THRESHOLD_FORCE_PERSISTS</a> = (1&lt;&lt;7),
<br />
&#160;&#160;<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fa517ae07b413b27ad008f766170051ae6">eNOTIFY_THRESHOLD_FORCE_LOST</a> = (1&lt;&lt;8),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fadb30cb0c2d2859560b34c684ac076137">eNOTIFY_CONTACT_POINTS</a> = (1&lt;&lt;9),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fa9757b9ece121779fa2721621756d173d">eDETECT_DISCRETE_CONTACT</a> = (1&lt;&lt;10),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fac41a9f8b9326480403c023ad20cdc2f1">eDETECT_CCD_CONTACT</a> = (1&lt;&lt;11),
<br />
&#160;&#160;<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2facac6889c907f5e9dcf8e6ea56da1f99e">ePRE_SOLVER_VELOCITY</a> = (1&lt;&lt;12),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fa9502180b279a27e884468c3cb7c64544">ePOST_SOLVER_VELOCITY</a> = (1&lt;&lt;13),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fa31be9ac6da5a882091927851a2c73c59">eCONTACT_EVENT_POSE</a> = (1&lt;&lt;14),
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fa2cd5acfe9fb9c94dceaec1cf0b925758">eNEXT_FREE</a> = (1&lt;&lt;15),
<br />
&#160;&#160;<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fafd2fd2d6bbbf3acc8d3cbe63beabe6fe">eCONTACT_DEFAULT</a> = eSOLVE_CONTACT | eDETECT_DISCRETE_CONTACT,
<a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2facac0202003af4139c16413db81b4a2e7">eTRIGGER_DEFAULT</a> = eNOTIFY_TOUCH_FOUND | eNOTIFY_TOUCH_LOST | eDETECT_DISCRETE_CONTACT
<br />
}</td></tr>
<tr class="separator:a60e71a2948b030140f840766a3f7ac2f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Collection of flags describing the actions to take for a collision pair. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="group__physics.html#gacacbeccf757e60dbf45089ef382681d9" title="Bitfield that contains a set of raised flags defined in PxPairFlag. ">PxPairFlags</a> PxSimulationFilterShader.filter() <a class="el" href="classPxSimulationFilterCallback.html" title="Filter callback to specify handling of collision pairs. ">PxSimulationFilterCallback</a> </dd></dl>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="a60e71a2948b030140f840766a3f7ac2f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a60e71a2948b030140f840766a3f7ac2f">&#9670;&nbsp;</a></span>Enum</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2f">PxPairFlag::Enum</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fa33a173d43626000f2534bc228946347e"></a>eSOLVE_CONTACT&#160;</td><td class="fielddoc"><p>Process the contacts of this collision pair in the dynamics solver. </p>
<dl class="section note"><dt>Note</dt><dd>Only takes effect if the colliding actors are rigid bodies. </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fa2465a37a9b236f662bda8d6636eed59b"></a>eMODIFY_CONTACTS&#160;</td><td class="fielddoc"><p>Call contact modification callback for this collision pair. </p>
<dl class="section note"><dt>Note</dt><dd>Only takes effect if the colliding actors are rigid bodies.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxContactModifyCallback.html" title="An interface class that the user can implement in order to modify contact constraints. ">PxContactModifyCallback</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fabd8650de69997eaa7c5717e347ca74ac"></a>eNOTIFY_TOUCH_FOUND&#160;</td><td class="fielddoc"><p>Call contact report callback or trigger callback when this collision pair starts to be in contact. </p>
<p>If one of the two collision objects is a trigger shape (see <a class="el" href="structPxShapeFlag.html#a6edb481aaa3a998c5d6dd3fc4ad87f1aaef2b90024dc86be72b68bbaf94a5821d" title="The shape is a trigger which can send reports whenever other shapes enter/leave its volume...">PxShapeFlag::eTRIGGER_SHAPE</a>) then the trigger callback will get called as soon as the other object enters the trigger volume. If none of the two collision objects is a trigger shape then the contact report callback will get called when the actors of this collision pair start to be in contact.</p>
<dl class="section note"><dt>Note</dt><dd>Only takes effect if the colliding actors are rigid bodies.</dd>
<dd>
Only takes effect if eDETECT_DISCRETE_CONTACT or eDETECT_CCD_CONTACT is raised</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationEventCallback.html#a4dc1da28643ccf9f77c8432b5eb2fd32" title="This is called when certain contact events occur. ">PxSimulationEventCallback.onContact()</a> <a class="el" href="classPxSimulationEventCallback.html#a768b2ee9fe28736da3fcdc6a0eae9733" title="This is called with the current trigger pair events. ">PxSimulationEventCallback.onTrigger()</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fa69f6e6373fe2f024618f752c388ef6b1"></a>eNOTIFY_TOUCH_PERSISTS&#160;</td><td class="fielddoc"><p>Call contact report callback while this collision pair is in contact. </p>
<p>If none of the two collision objects is a trigger shape then the contact report callback will get called while the actors of this collision pair are in contact.</p>
<dl class="section note"><dt>Note</dt><dd>Triggers do not support this event. Persistent trigger contacts need to be tracked separately by observing eNOTIFY_TOUCH_FOUND/eNOTIFY_TOUCH_LOST events.</dd>
<dd>
Only takes effect if the colliding actors are rigid bodies.</dd>
<dd>
No report will get sent if the objects in contact are sleeping.</dd>
<dd>
Only takes effect if eDETECT_DISCRETE_CONTACT or eDETECT_CCD_CONTACT is raised</dd>
<dd>
If this flag gets enabled while a pair is in touch already, there will be no eNOTIFY_TOUCH_PERSISTS events until the pair loses and regains touch.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationEventCallback.html#a4dc1da28643ccf9f77c8432b5eb2fd32" title="This is called when certain contact events occur. ">PxSimulationEventCallback.onContact()</a> <a class="el" href="classPxSimulationEventCallback.html#a768b2ee9fe28736da3fcdc6a0eae9733" title="This is called with the current trigger pair events. ">PxSimulationEventCallback.onTrigger()</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fa201281be698379417370bf7b0aeeb78e"></a>eNOTIFY_TOUCH_LOST&#160;</td><td class="fielddoc"><p>Call contact report callback or trigger callback when this collision pair stops to be in contact. </p>
<p>If one of the two collision objects is a trigger shape (see <a class="el" href="structPxShapeFlag.html#a6edb481aaa3a998c5d6dd3fc4ad87f1aaef2b90024dc86be72b68bbaf94a5821d" title="The shape is a trigger which can send reports whenever other shapes enter/leave its volume...">PxShapeFlag::eTRIGGER_SHAPE</a>) then the trigger callback will get called as soon as the other object leaves the trigger volume. If none of the two collision objects is a trigger shape then the contact report callback will get called when the actors of this collision pair stop to be in contact.</p>
<dl class="section note"><dt>Note</dt><dd>Only takes effect if the colliding actors are rigid bodies.</dd>
<dd>
This event will also get triggered if one of the colliding objects gets deleted.</dd>
<dd>
Only takes effect if eDETECT_DISCRETE_CONTACT or eDETECT_CCD_CONTACT is raised</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationEventCallback.html#a4dc1da28643ccf9f77c8432b5eb2fd32" title="This is called when certain contact events occur. ">PxSimulationEventCallback.onContact()</a> <a class="el" href="classPxSimulationEventCallback.html#a768b2ee9fe28736da3fcdc6a0eae9733" title="This is called with the current trigger pair events. ">PxSimulationEventCallback.onTrigger()</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fac3bd4a1e1a9cb6fbc00dd7df5770f4ac"></a>eNOTIFY_TOUCH_CCD&#160;</td><td class="fielddoc"><p>Call contact report callback when this collision pair is in contact during CCD passes. </p>
<p>If CCD with multiple passes is enabled, then a fast moving object might bounce on and off the same object multiple times. Hence, the same pair might be in contact multiple times during a simulation step. This flag will make sure that all the detected collision during CCD will get reported. For performance reasons, the system can not always tell whether the contact pair lost touch in one of the previous CCD passes and thus can also not always tell whether the contact is new or has persisted. eNOTIFY_TOUCH_CCD just reports when the two collision objects were detected as being in contact during a CCD pass.</p>
<dl class="section note"><dt>Note</dt><dd>Only takes effect if the colliding actors are rigid bodies.</dd>
<dd>
Trigger shapes are not supported.</dd>
<dd>
Only takes effect if eDETECT_CCD_CONTACT is raised</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationEventCallback.html#a4dc1da28643ccf9f77c8432b5eb2fd32" title="This is called when certain contact events occur. ">PxSimulationEventCallback.onContact()</a> <a class="el" href="classPxSimulationEventCallback.html#a768b2ee9fe28736da3fcdc6a0eae9733" title="This is called with the current trigger pair events. ">PxSimulationEventCallback.onTrigger()</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fab35919229480fcf006fe1dd5a3fe38ab"></a>eNOTIFY_THRESHOLD_FORCE_FOUND&#160;</td><td class="fielddoc"><p>Call contact report callback when the contact force between the actors of this collision pair exceeds one of the actor-defined force thresholds. </p>
<dl class="section note"><dt>Note</dt><dd>Only takes effect if the colliding actors are rigid bodies.</dd>
<dd>
Only takes effect if eDETECT_DISCRETE_CONTACT or eDETECT_CCD_CONTACT is raised</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationEventCallback.html#a4dc1da28643ccf9f77c8432b5eb2fd32" title="This is called when certain contact events occur. ">PxSimulationEventCallback.onContact()</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fac74556f995b40456ab3dfcf1ea9de2dd"></a>eNOTIFY_THRESHOLD_FORCE_PERSISTS&#160;</td><td class="fielddoc"><p>Call contact report callback when the contact force between the actors of this collision pair continues to exceed one of the actor-defined force thresholds. </p>
<dl class="section note"><dt>Note</dt><dd>Only takes effect if the colliding actors are rigid bodies.</dd>
<dd>
If a pair gets re-filtered and this flag has previously been disabled, then the report will not get fired in the same frame even if the force threshold has been reached in the previous one (unless <a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fab35919229480fcf006fe1dd5a3fe38ab" title="Call contact report callback when the contact force between the actors of this collision pair exceeds...">eNOTIFY_THRESHOLD_FORCE_FOUND</a> has been set in the previous frame).</dd>
<dd>
Only takes effect if eDETECT_DISCRETE_CONTACT or eDETECT_CCD_CONTACT is raised</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationEventCallback.html#a4dc1da28643ccf9f77c8432b5eb2fd32" title="This is called when certain contact events occur. ">PxSimulationEventCallback.onContact()</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fa517ae07b413b27ad008f766170051ae6"></a>eNOTIFY_THRESHOLD_FORCE_LOST&#160;</td><td class="fielddoc"><p>Call contact report callback when the contact force between the actors of this collision pair falls below one of the actor-defined force thresholds (includes the case where this collision pair stops being in contact). </p>
<dl class="section note"><dt>Note</dt><dd>Only takes effect if the colliding actors are rigid bodies.</dd>
<dd>
If a pair gets re-filtered and this flag has previously been disabled, then the report will not get fired in the same frame even if the force threshold has been reached in the previous one (unless <a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fab35919229480fcf006fe1dd5a3fe38ab" title="Call contact report callback when the contact force between the actors of this collision pair exceeds...">eNOTIFY_THRESHOLD_FORCE_FOUND</a> or <a class="el" href="structPxPairFlag.html#a60e71a2948b030140f840766a3f7ac2fac74556f995b40456ab3dfcf1ea9de2dd" title="Call contact report callback when the contact force between the actors of this collision pair continu...">eNOTIFY_THRESHOLD_FORCE_PERSISTS</a> has been set in the previous frame).</dd>
<dd>
Only takes effect if eDETECT_DISCRETE_CONTACT or eDETECT_CCD_CONTACT is raised</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationEventCallback.html#a4dc1da28643ccf9f77c8432b5eb2fd32" title="This is called when certain contact events occur. ">PxSimulationEventCallback.onContact()</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fadb30cb0c2d2859560b34c684ac076137"></a>eNOTIFY_CONTACT_POINTS&#160;</td><td class="fielddoc"><p>Provide contact points in contact reports for this collision pair. </p>
<dl class="section note"><dt>Note</dt><dd>Only takes effect if the colliding actors are rigid bodies and if used in combination with the flags eNOTIFY_TOUCH_... or eNOTIFY_THRESHOLD_FORCE_...</dd>
<dd>
Only takes effect if eDETECT_DISCRETE_CONTACT or eDETECT_CCD_CONTACT is raised</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationEventCallback.html#a4dc1da28643ccf9f77c8432b5eb2fd32" title="This is called when certain contact events occur. ">PxSimulationEventCallback.onContact()</a> <a class="el" href="structPxContactPair.html" title="Contact report pair information. ">PxContactPair</a> <a class="el" href="group__physics.html#gab6d54df954c875ccacf8bddba593cf83" title="Extracts the contact points from the stream and stores them in a convenient format. ">PxContactPair.extractContacts()</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fa9757b9ece121779fa2721621756d173d"></a>eDETECT_DISCRETE_CONTACT&#160;</td><td class="fielddoc"><p>This flag is used to indicate whether this pair generates discrete collision detection contacts. </p>
<dl class="section note"><dt>Note</dt><dd>Contacts are only responded to if eSOLVE_CONTACT is enabled. </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fac41a9f8b9326480403c023ad20cdc2f1"></a>eDETECT_CCD_CONTACT&#160;</td><td class="fielddoc"><p>This flag is used to indicate whether this pair generates CCD contacts. </p>
<dl class="section note"><dt>Note</dt><dd>The contacts will only be responded to if eSOLVE_CONTACT is enabled on this pair. </dd>
<dd>
The scene must have <a class="el" href="structPxSceneFlag.html#ab4c347372b4433d34d983da780916c53a05d1e69880f10fb3de7d26c2e2e7eca3" title="Enables a second broad phase check after integration that makes it possible to prevent objects from t...">PxSceneFlag::eENABLE_CCD</a> enabled to use this feature. </dd>
<dd>
Non-static bodies of the pair should have <a class="el" href="structPxRigidBodyFlag.html#a5fd4878ae66a98c030a9d976e8ba8596a686cdd889652a435c19d8c663d809d9e" title="Enables swept integration for the actor. ">PxRigidBodyFlag::eENABLE_CCD</a> specified for this feature to work correctly. </dd>
<dd>
This flag is not supported with trigger shapes. However, CCD trigger events can be emulated using non-trigger shapes and requesting eNOTIFY_TOUCH_FOUND and eNOTIFY_TOUCH_LOST and not raising eSOLVE_CONTACT on the pair.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="structPxRigidBodyFlag.html#a5fd4878ae66a98c030a9d976e8ba8596a686cdd889652a435c19d8c663d809d9e" title="Enables swept integration for the actor. ">PxRigidBodyFlag::eENABLE_CCD</a> </dd>
<dd>
<a class="el" href="structPxSceneFlag.html#ab4c347372b4433d34d983da780916c53a05d1e69880f10fb3de7d26c2e2e7eca3" title="Enables a second broad phase check after integration that makes it possible to prevent objects from t...">PxSceneFlag::eENABLE_CCD</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2facac6889c907f5e9dcf8e6ea56da1f99e"></a>ePRE_SOLVER_VELOCITY&#160;</td><td class="fielddoc"><p>Provide pre solver velocities in contact reports for this collision pair. </p>
<p>If the collision pair has contact reports enabled, the velocities of the rigid bodies before contacts have been solved will be provided in the contact report callback unless the pair lost touch in which case no data will be provided.</p>
<dl class="section note"><dt>Note</dt><dd>Usually it is not necessary to request these velocities as they will be available by querying the velocity from the provided <a class="el" href="classPxRigidActor.html" title="PxRigidActor represents a base class shared between dynamic and static rigid bodies in the physics SD...">PxRigidActor</a> object directly. However, it might be the case that the velocity of a rigid body gets set while the simulation is running in which case the <a class="el" href="classPxRigidActor.html" title="PxRigidActor represents a base class shared between dynamic and static rigid bodies in the physics SD...">PxRigidActor</a> would return this new velocity in the contact report callback and not the velocity the simulation used.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationEventCallback.html#a4dc1da28643ccf9f77c8432b5eb2fd32" title="This is called when certain contact events occur. ">PxSimulationEventCallback.onContact()</a>, <a class="el" href="structPxContactPairVelocity.html" title="Velocities of the contact pair rigid bodies. ">PxContactPairVelocity</a>, <a class="el" href="structPxContactPairHeader.html#a2a9619192f15e1a60104c90b83f67e33" title="Stream containing extra data as requested in the PxPairFlag flags of the simulation filter...">PxContactPairHeader.extraDataStream</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fa9502180b279a27e884468c3cb7c64544"></a>ePOST_SOLVER_VELOCITY&#160;</td><td class="fielddoc"><p>Provide post solver velocities in contact reports for this collision pair. </p>
<p>If the collision pair has contact reports enabled, the velocities of the rigid bodies after contacts have been solved will be provided in the contact report callback unless the pair lost touch in which case no data will be provided.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationEventCallback.html#a4dc1da28643ccf9f77c8432b5eb2fd32" title="This is called when certain contact events occur. ">PxSimulationEventCallback.onContact()</a>, <a class="el" href="structPxContactPairVelocity.html" title="Velocities of the contact pair rigid bodies. ">PxContactPairVelocity</a>, <a class="el" href="structPxContactPairHeader.html#a2a9619192f15e1a60104c90b83f67e33" title="Stream containing extra data as requested in the PxPairFlag flags of the simulation filter...">PxContactPairHeader.extraDataStream</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fa31be9ac6da5a882091927851a2c73c59"></a>eCONTACT_EVENT_POSE&#160;</td><td class="fielddoc"><p>Provide rigid body poses in contact reports for this collision pair. </p>
<p>If the collision pair has contact reports enabled, the rigid body poses at the contact event will be provided in the contact report callback unless the pair lost touch in which case no data will be provided.</p>
<dl class="section note"><dt>Note</dt><dd>Usually it is not necessary to request these poses as they will be available by querying the pose from the provided <a class="el" href="classPxRigidActor.html" title="PxRigidActor represents a base class shared between dynamic and static rigid bodies in the physics SD...">PxRigidActor</a> object directly. However, it might be the case that the pose of a rigid body gets set while the simulation is running in which case the <a class="el" href="classPxRigidActor.html" title="PxRigidActor represents a base class shared between dynamic and static rigid bodies in the physics SD...">PxRigidActor</a> would return this new pose in the contact report callback and not the pose the simulation used. Another use case is related to CCD with multiple passes enabled, A fast moving object might bounce on and off the same object multiple times. This flag can be used to request the rigid body poses at the time of impact for each such collision event.</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxSimulationEventCallback.html#a4dc1da28643ccf9f77c8432b5eb2fd32" title="This is called when certain contact events occur. ">PxSimulationEventCallback.onContact()</a>, <a class="el" href="structPxContactPairPose.html" title="World space actor poses of the contact pair rigid bodies. ">PxContactPairPose</a>, <a class="el" href="structPxContactPairHeader.html#a2a9619192f15e1a60104c90b83f67e33" title="Stream containing extra data as requested in the PxPairFlag flags of the simulation filter...">PxContactPairHeader.extraDataStream</a> </dd></dl>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fa2cd5acfe9fb9c94dceaec1cf0b925758"></a>eNEXT_FREE&#160;</td><td class="fielddoc"><p>For internal use only. </p>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2fafd2fd2d6bbbf3acc8d3cbe63beabe6fe"></a>eCONTACT_DEFAULT&#160;</td><td class="fielddoc"><p>Provided default flag to do simple contact processing for this collision pair. </p>
</td></tr>
<tr><td class="fieldname"><a id="a60e71a2948b030140f840766a3f7ac2facac0202003af4139c16413db81b4a2e7"></a>eTRIGGER_DEFAULT&#160;</td><td class="fielddoc"><p>Provided default flag to get commonly used trigger behavior for this collision pair. </p>
</td></tr>
</table>
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li><a class="el" href="PxFiltering_8h_source.html">PxFiltering.h</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.14-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="structPxPairFlag.html">PxPairFlag</a></li>
<li class="footer">Copyright &copy; 2008-2021 NVIDIA Corporation, 2788 San Tomas Expressway, Santa Clara, CA 95051 U.S.A. All rights reserved. <a href="http://www.nvidia.com ">www.nvidia.com</a></li>
</ul>
</div>
</body>
</html>