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/source_docs/files/_nv_blast_8h-source.html | 485 +++++++++++++----------- 1 file changed, 268 insertions(+), 217 deletions(-) (limited to 'docs/source_docs/files/_nv_blast_8h-source.html') diff --git a/docs/source_docs/files/_nv_blast_8h-source.html b/docs/source_docs/files/_nv_blast_8h-source.html index 76d776e..121ba7d 100644 --- a/docs/source_docs/files/_nv_blast_8h-source.html +++ b/docs/source_docs/files/_nv_blast_8h-source.html @@ -1,6 +1,6 @@ - NVIDIA(R) Blast(R) SDK 1.0 Source Reference: sdk/lowlevel/include/NvBlast.h Source File + NVIDIA(R) Blast(R) SDK 1.1 Source Reference: sdk/lowlevel/include/NvBlast.h Source File @@ -35,230 +35,281 @@
  • File Members
  • -

    sdk/lowlevel/include/NvBlast.h

    Go to the documentation of this file.
    00001 /*
    -00002 * Copyright (c) 2016-2017, NVIDIA CORPORATION.  All rights reserved.
    -00003 *
    -00004 * NVIDIA CORPORATION and its licensors retain all intellectual property
    -00005 * and proprietary rights in and to this software, related documentation
    -00006 * and any modifications thereto.  Any use, reproduction, disclosure or
    -00007 * distribution of this software and related documentation without an express
    -00008 * license agreement from NVIDIA CORPORATION is strictly prohibited.
    -00009 */
    -00010 
    -00011 #ifndef NVBLAST_H
    -00012 #define NVBLAST_H
    -00013 
    -00014 
    -00015 #include "NvBlastTypes.h"
    -00016 
    -00017 
    -00019 //  NvBlastAsset functions
    -00022 
    -00032 NVBLAST_API size_t NvBlastGetAssetMemorySize(const NvBlastAssetDesc* desc, NvBlastLog logFn);
    -00033 
    +

    sdk/lowlevel/include/NvBlast.h

    Go to the documentation of this file.
    00001 // This code contains NVIDIA Confidential Information and is disclosed to you
    +00002 // under a form of NVIDIA software license agreement provided separately to you.
    +00003 //
    +00004 // Notice
    +00005 // NVIDIA Corporation and its licensors retain all intellectual property and
    +00006 // proprietary rights in and to this software and related documentation and
    +00007 // any modifications thereto. Any use, reproduction, disclosure, or
    +00008 // distribution of this software and related documentation without an express
    +00009 // license agreement from NVIDIA Corporation is strictly prohibited.
    +00010 //
    +00011 // ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES
    +00012 // NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO
    +00013 // THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT,
    +00014 // MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE.
    +00015 //
    +00016 // Information and code furnished is believed to be accurate and reliable.
    +00017 // However, NVIDIA Corporation assumes no responsibility for the consequences of use of such
    +00018 // information or for any infringement of patents or other rights of third parties that may
    +00019 // result from its use. No license is granted by implication or otherwise under any patent
    +00020 // or patent rights of NVIDIA Corporation. Details are subject to change without notice.
    +00021 // This code supersedes and replaces all information previously supplied.
    +00022 // NVIDIA Corporation products are not authorized for use as critical
    +00023 // components in life support devices or systems without express written approval of
    +00024 // NVIDIA Corporation.
    +00025 //
    +00026 // Copyright (c) 2016-2017 NVIDIA Corporation. All rights reserved.
    +00027 
    +00028 
    +00029 #ifndef NVBLAST_H
    +00030 #define NVBLAST_H
    +00031 
    +00032 
    +00033 #include "NvBlastTypes.h"
     00034 
    -00044 NVBLAST_API size_t NvBlastGetRequiredScratchForCreateAsset(const NvBlastAssetDesc* desc, NvBlastLog logFn);
    -00045 
    -00046 
    -00071 NVBLAST_API NvBlastAsset* NvBlastCreateAsset(void* mem, const NvBlastAssetDesc* desc, void* scratch, NvBlastLog logFn);
    -00072 
    -00073 
    -00083 NVBLAST_API size_t NvBlastAssetGetFamilyMemorySize(const NvBlastAsset* asset, NvBlastLog logFn);
    -00084 
    -00085 
    -00098 NVBLAST_API NvBlastFamily* NvBlastAssetCreateFamily(void* mem, const NvBlastAsset* asset, NvBlastLog logFn);
    -00099 
    -00100 
    -00109 NVBLAST_API NvBlastID NvBlastAssetGetID(const NvBlastAsset* asset, NvBlastLog logFn);
    -00110 
    -00111 
    -00121 NVBLAST_API bool NvBlastAssetSetID(NvBlastAsset* asset, const NvBlastID* id, NvBlastLog logFn);
    -00122 
    -00123 
    -00132 NVBLAST_API uint32_t NvBlastAssetGetFormatVersion(const NvBlastAsset* asset, NvBlastLog logFn);
    -00133 
    -00134 
    -00143 NVBLAST_API uint32_t NvBlastAssetGetSize(const NvBlastAsset* asset, NvBlastLog logFn);
    -00144 
    -00145 
    -00154 NVBLAST_API uint32_t NvBlastAssetGetChunkCount(const NvBlastAsset* asset, NvBlastLog logFn);
    -00155 
    -00156 
    -00165 NVBLAST_API uint32_t NvBlastAssetGetLeafChunkCount(const NvBlastAsset* asset, NvBlastLog logFn);
    -00166 
    -00167 
    -00178 NVBLAST_API uint32_t NvBlastAssetGetFirstSubsupportChunkIndex(const NvBlastAsset* asset, NvBlastLog logFn);
    -00179 
    -00180 
    -00189 NVBLAST_API uint32_t NvBlastAssetGetBondCount(const NvBlastAsset* asset, NvBlastLog logFn);
    -00190 
    -00191 
    -00200 NVBLAST_API const NvBlastSupportGraph NvBlastAssetGetSupportGraph(const NvBlastAsset* asset, NvBlastLog logFn);
    -00201 
    -00202 
    -00213 NVBLAST_API const uint32_t* NvBlastAssetGetChunkToGraphNodeMap(const NvBlastAsset* asset, NvBlastLog logFn);
    -00214 
    -00215 
    -00224 NVBLAST_API const NvBlastChunk* NvBlastAssetGetChunks(const NvBlastAsset* asset, NvBlastLog logFn);
    -00225 
    -00226 
    -00235 NVBLAST_API const NvBlastBond* NvBlastAssetGetBonds(const NvBlastAsset* asset, NvBlastLog logFn);
    -00236 
    -00237 
    -00248 NVBLAST_API uint32_t NvBlastAssetGetActorSerializationSizeUpperBound(const NvBlastAsset* asset, NvBlastLog logFn);
    -00249 
    -00251 
    -00252 
    -00254 //  NvBlastAsset helper functions
    -00257 
    -00274 NVBLAST_API bool NvBlastEnsureAssetExactSupportCoverage(NvBlastChunkDesc* chunkDescs, uint32_t chunkCount, void* scratch, NvBlastLog logFn);
    -00275 
    -00276 
    -00300 NVBLAST_API bool NvBlastBuildAssetDescChunkReorderMap(uint32_t* chunkReorderMap, const NvBlastChunkDesc* chunkDescs, uint32_t chunkCount, void* scratch, NvBlastLog logFn);
    -00301 
    -00302 
    -00319 NVBLAST_API void NvBlastApplyAssetDescChunkReorderMap
    -00320 (
    -00321     NvBlastChunkDesc* reorderedChunkDescs,
    -00322     const NvBlastChunkDesc* chunkDescs,
    -00323     uint32_t chunkCount,
    -00324     NvBlastBondDesc* bondDescs,
    -00325     uint32_t bondCount,
    -00326     const uint32_t* chunkReorderMap,
    -00327     NvBlastLog logFn
    -00328 );
    -00329 
    -00330 
    -00349 NVBLAST_API void NvBlastApplyAssetDescChunkReorderMapInplace(NvBlastChunkDesc* chunkDescs, uint32_t chunkCount, NvBlastBondDesc* bondDescs, uint32_t bondCount, const uint32_t* chunkReorderMap, void* scratch, NvBlastLog logFn);
    -00350 
    -00351 
    -00367 NVBLAST_API bool NvBlastReorderAssetDescChunks(NvBlastChunkDesc* chunkDescs, uint32_t chunkCount, NvBlastBondDesc* bondDescs, uint32_t bondCount, uint32_t* chunkReorderMap, void* scratch, NvBlastLog logFn);
    -00368 
    -00370 
    -00371 
    -00373 //  NvBlastFamily functions
    -00376 
    -00385 NVBLAST_API uint32_t NvBlastFamilyGetFormatVersion(const NvBlastFamily* family, NvBlastLog logFn);
    -00386 
    -00387 
    -00395 NVBLAST_API void NvBlastFamilySetAsset(NvBlastFamily* family, const NvBlastAsset* asset, NvBlastLog logFn);
    +00035 
    +00037 //  NvBlastAsset functions
    +00040 
    +00050 NVBLAST_API size_t NvBlastGetAssetMemorySize(const NvBlastAssetDesc* desc, NvBlastLog logFn);
    +00051 
    +00052 
    +00062 NVBLAST_API size_t NvBlastGetRequiredScratchForCreateAsset(const NvBlastAssetDesc* desc, NvBlastLog logFn);
    +00063 
    +00064 
    +00089 NVBLAST_API NvBlastAsset* NvBlastCreateAsset(void* mem, const NvBlastAssetDesc* desc, void* scratch, NvBlastLog logFn);
    +00090 
    +00091 
    +00101 NVBLAST_API size_t NvBlastAssetGetFamilyMemorySize(const NvBlastAsset* asset, NvBlastLog logFn);
    +00102 
    +00103 
    +00116 NVBLAST_API NvBlastFamily* NvBlastAssetCreateFamily(void* mem, const NvBlastAsset* asset, NvBlastLog logFn);
    +00117 
    +00118 
    +00127 NVBLAST_API NvBlastID NvBlastAssetGetID(const NvBlastAsset* asset, NvBlastLog logFn);
    +00128 
    +00129 
    +00139 NVBLAST_API bool NvBlastAssetSetID(NvBlastAsset* asset, const NvBlastID* id, NvBlastLog logFn);
    +00140 
    +00141 
    +00150 NVBLAST_API uint32_t NvBlastAssetGetFormatVersion(const NvBlastAsset* asset, NvBlastLog logFn);
    +00151 
    +00152 
    +00161 NVBLAST_API uint32_t NvBlastAssetGetSize(const NvBlastAsset* asset, NvBlastLog logFn);
    +00162 
    +00163 
    +00172 NVBLAST_API uint32_t NvBlastAssetGetChunkCount(const NvBlastAsset* asset, NvBlastLog logFn);
    +00173 
    +00174 
    +00187 NVBLAST_API uint32_t NvBlastAssetGetSupportChunkCount(const NvBlastAsset* asset, NvBlastLog logFn);
    +00188 
    +00189 
    +00198 NVBLAST_API uint32_t NvBlastAssetGetLeafChunkCount(const NvBlastAsset* asset, NvBlastLog logFn);
    +00199 
    +00200 
    +00211 NVBLAST_API uint32_t NvBlastAssetGetFirstSubsupportChunkIndex(const NvBlastAsset* asset, NvBlastLog logFn);
    +00212 
    +00213 
    +00222 NVBLAST_API uint32_t NvBlastAssetGetBondCount(const NvBlastAsset* asset, NvBlastLog logFn);
    +00223 
    +00224 
    +00233 NVBLAST_API const NvBlastSupportGraph NvBlastAssetGetSupportGraph(const NvBlastAsset* asset, NvBlastLog logFn);
    +00234 
    +00235 
    +00246 NVBLAST_API const uint32_t* NvBlastAssetGetChunkToGraphNodeMap(const NvBlastAsset* asset, NvBlastLog logFn);
    +00247 
    +00248 
    +00257 NVBLAST_API const NvBlastChunk* NvBlastAssetGetChunks(const NvBlastAsset* asset, NvBlastLog logFn);
    +00258 
    +00259 
    +00268 NVBLAST_API const NvBlastBond* NvBlastAssetGetBonds(const NvBlastAsset* asset, NvBlastLog logFn);
    +00269 
    +00270 
    +00281 NVBLAST_API uint32_t NvBlastAssetGetActorSerializationSizeUpperBound(const NvBlastAsset* asset, NvBlastLog logFn);
    +00282 
    +00284 
    +00285 
    +00287 //  NvBlastAsset helper functions
    +00290 
    +00307 NVBLAST_API bool NvBlastEnsureAssetExactSupportCoverage(NvBlastChunkDesc* chunkDescs, uint32_t chunkCount, void* scratch, NvBlastLog logFn);
    +00308 
    +00309 
    +00333 NVBLAST_API bool NvBlastBuildAssetDescChunkReorderMap(uint32_t* chunkReorderMap, const NvBlastChunkDesc* chunkDescs, uint32_t chunkCount, void* scratch, NvBlastLog logFn);
    +00334 
    +00335 
    +00353 NVBLAST_API void NvBlastApplyAssetDescChunkReorderMap
    +00354 (
    +00355     NvBlastChunkDesc* reorderedChunkDescs,
    +00356     const NvBlastChunkDesc* chunkDescs,
    +00357     uint32_t chunkCount,
    +00358     NvBlastBondDesc* bondDescs,
    +00359     uint32_t bondCount,
    +00360     const uint32_t* chunkReorderMap,
    +00361     bool keepBondNormalChunkOrder,
    +00362     NvBlastLog logFn
    +00363 );
    +00364 
    +00365 
    +00385 NVBLAST_API void NvBlastApplyAssetDescChunkReorderMapInPlace
    +00386 (
    +00387     NvBlastChunkDesc* chunkDescs,
    +00388     uint32_t chunkCount,
    +00389     NvBlastBondDesc* bondDescs,
    +00390     uint32_t bondCount,
    +00391     const uint32_t* chunkReorderMap,
    +00392     bool keepBondNormalChunkOrder,
    +00393     void* scratch,
    +00394     NvBlastLog logFn
    +00395 );
     00396 
     00397 
    -00406 NVBLAST_API uint32_t NvBlastFamilyGetSize(const NvBlastFamily* family, NvBlastLog logFn);
    -00407 
    -00408 
    -00417 NVBLAST_API NvBlastID NvBlastFamilyGetAssetID(const NvBlastFamily* family, NvBlastLog logFn);
    -00418 
    -00419 
    -00428 NVBLAST_API size_t NvBlastFamilyGetRequiredScratchForCreateFirstActor(const NvBlastFamily* family, NvBlastLog logFn);
    -00429 
    -00430 
    -00441 NVBLAST_API NvBlastActor* NvBlastFamilyCreateFirstActor(NvBlastFamily* family, const NvBlastActorDesc* desc, void* scratch, NvBlastLog logFn);
    -00442 
    +00414 NVBLAST_API bool NvBlastReorderAssetDescChunks
    +00415 (
    +00416     NvBlastChunkDesc* chunkDescs,
    +00417     uint32_t chunkCount,
    +00418     NvBlastBondDesc* bondDescs,
    +00419     uint32_t bondCount,
    +00420     uint32_t* chunkReorderMap,
    +00421     bool keepBondNormalChunkOrder,
    +00422     void* scratch,
    +00423     NvBlastLog logFn
    +00424 );
    +00425 
    +00427 
    +00428 
    +00430 //  NvBlastFamily functions
    +00433 
    +00442 NVBLAST_API uint32_t NvBlastFamilyGetFormatVersion(const NvBlastFamily* family, NvBlastLog logFn);
     00443 
    -00452 NVBLAST_API uint32_t NvBlastFamilyGetActorCount(const NvBlastFamily* family, NvBlastLog logFn);
    -00453 
    +00444 
    +00453 NVBLAST_API const NvBlastAsset* NvBlastFamilyGetAsset(const NvBlastFamily* family, NvBlastLog logFn);
     00454 
    -00466 NVBLAST_API NvBlastActor* NvBlastFamilyDeserializeActor(NvBlastFamily* family, const void* buffer, NvBlastLog logFn);
    -00467 
    -00468 
    -00479 NVBLAST_API uint32_t NvBlastFamilyGetActors(NvBlastActor** actors, uint32_t actorsSize, const NvBlastFamily* family, NvBlastLog logFn);
    -00480 
    -00481 
    -00491 NVBLAST_API NvBlastActor* NvBlastFamilyGetChunkActor(const NvBlastFamily* family, uint32_t chunkIndex, NvBlastLog logFn);
    -00492 
    -00493 
    -00502 NVBLAST_API uint32_t NvBlastFamilyGetMaxActorCount(const NvBlastFamily* family, NvBlastLog logFn);
    -00503 
    -00505 
    -00506 
    -00508 //  NvBlastActor accessor, serialization, and deactivation functions
    -00511 
    -00520 NVBLAST_API uint32_t NvBlastActorGetVisibleChunkCount(const NvBlastActor* actor, NvBlastLog logFn);
    +00455 
    +00463 NVBLAST_API void NvBlastFamilySetAsset(NvBlastFamily* family, const NvBlastAsset* asset, NvBlastLog logFn);
    +00464 
    +00465 
    +00474 NVBLAST_API uint32_t NvBlastFamilyGetSize(const NvBlastFamily* family, NvBlastLog logFn);
    +00475 
    +00476 
    +00485 NVBLAST_API NvBlastID NvBlastFamilyGetAssetID(const NvBlastFamily* family, NvBlastLog logFn);
    +00486 
    +00487 
    +00496 NVBLAST_API size_t NvBlastFamilyGetRequiredScratchForCreateFirstActor(const NvBlastFamily* family, NvBlastLog logFn);
    +00497 
    +00498 
    +00509 NVBLAST_API NvBlastActor* NvBlastFamilyCreateFirstActor(NvBlastFamily* family, const NvBlastActorDesc* desc, void* scratch, NvBlastLog logFn);
    +00510 
    +00511 
    +00520 NVBLAST_API uint32_t NvBlastFamilyGetActorCount(const NvBlastFamily* family, NvBlastLog logFn);
     00521 
     00522 
    -00533 NVBLAST_API uint32_t NvBlastActorGetVisibleChunkIndices(uint32_t* visibleChunkIndices, uint32_t visibleChunkIndicesSize, const NvBlastActor* actor, NvBlastLog logFn);
    -00534 
    +00534 NVBLAST_API NvBlastActor* NvBlastFamilyDeserializeActor(NvBlastFamily* family, const void* buffer, NvBlastLog logFn);
     00535 
    -00544 NVBLAST_API uint32_t NvBlastActorGetGraphNodeCount(const NvBlastActor* actor, NvBlastLog logFn);
    -00545 
    -00546 
    -00557 NVBLAST_API uint32_t NvBlastActorGetGraphNodeIndices(uint32_t* graphNodeIndices, uint32_t graphNodeIndicesSize, const NvBlastActor* actor, NvBlastLog logFn);
    -00558 
    -00559 
    -00580 NVBLAST_API const float* NvBlastActorGetBondHealths(const NvBlastActor* actor, NvBlastLog logFn);
    -00581 
    -00582 
    -00592 NVBLAST_API uint32_t NvBlastActorGetSerializationSize(const NvBlastActor* actor, NvBlastLog logFn);
    -00593 
    -00594 
    -00605 NVBLAST_API uint32_t NvBlastActorSerialize(void* buffer, uint32_t bufferSize, const NvBlastActor* actor, NvBlastLog logFn);
    -00606 
    -00607 
    -00616 NVBLAST_API NvBlastFamily* NvBlastActorGetFamily(const NvBlastActor* actor, NvBlastLog logFn);
    -00617 
    -00618 
    -00627 NVBLAST_API uint32_t NvBlastActorGetIndex(const NvBlastActor* actor, NvBlastLog logFn);
    -00628 
    -00629 
    -00638 NVBLAST_API bool NvBlastActorDeactivate(NvBlastActor* actor, NvBlastLog logFn);
    -00639 
    -00641 
    -00642 
    -00644 //  NvBlastActor damage and fracturing functions
    -00647 
    -00670 NVBLAST_API void NvBlastActorGenerateFracture
    -00671 (
    -00672     NvBlastFractureBuffers* commandBuffers,
    -00673     const NvBlastActor* actor,
    -00674     const NvBlastDamageProgram program, 
    -00675     const NvBlastProgramParams* programParams,
    -00676     NvBlastLog logFn, 
    -00677     NvBlastTimers* timers
    -00678 );
    -00679 
    -00680 
    -00711 NVBLAST_API void NvBlastActorApplyFracture
    -00712 (
    -00713     NvBlastFractureBuffers* eventBuffers,
    -00714     NvBlastActor* actor,
    -00715     const NvBlastFractureBuffers* commands,
    -00716     NvBlastLog logFn,
    -00717     NvBlastTimers* timers
    -00718 );
    -00719 
    -00720 
    -00734 NVBLAST_API uint32_t NvBlastActorSplit
    -00735 (
    -00736     NvBlastActorSplitEvent* result, 
    -00737     NvBlastActor* actor,
    -00738     uint32_t newActorsMaxCount,
    -00739     void* scratch,
    -00740     NvBlastLog logFn,
    -00741     NvBlastTimers* timers
    -00742 );
    -00743 
    -00744 
    -00754 NVBLAST_API size_t NvBlastActorGetRequiredScratchForSplit(const NvBlastActor* actor, NvBlastLog logFn);
    -00755 
    -00756 
    -00766 NVBLAST_API uint32_t NvBlastActorGetMaxActorCountForSplit(const NvBlastActor* actor, NvBlastLog logFn);
    -00767 
    -00768 
    -00777 NVBLAST_API bool NvBlastActorCanFracture(const NvBlastActor* actor, NvBlastLog logFn);
    -00778 
    -00780 
    -00781 
    -00783 //  NvBlastTimers functions and helpers
    -00786 
    -00792 NVBLAST_API void NvBlastTimersReset(NvBlastTimers* timers);
    -00793 
    -00794 
    -00802 NVBLAST_API double NvBlastTicksToSeconds(int64_t ticks);
    -00803 
    -00805 
    -00806 
    -00807 #endif // ifndef NVBLAST_H
    +00536 
    +00547 NVBLAST_API uint32_t NvBlastFamilyGetActors(NvBlastActor** actors, uint32_t actorsSize, const NvBlastFamily* family, NvBlastLog logFn);
    +00548 
    +00549 
    +00559 NVBLAST_API NvBlastActor* NvBlastFamilyGetChunkActor(const NvBlastFamily* family, uint32_t chunkIndex, NvBlastLog logFn);
    +00560 
    +00561 
    +00570 NVBLAST_API uint32_t NvBlastFamilyGetMaxActorCount(const NvBlastFamily* family, NvBlastLog logFn);
    +00571 
    +00573 
    +00574 
    +00576 //  NvBlastActor accessor, serialization, and deactivation functions
    +00579 
    +00588 NVBLAST_API uint32_t NvBlastActorGetVisibleChunkCount(const NvBlastActor* actor, NvBlastLog logFn);
    +00589 
    +00590 
    +00601 NVBLAST_API uint32_t NvBlastActorGetVisibleChunkIndices(uint32_t* visibleChunkIndices, uint32_t visibleChunkIndicesSize, const NvBlastActor* actor, NvBlastLog logFn);
    +00602 
    +00603 
    +00612 NVBLAST_API uint32_t NvBlastActorGetGraphNodeCount(const NvBlastActor* actor, NvBlastLog logFn);
    +00613 
    +00614 
    +00625 NVBLAST_API uint32_t NvBlastActorGetGraphNodeIndices(uint32_t* graphNodeIndices, uint32_t graphNodeIndicesSize, const NvBlastActor* actor, NvBlastLog logFn);
    +00626 
    +00627 
    +00648 NVBLAST_API const float* NvBlastActorGetBondHealths(const NvBlastActor* actor, NvBlastLog logFn);
    +00649 
    +00650 
    +00660 NVBLAST_API uint32_t NvBlastActorGetSerializationSize(const NvBlastActor* actor, NvBlastLog logFn);
    +00661 
    +00662 
    +00673 NVBLAST_API uint32_t NvBlastActorSerialize(void* buffer, uint32_t bufferSize, const NvBlastActor* actor, NvBlastLog logFn);
    +00674 
    +00675 
    +00684 NVBLAST_API NvBlastFamily* NvBlastActorGetFamily(const NvBlastActor* actor, NvBlastLog logFn);
    +00685 
    +00686 
    +00695 NVBLAST_API uint32_t NvBlastActorGetIndex(const NvBlastActor* actor, NvBlastLog logFn);
    +00696 
    +00697 
    +00706 NVBLAST_API bool NvBlastActorDeactivate(NvBlastActor* actor, NvBlastLog logFn);
    +00707 
    +00709 
    +00710 
    +00712 //  NvBlastActor damage and fracturing functions
    +00715 
    +00738 NVBLAST_API void NvBlastActorGenerateFracture
    +00739 (
    +00740     NvBlastFractureBuffers* commandBuffers,
    +00741     const NvBlastActor* actor,
    +00742     const NvBlastDamageProgram program, 
    +00743     const NvBlastProgramParams* programParams,
    +00744     NvBlastLog logFn, 
    +00745     NvBlastTimers* timers
    +00746 );
    +00747 
    +00748 
    +00779 NVBLAST_API void NvBlastActorApplyFracture
    +00780 (
    +00781     NvBlastFractureBuffers* eventBuffers,
    +00782     NvBlastActor* actor,
    +00783     const NvBlastFractureBuffers* commands,
    +00784     NvBlastLog logFn,
    +00785     NvBlastTimers* timers
    +00786 );
    +00787 
    +00788 
    +00802 NVBLAST_API uint32_t NvBlastActorSplit
    +00803 (
    +00804     NvBlastActorSplitEvent* result, 
    +00805     NvBlastActor* actor,
    +00806     uint32_t newActorsMaxCount,
    +00807     void* scratch,
    +00808     NvBlastLog logFn,
    +00809     NvBlastTimers* timers
    +00810 );
    +00811 
    +00812 
    +00822 NVBLAST_API size_t NvBlastActorGetRequiredScratchForSplit(const NvBlastActor* actor, NvBlastLog logFn);
    +00823 
    +00824 
    +00834 NVBLAST_API uint32_t NvBlastActorGetMaxActorCountForSplit(const NvBlastActor* actor, NvBlastLog logFn);
    +00835 
    +00836 
    +00845 NVBLAST_API bool NvBlastActorCanFracture(const NvBlastActor* actor, NvBlastLog logFn);
    +00846 
    +00847 
    +00857 NVBLAST_API bool NvBlastActorIsSplitRequired(const NvBlastActor* actor, NvBlastLog logFn);
    +00858 
    +00859 
    +00863 NVBLAST_API bool NvBlastActorIsBoundToWorld(const NvBlastActor* actor, NvBlastLog logFn);
    +00864 
    +00866 
    +00867 
    +00869 //  NvBlastTimers functions and helpers
    +00872 
    +00878 NVBLAST_API void NvBlastTimersReset(NvBlastTimers* timers);
    +00879 
    +00880 
    +00888 NVBLAST_API double NvBlastTicksToSeconds(int64_t ticks);
    +00889 
    +00891 
    +00892 
    +00893 #endif // ifndef NVBLAST_H