From 236f03c0b9a4982328ed1201978f7f69d192d9b2 Mon Sep 17 00:00:00 2001 From: Anton Novoselov Date: Tue, 1 Aug 2017 12:53:38 +0300 Subject: Blast 1.1 release (windows / linux) see docs/release_notes.txt for details --- docs/api_docs/files/_nv_blast_8h.html | 185 ++++++++++++++++++++++++++++++++-- 1 file changed, 175 insertions(+), 10 deletions(-) (limited to 'docs/api_docs/files/_nv_blast_8h.html') diff --git a/docs/api_docs/files/_nv_blast_8h.html b/docs/api_docs/files/_nv_blast_8h.html index ef32328..a4e5ddc 100644 --- a/docs/api_docs/files/_nv_blast_8h.html +++ b/docs/api_docs/files/_nv_blast_8h.html @@ -1,6 +1,6 @@ - NVIDIA(R) Blast(R) SDK 1.0 API Reference: sdk/lowlevel/include/NvBlast.h File Reference + NVIDIA(R) Blast(R) SDK 1.1 API Reference: sdk/lowlevel/include/NvBlast.h File Reference @@ -37,6 +37,10 @@ size_t NvBlastActorGetRequiredScratchForSplit (const NvBlastActor *actor, NvBlastLog logFn) +bool NvBlastActorIsBoundToWorld (const NvBlastActor *actor, NvBlastLog logFn) + +bool NvBlastActorIsSplitRequired (const NvBlastActor *actor, NvBlastLog logFn) + uint32_t NvBlastActorSplit (NvBlastActorSplitEvent *result, NvBlastActor *actor, uint32_t newActorsMaxCount, void *scratch, NvBlastLog logFn, NvBlastTimers *timers)
@@ -61,15 +65,15 @@ uint32_t NvBlastActorSerialize (void *buffer, uint32_t bufferSize, const NvBlastActor *actor, NvBlastLog logFn)
-void NvBlastApplyAssetDescChunkReorderMap (NvBlastChunkDesc *reorderedChunkDescs, const NvBlastChunkDesc *chunkDescs, uint32_t chunkCount, NvBlastBondDesc *bondDescs, uint32_t bondCount, const uint32_t *chunkReorderMap, NvBlastLog logFn) +void NvBlastApplyAssetDescChunkReorderMap (NvBlastChunkDesc *reorderedChunkDescs, const NvBlastChunkDesc *chunkDescs, uint32_t chunkCount, NvBlastBondDesc *bondDescs, uint32_t bondCount, const uint32_t *chunkReorderMap, bool keepBondNormalChunkOrder, NvBlastLog logFn) -void NvBlastApplyAssetDescChunkReorderMapInplace (NvBlastChunkDesc *chunkDescs, uint32_t chunkCount, NvBlastBondDesc *bondDescs, uint32_t bondCount, const uint32_t *chunkReorderMap, void *scratch, NvBlastLog logFn) +void NvBlastApplyAssetDescChunkReorderMapInPlace (NvBlastChunkDesc *chunkDescs, uint32_t chunkCount, NvBlastBondDesc *bondDescs, uint32_t bondCount, const uint32_t *chunkReorderMap, bool keepBondNormalChunkOrder, void *scratch, NvBlastLog logFn) bool NvBlastBuildAssetDescChunkReorderMap (uint32_t *chunkReorderMap, const NvBlastChunkDesc *chunkDescs, uint32_t chunkCount, void *scratch, NvBlastLog logFn) bool NvBlastEnsureAssetExactSupportCoverage (NvBlastChunkDesc *chunkDescs, uint32_t chunkCount, void *scratch, NvBlastLog logFn) -bool NvBlastReorderAssetDescChunks (NvBlastChunkDesc *chunkDescs, uint32_t chunkCount, NvBlastBondDesc *bondDescs, uint32_t bondCount, uint32_t *chunkReorderMap, void *scratch, NvBlastLog logFn) +bool NvBlastReorderAssetDescChunks (NvBlastChunkDesc *chunkDescs, uint32_t chunkCount, NvBlastBondDesc *bondDescs, uint32_t bondCount, uint32_t *chunkReorderMap, bool keepBondNormalChunkOrder, void *scratch, NvBlastLog logFn)
NvBlastFamilyNvBlastAssetCreateFamily (void *mem, const NvBlastAsset *asset, NvBlastLog logFn) @@ -98,6 +102,8 @@ uint32_t NvBlastAssetGetSize (const NvBlastAsset *asset, NvBlastLog logFn) +uint32_t NvBlastAssetGetSupportChunkCount (const NvBlastAsset *asset, NvBlastLog logFn) + const NvBlastSupportGraph NvBlastAssetGetSupportGraph (const NvBlastAsset *asset, NvBlastLog logFn) bool NvBlastAssetSetID (NvBlastAsset *asset, const NvBlastID *id, NvBlastLog logFn) @@ -117,6 +123,8 @@ uint32_t NvBlastFamilyGetActors (NvBlastActor **actors, uint32_t actorsSize, const NvBlastFamily *family, NvBlastLog logFn) +const NvBlastAssetNvBlastFamilyGetAsset (const NvBlastFamily *family, NvBlastLog logFn) + NvBlastID NvBlastFamilyGetAssetID (const NvBlastFamily *family, NvBlastLog logFn) NvBlastActorNvBlastFamilyGetChunkActor (const NvBlastFamily *family, uint32_t chunkIndex, NvBlastLog logFn) @@ -738,6 +746,68 @@ Retrieve a list of visible chunk indices for the actor into the given array.

Returns:
the number of indices written to visibleChunkIndices. This will not exceed visibleChunkIndicesSize.
+ +

+ +

+
+ + + + + + + + + + + + + + + + + + +
bool NvBlastActorIsBoundToWorld (const NvBlastActor actor,
NvBlastLog  logFn 
)
+
+
+ +

+

Returns:
true iff this actor contains the "world" support graph node, created when a bond contains the UINT32_MAX value for one of their chunkIndices.
+ +
+

+ +

+
+ + + + + + + + + + + + + + + + + + +
bool NvBlastActorIsSplitRequired (const NvBlastActor actor,
NvBlastLog  logFn 
)
+
+
+ +

+Determines if the actor is damaged (was fractured) and split call is required.

+The actor could be damaged by calling NvBlastActorApplyFracture or NvBlastFamilyApplyFracture and NvBlastActorSplit is expected after. This function gives a hint that NvBlastActorSplit will have some work to be done and actor could potentially be split. If actor is not damaged calling NvBlastActorSplit will make no effect.

+

Returns:
true iff split call is required for this actor.
+

@@ -857,7 +927,7 @@ Releases the oldActor and creates its children newActors if necessary.

- +

@@ -897,6 +967,12 @@ Releases the oldActor and creates its children newActors if necessary.

+ + + + + + @@ -924,18 +1000,19 @@ Function applies reorder map on [in]  +
const uint32_t *  chunkReorderMap,
bool  keepBondNormalChunkOrder,
bondDescs Array of bond descriptors of size chunkCount. It will be updated accordingly.
[in] bondCount The number of bond descriptors.
[in] chunkReorderMap Chunk reorder map to use, must be of size chunkCount.
[in] keepBondNormalChunkOrder If true, bond normals will be flipped if their chunk index order was reveresed by the reorder map.
[in] logFn User-supplied message function (see NvBlastLog definition). May be NULL.

- +

- + @@ -964,6 +1041,12 @@ Function applies reorder map on const uint32_t *  + + + + + + @@ -997,6 +1080,7 @@ This overload of function reorders chunks in place.

+
void NvBlastApplyAssetDescChunkReorderMapInplace void NvBlastApplyAssetDescChunkReorderMapInPlace ( NvBlastChunkDesc chunkDescs, chunkReorderMap,
bool  keepBondNormalChunkOrder,
[in] bondDescs Array of bond descriptors of size chunkCount. It will be updated accordingly.
[in] bondCount The number of bond descriptors.
[in] chunkReorderMap Chunk reorder map to use, must be of size chunkCount.
[in] keepBondNormalChunkOrder If true, bond normals will be flipped if their chunk index order was reveresed by the reorder map.
[in] scratch User-supplied scratch storage, must point to chunkCount * sizeof(NvBlastChunkDesc) valid bytes of memory.
[in] logFn User-supplied message function (see NvBlastLog definition). May be NULL.
@@ -1378,7 +1462,7 @@ Retrieve the data format version for the given asset

[in] logFn User-supplied message function (see NvBlastLog definition). May be NULL. -

Returns:
the data format version (NvBlastAssetDataFormat).
+
Returns:
the data format version (NvBlastAssetDataFormat).

@@ -1491,6 +1575,43 @@ Retrieve the memory size (in bytes) of the given data asset

Returns:
the memory size of the asset (in bytes).
+ +

+ +

+
+ + + + + + + + + + + + + + + + + + +
uint32_t NvBlastAssetGetSupportChunkCount (const NvBlastAsset asset,
NvBlastLog  logFn 
)
+
+
+ +

+Get the number of support chunks in the given asset. This will equal the number of graph nodes in NvBlastSupportGraph::nodeCount returned by NvBlastAssetGetSupportGraph only if no extra "world" node was created due to bonds defined between support chunks and the world. If such bonds were created, then there is an extra graph node representing the world, and this function will return NvBlastSupportGraph::nodeCount - 1.

+

Parameters:
+ + + +
[in] asset The asset.
[in] logFn User-supplied message function (see NvBlastLog definition). May be NULL.
+
+
Returns:
the number of chunks in the asset.
+

@@ -1620,7 +1741,7 @@ Set an asset's ID

Build chunk reorder map.

NvBlastCreateAsset function requires NvBlastChunkDesc array to be in correct oder:

-1. Root chunks (chunks with invalid parent index) must be first in the asset's chunk list. 2. Chunks in the asset should be arranged such that sibling chunks (chunks with the same parent) are contiguous. 3. Chunks are also should be arranged such that upper-support chunks (support chunks and their parent chunks) should go first in chunk list.

+1. Root chunks (chunks with invalid parent index) must be first in the asset's chunk list. 2. Chunks in the asset must be arranged such that sibling chunks (chunks with the same parent) are contiguous. 3. Chunks must be arranged such that upper-support chunks (support chunks and their parent chunks) go first in chunk list.

This function builds chunk reorder map which can be used to order chunk descs. Reordering chunk's descriptors according to generated map places them in correct order for NvBlastCreateAsset to succeed.

Iff chunks are already ordered correctly, function returns 'true' and identity chunk reorder map. Otherwise 'false' is returned.

Parameters:
@@ -1925,6 +2046,43 @@ Retrieve the active actors associated with the given family.

Returns:
the number of actor pointers written to actors. This will not exceed actorsSize.
+ +

+ +

+
+ + + + + + + + + + + + + + + + + + +
const NvBlastAsset* NvBlastFamilyGetAsset (const NvBlastFamily family,
NvBlastLog  logFn 
)
+
+
+ +

+Retrieve the asset of the given family.

+

Parameters:
+ + + +
[in] family The family.
[in] logFn User-supplied message function (see NvBlastLog definition). May be NULL.
+
+
Returns:
pointer to the asset associated with the family.
+

@@ -2273,7 +2431,7 @@ Returns the number of bytes of scratch memory that the user must supply to NvBla

- +

@@ -2307,6 +2465,12 @@ Returns the number of bytes of scratch memory that the user must supply to NvBla + + + + + + @@ -2338,6 +2502,7 @@ Function basically calls NvBlastBuildAssetDescChunkReorderMap and NvBlastApplyAs +
uint32_t *  chunkReorderMap,
bool  keepBondNormalChunkOrder,
[in] bondDescs Array of bond descriptors of size chunkCount. It will be updated accordingly.
[in] bondCount The number of bond descriptors.
[in] chunkReorderMap Chunk reorder map to fill, must be of size chunkCount.
[in] keepBondNormalChunkOrder If true, bond normals will be flipped if their chunk index order was reveresed by the reorder map.
[in] scratch User-supplied scratch storage, must point to chunkCount * sizeof(NvBlastChunkDesc) valid bytes of memory.
[in] logFn User-supplied message function (see NvBlastLog definition). May be NULL.
-- cgit v1.2.3