aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorbgaldrikian <[email protected]>2018-10-25 00:12:07 -0700
committerbgaldrikian <[email protected]>2018-10-25 00:12:07 -0700
commita3f92a1c7a1cc1553bd9581845ef2542d55ee58f (patch)
tree65d7b052c81faca989db10cf2681f4209fe6dc76 /docs
parentMerge pull request #14 from neithy/master (diff)
downloadblast-1.1.4_release.tar.xz
blast-1.1.4_release.zip
Fix for crash bug during ESS authoringv1.1.4_releasev1.1.4_rc2
Doc updates for AuthoringTool and ApexImporter Updated release notes
Diffstat (limited to 'docs')
-rwxr-xr-xdocs/_source/apex_importer.txt20
-rwxr-xr-xdocs/_source/authoring_tool.txt65
-rwxr-xr-xdocs/api_docs/files/pageauthoring.html63
-rwxr-xr-xdocs/api_docs/files/pageimporter.html14
-rwxr-xr-xdocs/api_docs/files/pagereleasenotes.html4
-rwxr-xr-xdocs/release_notes.txt4
-rwxr-xr-xdocs/source_docs/files/_nv_blast_ext_authoring_bond_generator_impl_8h-source.html63
-rwxr-xr-xdocs/source_docs/files/_nv_blast_ext_authoring_bond_generator_impl_8h_source.html2
8 files changed, 133 insertions, 102 deletions
diff --git a/docs/_source/apex_importer.txt b/docs/_source/apex_importer.txt
index fca0b67..2eeec36 100755
--- a/docs/_source/apex_importer.txt
+++ b/docs/_source/apex_importer.txt
@@ -15,23 +15,22 @@ Along with creating a Blast&tm; asset (*.blast), ApexImporter creates an *.obj o
Blast&tm; asset data can be saved in different ways:
-1) LL-asset which is Low Level asset data (NvBlastAsset with --ll).
+ 1) LL-asset which is Low Level asset data (NvBlastAsset with --ll).
-2) Tk-asset which is Toolkit asset data (Nv::Blast::TkAsset with --tk).
+ 2) Tk-asset which is Toolkit asset data (Nv::Blast::TkAsset with --tk).
-3) ExtPx-asset which incorporates Blast&tm; data and collision geometry for physics engine (Nv::Blast::ExtPxAsset with --px). Default mode.
+ 3) ExtPx-asset which incorporates Blast&tm; data and collision geometry for physics engine (Nv::Blast::ExtPxAsset with --px). Default mode.
ExtPxAsset assets or *.fbx files that contain collision geometry and can be used in \ref pagesampleassetviewer.
\verbatim
USAGE:
- ApexImporter [--nonskinned] [--fbxcollision] [--fbx] [--obj]
- [--fbxascii] [--ll] [--tk] [--px] [-d] [-m <0 -
- EXACT, 1 - FORCED, for detailed description see
- docs.>] -n <output asset name> [-o <output
- directory>] -f <infile> [--] [--version] [-h]
-
+ ApexImporter [--nonskinned] [--fbxcollision] [--jsoncollision]
+ [--fbx] [--obj] [--fbxascii] [--ll] [--tk] [--px] [-d]
+ [-m <0 - EXACT, 1 - FORCED, for detailed description see docs.>]
+ -n <output asset name> [-o <output directory>]
+ -f <infile> [--] [--version] [-h]
Where:
@@ -41,6 +40,9 @@ Where:
--fbxcollision
Append collision geometry to FBX file
+ --jsoncollision
+ Save collision geometry to a json file
+
--fbx
Output a FBX mesh to the output directory
diff --git a/docs/_source/authoring_tool.txt b/docs/_source/authoring_tool.txt
index cfa6145..43fd40b 100755
--- a/docs/_source/authoring_tool.txt
+++ b/docs/_source/authoring_tool.txt
@@ -11,7 +11,7 @@ Additionally, the user can choose how Blast&tm; data should be saved (in .blast
2) Tk-asset which is Toolkit asset data (Nv::Blast::TkAsset).
- 3) ExtPx-asset which incorporates Blast&tm; data and collision geometry for physics engine (Nv::Blast::ExtPxAsset).
+ 3) ExtPx-asset which incorporates Blast&tm; data and collision geometry for physics engine (Nv::Blast::ExtPxAsset).
.blast and .obj files may be consumed by the \ref pagesampleassetviewer.
@@ -24,23 +24,30 @@ This tool uses the Authoring Tools Extension (\ref pageextauthoring). Therefore
USAGE:
- AuthoringTool_x64.exe [--ovar <by default
- 0.0>] [--avar <by default 0.0>]
- [--slices <by default 1 1 1>]
- [--radius <by default 1.0>]
- [--clusters <by default 5>]
- [--cells <by default 5>] [--mode <v
- - voronoi, c - clustered voronoi, s
- - slicing.>] [--nonskinned]
- [--fbxcollision] [--fbx] [--obj]
- [--fbxascii] [--tk] [--px]
- [--clean] [--outputDir <by default
- directory of the input file>] [--]
- [--version] [-h] <infile> <output
- asset name>
-
+ AuthoringTool_x64 [--agg <by default 1>] [--cutoutBitmap <by defualt empty>]
+ [--normal <by default 1 0 0>] [--point <by default 0 0 0>]
+ [--ovar <by default 0.0>] [--avar <by default 0.0>]
+ [--slices <by default 1 1 1>] [--radius <by default 1.0>]
+ [--clusters <by default 5>] [--cells <by default 5>]
+ [--mode <v - voronoi, c - clustered voronoi, s - slicing,
+ p - plane cut, u - cutout, i - chunks from islands.>]
+ [--interiorMat <by default -1>] [--nonskinned] [--jsoncollision]
+ [--fbxcollision] [--fbx] [--obj] [--fbxascii] [--ll] [--tk] [--px]
+ [--clean] [--outputDir <by default directory of the input file>]
+ [--] [--version] [-h] <infile> <output asset name>
Where:
+ --agg <by default 1>
+ Maximum number of collision hulls per chunk (aggregate)
+
+ --cutoutBitmap <by defualt empty>
+ Path to *.bmp file with cutout bitmap
+
+ --normal <by default 1 0 0>
+ Plane surface normal
+
+ --point <by default 0 0 0>
+ Plane surface point
--ovar <by default 0.0>
Slicing offset variation
@@ -60,12 +67,20 @@ Where:
--cells <by default 5>
Voronoi cells count
- --mode <v - voronoi, c - clustered voronoi, s - slicing.>
+ --mode <v - voronoi, c - clustered voronoi, s - slicing, p - plane cut,
+ u - cutout, i - chunks from islands.>
Fracturing mode
+ --interiorMat <by default -1>
+ Use to setup interior material id, by default new material for
+ internal surface will be created.
+
--nonskinned
Output a non-skinned FBX file
+ --jsoncollision
+ Save collision geometry to a json file
+
--fbxcollision
Add collision geometry to FBX file
@@ -78,13 +93,15 @@ Where:
--fbxascii
Output FBX as an ascii file (defaults to binary output)
+ --ll
+ Output LL Blast (NvBlastAsset) to the .blast file in the output
+ directory.
+
--tk
- Output TkAsset to the .blast file in the output directory instead of
- LL Blast asset (NvBlastAsset).
+ Output TkAsset to the .blast file in the output directory.
--px
- Output ExtPxAsset to the .blast file in the output directory instead
- of LL Blast asset (NvBlastAsset).
+ Output ExtPxAsset to the .blast file in the output directory.
--clean
Try cleaning mesh before fracturing
@@ -107,12 +124,6 @@ Where:
<output asset name>
(required) Output asset name
-
- Blast SDK: Authoring Tool
-
-
-
-
\endverbatim
<br>
diff --git a/docs/api_docs/files/pageauthoring.html b/docs/api_docs/files/pageauthoring.html
index 5c42fa3..967fbf2 100755
--- a/docs/api_docs/files/pageauthoring.html
+++ b/docs/api_docs/files/pageauthoring.html
@@ -33,23 +33,30 @@ This tool uses the Authoring Tools Extension (<a class="el" href="pageextauthori
USAGE:
- AuthoringTool_x64.exe [--ovar &lt;by default
- 0.0&gt;] [--avar &lt;by default 0.0&gt;]
- [--slices &lt;by default 1 1 1&gt;]
- [--radius &lt;by default 1.0&gt;]
- [--clusters &lt;by default 5&gt;]
- [--cells &lt;by default 5&gt;] [--mode &lt;v
- - voronoi, c - clustered voronoi, s
- - slicing.&gt;] [--nonskinned]
- [--fbxcollision] [--fbx] [--obj]
- [--fbxascii] [--tk] [--px]
- [--clean] [--outputDir &lt;by default
- directory of the input file&gt;] [--]
- [--version] [-h] &lt;infile&gt; &lt;output
- asset name&gt;
-
+ AuthoringTool_x64 [--agg &lt;by default 1&gt;] [--cutoutBitmap &lt;by defualt empty&gt;]
+ [--normal &lt;by default 1 0 0&gt;] [--point &lt;by default 0 0 0&gt;]
+ [--ovar &lt;by default 0.0&gt;] [--avar &lt;by default 0.0&gt;]
+ [--slices &lt;by default 1 1 1&gt;] [--radius &lt;by default 1.0&gt;]
+ [--clusters &lt;by default 5&gt;] [--cells &lt;by default 5&gt;]
+ [--mode &lt;v - voronoi, c - clustered voronoi, s - slicing,
+ p - plane cut, u - cutout, i - chunks from islands.&gt;]
+ [--interiorMat &lt;by default -1&gt;] [--nonskinned] [--jsoncollision]
+ [--fbxcollision] [--fbx] [--obj] [--fbxascii] [--ll] [--tk] [--px]
+ [--clean] [--outputDir &lt;by default directory of the input file&gt;]
+ [--] [--version] [-h] &lt;infile&gt; &lt;output asset name&gt;
Where:
+ --agg &lt;by default 1&gt;
+ Maximum number of collision hulls per chunk (aggregate)
+
+ --cutoutBitmap &lt;by defualt empty&gt;
+ Path to *.bmp file with cutout bitmap
+
+ --normal &lt;by default 1 0 0&gt;
+ Plane surface normal
+
+ --point &lt;by default 0 0 0&gt;
+ Plane surface point
--ovar &lt;by default 0.0&gt;
Slicing offset variation
@@ -69,12 +76,20 @@ Where:
--cells &lt;by default 5&gt;
Voronoi cells count
- --mode &lt;v - voronoi, c - clustered voronoi, s - slicing.&gt;
+ --mode &lt;v - voronoi, c - clustered voronoi, s - slicing, p - plane cut,
+ u - cutout, i - chunks from islands.&gt;
Fracturing mode
+ --interiorMat &lt;by default -1&gt;
+ Use to setup interior material id, by default new material for
+ internal surface will be created.
+
--nonskinned
Output a non-skinned FBX file
+ --jsoncollision
+ Save collision geometry to a json file
+
--fbxcollision
Add collision geometry to FBX file
@@ -87,13 +102,15 @@ Where:
--fbxascii
Output FBX as an ascii file (defaults to binary output)
+ --ll
+ Output LL Blast (NvBlastAsset) to the .blast file in the output
+ directory.
+
--tk
- Output TkAsset to the .blast file in the output directory instead of
- LL Blast asset (NvBlastAsset).
+ Output TkAsset to the .blast file in the output directory.
--px
- Output ExtPxAsset to the .blast file in the output directory instead
- of LL Blast asset (NvBlastAsset).
+ Output ExtPxAsset to the .blast file in the output directory.
--clean
Try cleaning mesh before fracturing
@@ -116,12 +133,6 @@ Where:
&lt;output asset name&gt;
(required) Output asset name
-
- Blast SDK: Authoring Tool
-
-
-
-
</pre></div><p>
<br>
See <a class="el" href="pagecopyrights.html">Copyrights</a> for license information regarding third-party software used by ApexImporter.<p>
diff --git a/docs/api_docs/files/pageimporter.html b/docs/api_docs/files/pageimporter.html
index d520352..2c069bd 100755
--- a/docs/api_docs/files/pageimporter.html
+++ b/docs/api_docs/files/pageimporter.html
@@ -34,12 +34,11 @@ ExtPxAsset assets or *.fbx files that contain collision geometry and can be used
<div class="fragment"><pre class="fragment">
USAGE:
- ApexImporter [--nonskinned] [--fbxcollision] [--fbx] [--obj]
- [--fbxascii] [--ll] [--tk] [--px] [-d] [-m &lt;0 -
- EXACT, 1 - FORCED, for detailed description see
- docs.&gt;] -n &lt;output asset name&gt; [-o &lt;output
- directory&gt;] -f &lt;infile&gt; [--] [--version] [-h]
-
+ ApexImporter [--nonskinned] [--fbxcollision] [--jsoncollision]
+ [--fbx] [--obj] [--fbxascii] [--ll] [--tk] [--px] [-d]
+ [-m &lt;0 - EXACT, 1 - FORCED, for detailed description see docs.&gt;]
+ -n &lt;output asset name&gt; [-o &lt;output directory&gt;]
+ -f &lt;infile&gt; [--] [--version] [-h]
Where:
@@ -49,6 +48,9 @@ Where:
--fbxcollision
Append collision geometry to FBX file
+ --jsoncollision
+ Save collision geometry to a json file
+
--fbx
Output a FBX mesh to the output directory
diff --git a/docs/api_docs/files/pagereleasenotes.html b/docs/api_docs/files/pagereleasenotes.html
index 8d37a2f..1775f17 100755
--- a/docs/api_docs/files/pagereleasenotes.html
+++ b/docs/api_docs/files/pagereleasenotes.html
@@ -24,7 +24,7 @@
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-Blast(tm) SDK 1.1.4 (03-Oct-2018)
+Blast(tm) SDK 1.1.4 (24-Oct-2018)
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Changes
@@ -45,9 +45,11 @@ Bug fixes
* Authoring tools:
** Fixed .obj material loading when obj folder is same as working directory.
** Degenerate face generation fix.
+** Fixed memory leak in FractureTool.
* Proper memory releasing in samples.
* Single-actor serialization bugfix when actor has world bonds.
* Updated PhysX package for Win64 (vc14 and vc15) and Linux64 to 3.4.24990349, improving GRB behavior and fixing GRB crash/failure on Volta and Turing.
+* Documented JSON collision export option introduced in previous version.
Known Issues
------------
diff --git a/docs/release_notes.txt b/docs/release_notes.txt
index 39ffc3d..15595bd 100755
--- a/docs/release_notes.txt
+++ b/docs/release_notes.txt
@@ -3,7 +3,7 @@
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-Blast(tm) SDK 1.1.4 (03-Oct-2018)
+Blast(tm) SDK 1.1.4 (24-Oct-2018)
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Changes
@@ -24,9 +24,11 @@ Bug fixes
* Authoring tools:
** Fixed .obj material loading when obj folder is same as working directory.
** Degenerate face generation fix.
+** Fixed memory leak in FractureTool.
* Proper memory releasing in samples.
* Single-actor serialization bugfix when actor has world bonds.
* Updated PhysX package for Win64 (vc14 and vc15) and Linux64 to 3.4.24990349, improving GRB behavior and fixing GRB crash/failure on Volta and Turing.
+* Documented JSON collision export option introduced in previous version.
Known Issues
------------
diff --git a/docs/source_docs/files/_nv_blast_ext_authoring_bond_generator_impl_8h-source.html b/docs/source_docs/files/_nv_blast_ext_authoring_bond_generator_impl_8h-source.html
index 7e8d00a..c46a337 100755
--- a/docs/source_docs/files/_nv_blast_ext_authoring_bond_generator_impl_8h-source.html
+++ b/docs/source_docs/files/_nv_blast_ext_authoring_bond_generator_impl_8h-source.html
@@ -109,39 +109,40 @@
<a name="l00075"></a>00075
<a name="l00076"></a>00076
<a name="l00077"></a>00077 <span class="keyword">private</span>:
-<a name="l00078"></a>00078 <span class="keywordtype">float</span> processWithMidplanes(<a class="code" href="class_nv_1_1_blast_1_1_triangle_processor.html">TriangleProcessor</a>* trProcessor, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* mA, uint32_t mavc, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* mB, uint32_t mbvc,
-<a name="l00079"></a>00079 <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull1p, <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull2p, physx::PxVec3&amp; <a class="code" href="namespace_nv_1_1_blast_1_1_vec_math.html#1c8d1bbcf531b04e6ff52f5357987794">normal</a>, physx::PxVec3&amp; centroid, <span class="keywordtype">float</span> maxSeparation);
-<a name="l00080"></a>00080
-<a name="l00081"></a>00081 int32_t createFullBondListAveraged( uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>** chunkHulls,
-<a name="l00082"></a>00082 <span class="keyword">const</span> <span class="keywordtype">bool</span>* supportFlags, <span class="keyword">const</span> uint32_t* meshGroups, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf, std::set&lt;std::pair&lt;uint32_t, uint32_t&gt; &gt;* pairNotToTest = <span class="keyword">nullptr</span>);
-<a name="l00083"></a>00083 int32_t createFullBondListExact( uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,
-<a name="l00084"></a>00084 <span class="keyword">const</span> <span class="keywordtype">bool</span>* supportFlags, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf);
-<a name="l00085"></a>00085 int32_t createFullBondListExactInternal(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,
-<a name="l00086"></a>00086 std::vector&lt;PlaneChunkIndexer&gt;&amp; planeTriangleMapping , <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs);
-<a name="l00087"></a>00087 int32_t createBondForcedInternal( <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull0, <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull1,<span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>&amp; cHull0,
-<a name="l00088"></a>00088 <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>&amp; cHull1, physx::PxBounds3 bound0, physx::PxBounds3 bound1, <a class="code" href="struct_nv_blast_bond.html">NvBlastBond</a>&amp; resultBond, <span class="keywordtype">float</span> overlapping);
-<a name="l00089"></a>00089
-<a name="l00090"></a>00090 <span class="keywordtype">void</span> buildGeometryCache(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry);
-<a name="l00091"></a>00091 <span class="keywordtype">void</span> resetGeometryCache();
-<a name="l00092"></a>00092
-<a name="l00093"></a>00093 physx::PxCooking* mPxCooking;
-<a name="l00094"></a>00094 physx::PxPhysicsInsertionCallback* mPxInsertionCallback;
-<a name="l00095"></a>00095
+<a name="l00078"></a>00078 <span class="keywordtype">float</span> processWithMidplanes(<a class="code" href="class_nv_1_1_blast_1_1_triangle_processor.html">TriangleProcessor</a>* trProcessor, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* mA, uint32_t mavc, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* mB, uint32_t mbvc, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>* hull1, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>* hull2,
+<a name="l00079"></a>00079 <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull1p, <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull2p,
+<a name="l00080"></a>00080 physx::PxVec3&amp; <a class="code" href="namespace_nv_1_1_blast_1_1_vec_math.html#1c8d1bbcf531b04e6ff52f5357987794">normal</a>, physx::PxVec3&amp; centroid, <span class="keywordtype">float</span> maxSeparation);
+<a name="l00081"></a>00081
+<a name="l00082"></a>00082 int32_t createFullBondListAveraged( uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>** chunkHulls,
+<a name="l00083"></a>00083 <span class="keyword">const</span> <span class="keywordtype">bool</span>* supportFlags, <span class="keyword">const</span> uint32_t* meshGroups, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf, std::set&lt;std::pair&lt;uint32_t, uint32_t&gt; &gt;* pairNotToTest = <span class="keyword">nullptr</span>);
+<a name="l00084"></a>00084 int32_t createFullBondListExact( uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,
+<a name="l00085"></a>00085 <span class="keyword">const</span> <span class="keywordtype">bool</span>* supportFlags, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf);
+<a name="l00086"></a>00086 int32_t createFullBondListExactInternal(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,
+<a name="l00087"></a>00087 std::vector&lt;PlaneChunkIndexer&gt;&amp; planeTriangleMapping , <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs);
+<a name="l00088"></a>00088 int32_t createBondForcedInternal( <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull0, <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull1,<span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>&amp; cHull0,
+<a name="l00089"></a>00089 <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>&amp; cHull1, physx::PxBounds3 bound0, physx::PxBounds3 bound1, <a class="code" href="struct_nv_blast_bond.html">NvBlastBond</a>&amp; resultBond, <span class="keywordtype">float</span> overlapping);
+<a name="l00090"></a>00090
+<a name="l00091"></a>00091 <span class="keywordtype">void</span> buildGeometryCache(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry);
+<a name="l00092"></a>00092 <span class="keywordtype">void</span> resetGeometryCache();
+<a name="l00093"></a>00093
+<a name="l00094"></a>00094 physx::PxCooking* mPxCooking;
+<a name="l00095"></a>00095 physx::PxPhysicsInsertionCallback* mPxInsertionCallback;
<a name="l00096"></a>00096
-<a name="l00097"></a>00097 std::vector&lt;std::vector&lt;Triangle&gt; &gt; mGeometryCache;
-<a name="l00098"></a>00098
-<a name="l00099"></a>00099 std::vector&lt;PlaneChunkIndexer&gt; mPlaneCache;
-<a name="l00100"></a>00100 std::vector&lt;CollisionHull*&gt; mCHullCache;
-<a name="l00101"></a>00101 std::vector&lt;std::vector&lt;physx::PxVec3&gt; &gt; mHullsPointsCache;
-<a name="l00102"></a>00102 std::vector&lt;physx::PxBounds3 &gt; mBoundsCache;
-<a name="l00103"></a>00103
+<a name="l00097"></a>00097
+<a name="l00098"></a>00098 std::vector&lt;std::vector&lt;Triangle&gt; &gt; mGeometryCache;
+<a name="l00099"></a>00099
+<a name="l00100"></a>00100 std::vector&lt;PlaneChunkIndexer&gt; mPlaneCache;
+<a name="l00101"></a>00101 std::vector&lt;CollisionHull*&gt; mCHullCache;
+<a name="l00102"></a>00102 std::vector&lt;std::vector&lt;physx::PxVec3&gt; &gt; mHullsPointsCache;
+<a name="l00103"></a>00103 std::vector&lt;physx::PxBounds3 &gt; mBoundsCache;
<a name="l00104"></a>00104
-<a name="l00105"></a>00105 };
-<a name="l00106"></a>00106
-<a name="l00107"></a>00107 } <span class="comment">// namespace Blast</span>
-<a name="l00108"></a>00108 } <span class="comment">// namespace Nv</span>
-<a name="l00109"></a>00109
-<a name="l00110"></a>00110 <span class="preprocessor">#endif // NVBLASTEXTAUTHORINGBONDGENERATORIMPL_H</span>
+<a name="l00105"></a>00105
+<a name="l00106"></a>00106 };
+<a name="l00107"></a>00107
+<a name="l00108"></a>00108 } <span class="comment">// namespace Blast</span>
+<a name="l00109"></a>00109 } <span class="comment">// namespace Nv</span>
+<a name="l00110"></a>00110
+<a name="l00111"></a>00111 <span class="preprocessor">#endif // NVBLASTEXTAUTHORINGBONDGENERATORIMPL_H</span>
</pre></div></div>
<!-- start footer part -->
<div class="footer">
diff --git a/docs/source_docs/files/_nv_blast_ext_authoring_bond_generator_impl_8h_source.html b/docs/source_docs/files/_nv_blast_ext_authoring_bond_generator_impl_8h_source.html
index ad4af96..a208923 100755
--- a/docs/source_docs/files/_nv_blast_ext_authoring_bond_generator_impl_8h_source.html
+++ b/docs/source_docs/files/_nv_blast_ext_authoring_bond_generator_impl_8h_source.html
@@ -46,7 +46,7 @@ $(document).ready(function(){initNavTree('_nv_blast_ext_authoring_bond_generator
<div class="title">NvBlastExtAuthoringBondGeneratorImpl.h</div> </div>
</div><!--header-->
<div class="contents">
-<a href="_nv_blast_ext_authoring_bond_generator_impl_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">// This code contains NVIDIA Confidential Information and is disclosed to you</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">// under a form of NVIDIA software license agreement provided separately to you.</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">// Notice</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment">// NVIDIA Corporation and its licensors retain all intellectual property and</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">// proprietary rights in and to this software and related documentation and</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment">// any modifications thereto. Any use, reproduction, disclosure, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment">// distribution of this software and related documentation without an express</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">// license agreement from NVIDIA Corporation is strictly prohibited.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment">// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED &quot;AS IS.&quot;. NVIDIA MAKES</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment">// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment">// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment">// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment">// Information and code furnished is believed to be accurate and reliable.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment">// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment">// information or for any infringement of patents or other rights of third parties that may</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">// result from its use. No license is granted by implication or otherwise under any patent</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment">// or patent rights of NVIDIA Corporation. Details are subject to change without notice.</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment">// This code supersedes and replaces all information previously supplied.</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment">// NVIDIA Corporation products are not authorized for use as critical</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">// components in life support devices or systems without express written approval of</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// NVIDIA Corporation.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">// Copyright (c) 2018 NVIDIA Corporation. All rights reserved.</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#ifndef NVBLASTEXTAUTHORINGBONDGENERATORIMPL_H</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#define NVBLASTEXTAUTHORINGBONDGENERATORIMPL_H</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_nv_blast_ext_authoring_bond_generator_8h.html">NvBlastExtAuthoringBondGenerator.h</a>&quot;</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_nv_blast_ext_authoring_fracture_tool_8h.html">NvBlastExtAuthoringFractureTool.h</a>&quot;</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &quot;../cooking/PxCooking.h&quot;</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &lt;PxPlane.h&gt;</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="_nv_blast_ext_authoring_collision_builder_8h.html">NvBlastExtAuthoringCollisionBuilder.h</a>&gt;</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;set&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespace_nv.html">Nv</a></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;{</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">namespace </span>Blast</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;{</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html"> 49</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html">BlastBondGeneratorImpl</a> : <span class="keyword">public</span> <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator.html">BlastBondGenerator</a></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;{</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">public</span>: </div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; </div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a1af682e9c503ff6f1a9dd25621c94163"> 53</a></span>&#160; <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a1af682e9c503ff6f1a9dd25621c94163">BlastBondGeneratorImpl</a>(physx::PxCooking* cooking, physx::PxPhysicsInsertionCallback* insertionCallback) </div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; : mPxCooking(cooking), mPxInsertionCallback(insertionCallback) {};</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#ac0deb96a81bd1db34ad1ef2f8623d64e">release</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">virtual</span> int32_t <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a288e9d9a7c1bcb10e15f6f3ec90ef53a">buildDescFromInternalFracture</a>(<a class="code" href="class_nv_1_1_blast_1_1_fracture_tool.html">FractureTool</a>* tool, <span class="keyword">const</span> <span class="keywordtype">bool</span>* chunkIsSupport,</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <a class="code" href="struct_nv_blast_chunk_desc.html">NvBlastChunkDesc</a>*&amp; resultChunkDescriptors) <span class="keyword">override</span>;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">virtual</span> int32_t <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a0d06aa62402161f1197fe1dad4801cb1">createBondBetweenMeshes</a>(uint32_t meshACount, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* meshA, uint32_t meshBCount, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* meshB,</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="struct_nv_blast_bond.html">NvBlastBond</a>&amp; resultBond, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf) <span class="keyword">override</span>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">virtual</span> int32_t <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a0d06aa62402161f1197fe1dad4801cb1">createBondBetweenMeshes</a>(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; uint32_t overlapsCount, <span class="keyword">const</span> uint32_t* overlapsA, <span class="keyword">const</span> uint32_t* overlapsB,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBond, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> cfg) <span class="keyword">override</span>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">virtual</span> int32_t <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a97fd9b746597ec923e2376387188a06e">bondsFromPrefractured</a>(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span>* chunkIsSupport, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs,</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf) <span class="keyword">override</span>;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">virtual</span> int32_t <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a97fd9b746597ec923e2376387188a06e">bondsFromPrefractured</a>(uint32_t meshCount, <span class="keyword">const</span> uint32_t* convexHullOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>** chunkHulls,</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span>* chunkIsSupport, <span class="keyword">const</span> uint32_t* meshGroups, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <span class="keywordtype">float</span> maxSeparation) <span class="keyword">override</span>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">float</span> processWithMidplanes(<a class="code" href="class_nv_1_1_blast_1_1_triangle_processor.html">TriangleProcessor</a>* trProcessor, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* mA, uint32_t mavc, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* mB, uint32_t mbvc,</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull1p, <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull2p, physx::PxVec3&amp; <a class="code" href="namespace_nv_1_1_blast_1_1_vec_math.html#a1c8d1bbcf531b04e6ff52f5357987794">normal</a>, physx::PxVec3&amp; centroid, <span class="keywordtype">float</span> maxSeparation);</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; int32_t createFullBondListAveraged( uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>** chunkHulls,</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span>* supportFlags, <span class="keyword">const</span> uint32_t* meshGroups, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf, std::set&lt;std::pair&lt;uint32_t, uint32_t&gt; &gt;* pairNotToTest = <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; int32_t createFullBondListExact( uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span>* supportFlags, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf);</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; int32_t createFullBondListExactInternal(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; std::vector&lt;PlaneChunkIndexer&gt;&amp; planeTriangleMapping , <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs);</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; int32_t createBondForcedInternal( <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull0, <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull1,<span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>&amp; cHull0, </div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>&amp; cHull1, physx::PxBounds3 bound0, physx::PxBounds3 bound1, <a class="code" href="struct_nv_blast_bond.html">NvBlastBond</a>&amp; resultBond, <span class="keywordtype">float</span> overlapping);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordtype">void</span> buildGeometryCache(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry);</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordtype">void</span> resetGeometryCache();</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; physx::PxCooking* mPxCooking;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; physx::PxPhysicsInsertionCallback* mPxInsertionCallback;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; std::vector&lt;std::vector&lt;Triangle&gt; &gt; mGeometryCache;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; std::vector&lt;PlaneChunkIndexer&gt; mPlaneCache;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; std::vector&lt;CollisionHull*&gt; mCHullCache;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; std::vector&lt;std::vector&lt;physx::PxVec3&gt; &gt; mHullsPointsCache;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; std::vector&lt;physx::PxBounds3 &gt; mBoundsCache;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;};</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;} <span class="comment">// namespace Blast</span></div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;} <span class="comment">// namespace Nv</span></div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;</div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor">#endif // NVBLASTEXTAUTHORINGBONDGENERATORIMPL_H</span></div><div class="ttc" id="struct_nv_blast_bond_html"><div class="ttname"><a href="struct_nv_blast_bond.html">NvBlastBond</a></div><div class="ttdef"><b>Definition:</b> NvBlastTypes.h:189</div></div>
+<a href="_nv_blast_ext_authoring_bond_generator_impl_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">// This code contains NVIDIA Confidential Information and is disclosed to you</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">// under a form of NVIDIA software license agreement provided separately to you.</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment">// Notice</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment">// NVIDIA Corporation and its licensors retain all intellectual property and</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment">// proprietary rights in and to this software and related documentation and</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment">// any modifications thereto. Any use, reproduction, disclosure, or</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment">// distribution of this software and related documentation without an express</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment">// license agreement from NVIDIA Corporation is strictly prohibited.</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment">// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED &quot;AS IS.&quot;. NVIDIA MAKES</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment">// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment">// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment">// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment">// Information and code furnished is believed to be accurate and reliable.</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment">// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment">// information or for any infringement of patents or other rights of third parties that may</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment">// result from its use. No license is granted by implication or otherwise under any patent</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment">// or patent rights of NVIDIA Corporation. Details are subject to change without notice.</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment">// This code supersedes and replaces all information previously supplied.</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment">// NVIDIA Corporation products are not authorized for use as critical</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment">// components in life support devices or systems without express written approval of</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment">// NVIDIA Corporation.</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment">//</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment">// Copyright (c) 2018 NVIDIA Corporation. All rights reserved.</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#ifndef NVBLASTEXTAUTHORINGBONDGENERATORIMPL_H</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#define NVBLASTEXTAUTHORINGBONDGENERATORIMPL_H</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_nv_blast_ext_authoring_bond_generator_8h.html">NvBlastExtAuthoringBondGenerator.h</a>&quot;</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_nv_blast_ext_authoring_fracture_tool_8h.html">NvBlastExtAuthoringFractureTool.h</a>&quot;</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &quot;../cooking/PxCooking.h&quot;</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &lt;PxPlane.h&gt;</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="_nv_blast_ext_authoring_collision_builder_8h.html">NvBlastExtAuthoringCollisionBuilder.h</a>&gt;</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;vector&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#include &lt;set&gt;</span></div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespace_nv.html">Nv</a></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;{</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keyword">namespace </span>Blast</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;{</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;</div><div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html"> 49</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html">BlastBondGeneratorImpl</a> : <span class="keyword">public</span> <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator.html">BlastBondGenerator</a></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;{</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">public</span>: </div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; </div><div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a1af682e9c503ff6f1a9dd25621c94163"> 53</a></span>&#160; <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a1af682e9c503ff6f1a9dd25621c94163">BlastBondGeneratorImpl</a>(physx::PxCooking* cooking, physx::PxPhysicsInsertionCallback* insertionCallback) </div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; : mPxCooking(cooking), mPxInsertionCallback(insertionCallback) {};</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#ac0deb96a81bd1db34ad1ef2f8623d64e">release</a>() <span class="keyword">override</span>;</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">virtual</span> int32_t <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a288e9d9a7c1bcb10e15f6f3ec90ef53a">buildDescFromInternalFracture</a>(<a class="code" href="class_nv_1_1_blast_1_1_fracture_tool.html">FractureTool</a>* tool, <span class="keyword">const</span> <span class="keywordtype">bool</span>* chunkIsSupport,</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <a class="code" href="struct_nv_blast_chunk_desc.html">NvBlastChunkDesc</a>*&amp; resultChunkDescriptors) <span class="keyword">override</span>;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">virtual</span> int32_t <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a0d06aa62402161f1197fe1dad4801cb1">createBondBetweenMeshes</a>(uint32_t meshACount, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* meshA, uint32_t meshBCount, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* meshB,</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="struct_nv_blast_bond.html">NvBlastBond</a>&amp; resultBond, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf) <span class="keyword">override</span>;</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">virtual</span> int32_t <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a0d06aa62402161f1197fe1dad4801cb1">createBondBetweenMeshes</a>(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; uint32_t overlapsCount, <span class="keyword">const</span> uint32_t* overlapsA, <span class="keyword">const</span> uint32_t* overlapsB,</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBond, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> cfg) <span class="keyword">override</span>;</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keyword">virtual</span> int32_t <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a97fd9b746597ec923e2376387188a06e">bondsFromPrefractured</a>(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span>* chunkIsSupport, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs,</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf) <span class="keyword">override</span>;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keyword">virtual</span> int32_t <a class="code" href="class_nv_1_1_blast_1_1_blast_bond_generator_impl.html#a97fd9b746597ec923e2376387188a06e">bondsFromPrefractured</a>(uint32_t meshCount, <span class="keyword">const</span> uint32_t* convexHullOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>** chunkHulls,</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span>* chunkIsSupport, <span class="keyword">const</span> uint32_t* meshGroups, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <span class="keywordtype">float</span> maxSeparation) <span class="keyword">override</span>;</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; </div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keyword">private</span>:</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordtype">float</span> processWithMidplanes(<a class="code" href="class_nv_1_1_blast_1_1_triangle_processor.html">TriangleProcessor</a>* trProcessor, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* mA, uint32_t mavc, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* mB, uint32_t mbvc, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>* hull1, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>* hull2,</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull1p, <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull2p,</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; physx::PxVec3&amp; <a class="code" href="namespace_nv_1_1_blast_1_1_vec_math.html#a1c8d1bbcf531b04e6ff52f5357987794">normal</a>, physx::PxVec3&amp; centroid, <span class="keywordtype">float</span> maxSeparation);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; int32_t createFullBondListAveraged( uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>** chunkHulls,</div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span>* supportFlags, <span class="keyword">const</span> uint32_t* meshGroups, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf, std::set&lt;std::pair&lt;uint32_t, uint32_t&gt; &gt;* pairNotToTest = <span class="keyword">nullptr</span>);</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; int32_t createFullBondListExact( uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span>* supportFlags, <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs, <a class="code" href="struct_nv_1_1_blast_1_1_bond_generation_config.html">BondGenerationConfig</a> conf);</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; int32_t createFullBondListExactInternal(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry,</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; std::vector&lt;PlaneChunkIndexer&gt;&amp; planeTriangleMapping , <a class="code" href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a>*&amp; resultBondDescs);</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; int32_t createBondForcedInternal( <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull0, <span class="keyword">const</span> std::vector&lt;physx::PxVec3&gt;&amp; hull1,<span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>&amp; cHull0, </div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_collision_hull.html">CollisionHull</a>&amp; cHull1, physx::PxBounds3 bound0, physx::PxBounds3 bound1, <a class="code" href="struct_nv_blast_bond.html">NvBlastBond</a>&amp; resultBond, <span class="keywordtype">float</span> overlapping);</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordtype">void</span> buildGeometryCache(uint32_t meshCount, <span class="keyword">const</span> uint32_t* geometryOffset, <span class="keyword">const</span> <a class="code" href="struct_nv_1_1_blast_1_1_triangle.html">Triangle</a>* geometry);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordtype">void</span> resetGeometryCache();</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; physx::PxCooking* mPxCooking;</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; physx::PxPhysicsInsertionCallback* mPxInsertionCallback;</div><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; std::vector&lt;std::vector&lt;Triangle&gt; &gt; mGeometryCache;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; std::vector&lt;PlaneChunkIndexer&gt; mPlaneCache;</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; std::vector&lt;CollisionHull*&gt; mCHullCache;</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; std::vector&lt;std::vector&lt;physx::PxVec3&gt; &gt; mHullsPointsCache;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; std::vector&lt;physx::PxBounds3 &gt; mBoundsCache;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;};</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;} <span class="comment">// namespace Blast</span></div><div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;} <span class="comment">// namespace Nv</span></div><div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;</div><div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor">#endif // NVBLASTEXTAUTHORINGBONDGENERATORIMPL_H</span></div><div class="ttc" id="struct_nv_blast_bond_html"><div class="ttname"><a href="struct_nv_blast_bond.html">NvBlastBond</a></div><div class="ttdef"><b>Definition:</b> NvBlastTypes.h:189</div></div>
<div class="ttc" id="namespace_nv_1_1_blast_1_1_vec_math_html_a1c8d1bbcf531b04e6ff52f5357987794"><div class="ttname"><a href="namespace_nv_1_1_blast_1_1_vec_math.html#a1c8d1bbcf531b04e6ff52f5357987794">Nv::Blast::VecMath::normal</a></div><div class="ttdeci">NV_INLINE float normal(const float a[3], float r[3])</div><div class="ttdef"><b>Definition:</b> NvBlastMath.h:93</div></div>
<div class="ttc" id="struct_nv_blast_bond_desc_html"><div class="ttname"><a href="struct_nv_blast_bond_desc.html">NvBlastBondDesc</a></div><div class="ttdef"><b>Definition:</b> NvBlastTypes.h:322</div></div>
<div class="ttc" id="class_nv_1_1_blast_1_1_fracture_tool_html"><div class="ttname"><a href="class_nv_1_1_blast_1_1_fracture_tool.html">Nv::Blast::FractureTool</a></div><div class="ttdef"><b>Definition:</b> NvBlastExtAuthoringFractureTool.h:248</div></div>