Functions
NvBlastActorApplyFracture(NvBlastFractureBuffers *eventBuffers, NvBlastActor *actor, const NvBlastFractureBuffers *commands, NvBlastLog logFn, NvBlastTimers *timers): Applies the direct fracture and breaks graph bonds/edges as necessary.
NvBlastActorCacheBondHeath(const NvBlastActor *actor, uint32_t bondIndex, NvBlastLog logFn): Tell the system to cache the bond health for the given bond index.
NvBlastActorCanFracture(const NvBlastActor *actor, NvBlastLog logFn): Determines if the actor can fracture further.
NvBlastActorDeactivate(NvBlastActor *actor, NvBlastLog logFn): Deactivate an actor within its family.
NvBlastActorGenerateFracture(NvBlastFractureBuffers *commandBuffers, const NvBlastActor *actor, const NvBlastDamageProgram program, const void *programParams, NvBlastLog logFn, NvBlastTimers *timers): Creates fracture commands for the actor using a damage program and program parameters (material and damage descriptions).
NvBlastActorGetBondHealths(const NvBlastActor *actor, NvBlastLog logFn): Access the bond health data for an actor.
NvBlastActorGetCachedBondHeaths(const NvBlastActor *actor, NvBlastLog logFn): Access the cached bond health data for an actor.
NvBlastActorGetFamily(const NvBlastActor *actor, NvBlastLog logFn): Access to an actor's family.
NvBlastActorGetGraphNodeCount(const NvBlastActor *actor, NvBlastLog logFn): Get the number of graph nodes for this actor.
NvBlastActorGetGraphNodeIndices(uint32_t *graphNodeIndices, uint32_t graphNodeIndicesSize, const NvBlastActor *actor, NvBlastLog logFn): Retrieve a list of graph node indices for the actor into the given array.
NvBlastActorGetIndex(const NvBlastActor *actor, NvBlastLog logFn): Access to an actor's internal index.
NvBlastActorGetMaxActorCountForSplit(const NvBlastActor *actor, NvBlastLog logFn): Returns the upper-bound number of actors which can be created by calling NvBlastActorSplit with that actor, this value can't exceed chunk count.
NvBlastActorGetRequiredScratchForSplit(const NvBlastActor *actor, NvBlastLog logFn): Returns the number of bytes of scratch memory that the user must supply to NvBlastActorSplit, based upon the actor that will be passed into that function.
NvBlastActorGetSerializationSize(const NvBlastActor *actor, NvBlastLog logFn): The buffer size needed to serialize a single actor.
NvBlastActorGetVisibleChunkCount(const NvBlastActor *actor, NvBlastLog logFn): Get the number of visible chunks for this actor.
NvBlastActorGetVisibleChunkIndices(uint32_t *visibleChunkIndices, uint32_t visibleChunkIndicesSize, const NvBlastActor *actor, NvBlastLog logFn): Retrieve a list of visible chunk indices for the actor into the given array.
NvBlastActorHasExternalBonds(const NvBlastActor *actor, NvBlastLog logFn)
NvBlastActorIsSplitRequired(const NvBlastActor *actor, NvBlastLog logFn): Determines if the actor is damaged (was fractured) and split call is required.
NvBlastActorSerialize(void *buffer, uint32_t bufferSize, const NvBlastActor *actor, NvBlastLog logFn): Serialize a single actor to a buffer.
NvBlastActorSplit(NvBlastActorSplitEvent *result, NvBlastActor *actor, uint32_t newActorsMaxCount, void *scratch, NvBlastLog logFn, NvBlastTimers *timers): Releases the oldActor and creates its children newActors if necessary.
NvBlastAssetCreateFamily(void *mem, const NvBlastAsset *asset, NvBlastLog logFn): Family-building function.
NvBlastAssetCreateFamilyFromSizeData(void *mem, const NvBlastAssetMemSizeData &sizeData, NvBlastLog logFn): Family-building function.
NvBlastAssetGetActorSerializationSizeUpperBound(const NvBlastAsset *asset, NvBlastLog logFn): A buffer size sufficient to serialize an actor instanced from a given asset.
NvBlastAssetGetBondCount(const NvBlastAsset *asset, NvBlastLog logFn): Get the number of bonds in the given asset.
NvBlastAssetGetBonds(const NvBlastAsset *asset, NvBlastLog logFn): Access an array of bonds of the given asset.
NvBlastAssetGetChunkCount(const NvBlastAsset *asset, NvBlastLog logFn): Get the number of chunks in the given asset.
NvBlastAssetGetChunkToGraphNodeMap(const NvBlastAsset *asset, NvBlastLog logFn): Access a map from chunk index to graph node index.
NvBlastAssetGetChunks(const NvBlastAsset *asset, NvBlastLog logFn): Access an array of chunks of the given asset.
NvBlastAssetGetFamilyMemorySize(const NvBlastAsset *asset, NvBlastLog logFn): Calculates the memory requirements for a family based upon an asset.
NvBlastAssetGetFamilyMemorySizeFromSizeData(const NvBlastAssetMemSizeData &sizeData, NvBlastLog logFn): Calculates the memory requirements for a family based upon supplied sized data.
NvBlastAssetGetFirstSubsupportChunkIndex(const NvBlastAsset *asset, NvBlastLog logFn): Get the first subsupport chunk index in the given asset.
NvBlastAssetGetFormatVersion(const NvBlastAsset *asset, NvBlastLog logFn): Retrieve the data format version for the given asset.
NvBlastAssetGetID(const NvBlastAsset *asset, NvBlastLog logFn): Retrieve the asset ID.
NvBlastAssetGetLeafChunkCount(const NvBlastAsset *asset, NvBlastLog logFn): Get the number of leaf chunks in the given asset.
NvBlastAssetGetSize(const NvBlastAsset *asset, NvBlastLog logFn): Retrieve the memory size (in bytes) of the given data asset.
NvBlastAssetGetSupportChunkCount(const NvBlastAsset *asset, NvBlastLog logFn): Get the number of support chunks in the given asset.
NvBlastAssetGetSupportGraph(const NvBlastAsset *asset, NvBlastLog logFn): Access the support graph for the given asset.
NvBlastAssetMemSizeDataFromAsset(const NvBlastAsset *asset): Fill out the size data from the provided asset.
NvBlastAssetSetID(NvBlastAsset *asset, const NvBlastID *id, NvBlastLog logFn): Set an asset's ID.
NvBlastBuildAssetDescChunkReorderMap(uint32_t *chunkReorderMap, const NvBlastChunkDesc *chunkDescs, uint32_t chunkCount, void *scratch, NvBlastLog logFn): Build chunk reorder map.
NvBlastCreateAsset(void *mem, const NvBlastAssetDesc *desc, void *scratch, NvBlastLog logFn): Asset-building function.
NvBlastEnsureAssetExactSupportCoverage(NvBlastChunkDesc *chunkDescs, uint32_t chunkCount, void *scratch, NvBlastLog logFn): Function to ensure (check and update) support coverage of chunks.
NvBlastExtAssetTransformInPlace(NvBlastAsset *asset, const NvcVec3 *scale, const NvcQuat *rotation, const NvcVec3 *translation): Transforms asset in place using scale, rotation, transform.
NvBlastExtAssetUtilsAddExternalBonds(const NvBlastAsset *asset, const uint32_t *externalBoundChunks, uint32_t externalBoundChunkCount, const NvcVec3 *bondDirections, const uint32_t *bondUserData): Reauthor the provided asset to create external bonds in the specified support chunks.
NvBlastExtAssetUtilsCreateDesc(const NvBlastAsset *asset): Creates an asset descriptor from an asset.
NvBlastExtAssetUtilsMergeAssets(const NvBlastAsset **components, const NvcVec3 *scales, const NvcQuat *rotations, const NvcVec3 *translations, uint32_t componentCount, const NvBlastExtAssetUtilsBondDesc *newBondDescs, uint32_t newBondCount, uint32_t *chunkIndexOffsets, uint32_t *chunkReorderMap, uint32_t chunkReorderMapSize): Creates an asset descriptor which will build an asset that merges several assets.
NvBlastExtAuthoringBuildCutoutSet(Nv::Blast::CutoutSet &cutoutSet, const uint8_t *pixelBuffer, uint32_t bufferWidth, uint32_t bufferHeight, float segmentationErrorThreshold, float snapThreshold, bool periodic, bool expandGaps): Builds a cutout set (which must have been initially created by createCutoutSet()).
NvBlastExtAuthoringBuildMeshConvexDecomposition(Nv::Blast::ConvexMeshBuilder *cmb, const Nv::Blast::Triangle *mesh, uint32_t triangleCount, const Nv::Blast::ConvexDecompositionParams ¶ms, Nv::Blast::CollisionHull **&convexes): Build convex mesh decomposition.
NvBlastExtAuthoringCreateBBoxBasedAccelerator(uint32_t resolution, const Nv::Blast::Mesh *m): Create BBoxBasedAccelerator - SpatialAccelerator which uses a bbox/grid algorithm.
NvBlastExtAuthoringCreateBondGenerator(Nv::Blast::ConvexMeshBuilder *builder): Create BlastBondGenerator.
NvBlastExtAuthoringCreateBooleanTool(): Create BooleanTool object.
NvBlastExtAuthoringCreateCutoutSet(): Instantiates a blank CutoutSet.
NvBlastExtAuthoringCreateFractureTool(): Create FractureTool object.
NvBlastExtAuthoringCreateGridAccelerator(Nv::Blast::SpatialGrid *parent): Create GridAccelerator - SpatialAccelerator which use Grid for faster mesh sampling.
NvBlastExtAuthoringCreateMesh(const NvcVec3 *positions, const NvcVec3 *normals, const NvcVec2 *uv, uint32_t verticesCount, const uint32_t *indices, uint32_t indicesCount): Constructs mesh object from array of triangles.
NvBlastExtAuthoringCreateMeshCleaner(): Creates MeshCleaner object.
NvBlastExtAuthoringCreateMeshFromFacets(const void *vertices, const void *edges, const void *facets, uint32_t verticesCount, uint32_t edgesCount, uint32_t facetsCount): Constructs mesh object from array of vertices, edges and facets.
NvBlastExtAuthoringCreateMeshOnlyTriangles(const void *vertices, uint32_t verticesCount, uint32_t *indices, uint32_t indexCount, void *materials=nullptr, uint32_t materialStride=4): Constructs mesh object from triangles represented as arrays of vertices, indices and per facet material.
NvBlastExtAuthoringCreatePatternGenerator(): Returns pattern generator used for generating fracture patterns.
NvBlastExtAuthoringCreateSpatialGrid(uint32_t resolution, const Nv::Blast::Mesh *m): Create spatial grid for mesh.
NvBlastExtAuthoringCreateSweepingAccelerator(const Nv::Blast::Mesh *m): Create SweepingAccelerator - SpatialAccelerator which uses a sweep algorithm.
NvBlastExtAuthoringCreateVoronoiSitesGenerator(Nv::Blast::Mesh *mesh, Nv::Blast::RandomGeneratorBase *rng): Voronoi sites should not be generated outside of the fractured mesh, so VoronoiSitesGenerator should be supplied with fracture mesh.
NvBlastExtAuthoringFindAssetConnectingBonds(const NvBlastAsset **components, const NvcVec3 *scales, const NvcQuat *rotations, const NvcVec3 *translations, const uint32_t **convexHullOffsets, const Nv::Blast::CollisionHull ***chunkHulls, uint32_t componentCount, NvBlastExtAssetUtilsBondDesc *&newBondDescs, float maxSeparation=0.0f): Finds bonds connecting chunks in a list of assets.
NvBlastExtAuthoringProcessFracture(Nv::Blast::FractureTool &fTool, Nv::Blast::BlastBondGenerator &bondGenerator, Nv::Blast::ConvexMeshBuilder &collisionBuilder, const Nv::Blast::ConvexDecompositionParams &collisionParam, int32_t defaultSupportDepth=-1): Performs pending fractures and generates fractured asset, render and collision geometry.
NvBlastExtAuthoringReleaseAuthoringResult(Nv::Blast::ConvexMeshBuilder &collisionBuilder, Nv::Blast::AuthoringResult *ar): Releases AuthoringResult data.
NvBlastExtAuthoringReleaseAuthoringResultCollision(Nv::Blast::ConvexMeshBuilder &collisionBuilder, Nv::Blast::AuthoringResult *ar): Releases collision data for AuthoringResult.
NvBlastExtAuthoringTransformCollisionHull(const Nv::Blast::CollisionHull *hull, const NvcVec3 *scaling, const NvcQuat *rotation, const NvcVec3 *translation): Transforms collision hull in place using scale, rotation, transform.
NvBlastExtAuthoringTransformCollisionHullInPlace(Nv::Blast::CollisionHull *hull, const NvcVec3 *scaling, const NvcQuat *rotation, const NvcVec3 *translation): Transforms collision hull in place using scale, rotation, transform.
NvBlastExtAuthoringTrimCollisionGeometry(Nv::Blast::ConvexMeshBuilder *cmb, uint32_t chunksCount, Nv::Blast::CollisionHull **in, const uint32_t *chunkDepth): Convex geometry trimming.
NvBlastExtAuthoringUpdateGraphicsMesh(Nv::Blast::FractureTool &fTool, Nv::Blast::AuthoringResult &ares): Updates graphics mesh only.
NvBlastExtCapsuleFalloffGraphShader(NvBlastFractureBuffers *commandBuffers, const NvBlastGraphShaderActor *actor, const void *params): Capsule Radial Falloff damage for both graph and subgraph shaders.
NvBlastExtDamageAcceleratorCreate(const NvBlastAsset *asset, int type)
NvBlastExtFalloffGraphShader(NvBlastFractureBuffers *commandBuffers, const NvBlastGraphShaderActor *actor, const void *params): Radial Falloff and Radial Cutter damage for both graph and subgraph shaders.
NvBlastExtImpactSpreadGraphShader(NvBlastFractureBuffers *commandBuffers, const NvBlastGraphShaderActor *actor, const void *params): Impact Spread Damage Shaders.
NvBlastExtLlSerializerLoadSet(Nv::Blast::ExtSerialization &serialization): Load all low-level serializers into the ExtSerialization manager.
NvBlastExtSerializationCreate(): Create a new serialization manager.
NvBlastExtSerializationSerializeAssetIntoBuffer(void *&buffer, Nv::Blast::ExtSerialization &serialization, const NvBlastAsset *asset): Utility wrapper function to serialize an NvBlastAsset .
NvBlastExtSerializationSerializeFamilyIntoBuffer(void *&buffer, Nv::Blast::ExtSerialization &serialization, const NvBlastFamily *family): Utility wrapper function to serialize an NvBlastFamily .
NvBlastExtSerializationSerializeTkAssetIntoBuffer(void *&buffer, Nv::Blast::ExtSerialization &serialization, const Nv::Blast::TkAsset *asset): Utility wrapper function to serialize a TkAsset.
NvBlastExtShearGraphShader(NvBlastFractureBuffers *commandBuffers, const NvBlastGraphShaderActor *actor, const void *params): Shear Damage Shaders.
NvBlastExtTkSerializerLoadSet(Nv::Blast::TkFramework &framework, Nv::Blast::ExtSerialization &serialization): Load all high-level serializers into the ExtSerialization manager.
NvBlastExtTriangleIntersectionGraphShader(NvBlastFractureBuffers *commandBuffers, const NvBlastGraphShaderActor *actor, const void *params): Triangle Intersection damage for both graph and subgraph shaders.
NvBlastFamilyCreateFirstActor(NvBlastFamily *family, const NvBlastActorDesc *desc, void *scratch, NvBlastLog logFn): Instance the family's asset into a new, unfractured actor.
NvBlastFamilyDeserializeActor(NvBlastFamily *family, const void *buffer, NvBlastLog logFn): Deserialize a single Actor from a buffer into the given family.
NvBlastFamilyGetActorByIndex(const NvBlastFamily *family, uint32_t actorIndex, NvBlastLog logFn): Retrieve the actor associated with the given actor index.
NvBlastFamilyGetActorCount(const NvBlastFamily *family, NvBlastLog logFn): Retrieve the number of active actors associated with the given family.
NvBlastFamilyGetActors(NvBlastActor **actors, uint32_t actorsSize, const NvBlastFamily *family, NvBlastLog logFn): Retrieve the active actors associated with the given family.
NvBlastFamilyGetAsset(const NvBlastFamily *family, NvBlastLog logFn): Retrieve the asset of the given family.
NvBlastFamilyGetAssetID(const NvBlastFamily *family, NvBlastLog logFn): Retrieve the asset ID of the given family.
NvBlastFamilyGetChunkActor(const NvBlastFamily *family, uint32_t chunkIndex, NvBlastLog logFn): Retrieve the actor associated with the given chunk.
NvBlastFamilyGetChunkActorIndices(const NvBlastFamily *family, NvBlastLog logFn): Retrieve the actor indices associated with chunks.
NvBlastFamilyGetFormatVersion(const NvBlastFamily *family, NvBlastLog logFn): Retrieve the data format version for the given family.
NvBlastFamilyGetMaxActorCount(const NvBlastFamily *family, NvBlastLog logFn): Retrieve the max active actor count family could have.
NvBlastFamilyGetRequiredScratchForCreateFirstActor(const NvBlastFamily *family, NvBlastLog logFn): Returns the number of bytes of scratch memory that the user must supply to NvBlastFamilyCreateFirstActor.
NvBlastFamilyGetSize(const NvBlastFamily *family, NvBlastLog logFn): Retrieve the size (in bytes) of the given family.
NvBlastFamilySetAsset(NvBlastFamily *family, const NvBlastAsset *asset, NvBlastLog logFn): Set asset to the family.
NvBlastGetAssetMemorySize(const NvBlastAssetDesc *desc, NvBlastLog logFn): Calculates the memory requirements for an asset based upon its descriptor.
NvBlastGetAssetMemorySizeFromSizeData(const NvBlastAssetMemSizeData &sizeData, NvBlastLog logFn): Calculates the memory requirements for an asset based upon supplied sized data.
NvBlastGetRequiredScratchForCreateAsset(const NvBlastAssetDesc *desc, NvBlastLog logFn): Returns the number of bytes of scratch memory that the user must supply to NvBlastCreateAsset, based upon the descriptor that will be passed into that function.
NvBlastGlobalGetAllocatorCallback(): Retrieve a pointer to the global nvidia::NvAllocatorCallback.
NvBlastGlobalGetErrorCallback(): Retrieve a pointer to the global nvidia::NvErrorCallback.
NvBlastGlobalGetProfilerCallback(): Retrieve a pointer to the global nvidia::NvProfilerCallback.
NvBlastGlobalSetAllocatorCallback(nvidia::NvAllocatorCallback *allocatorCallback): Set global nvidia::NvAllocatorCallback.
NvBlastGlobalSetErrorCallback(nvidia::NvErrorCallback *errorCallback): Set global nvidia::NvErrorCallback.
NvBlastGlobalSetProfilerCallback(nvidia::NvProfilerCallback *profilerCallback): Set a custom profiler callback.
NvBlastReorderAssetDescChunks(NvBlastChunkDesc *chunkDescs, uint32_t chunkCount, NvBlastBondDesc *bondDescs, uint32_t bondCount, uint32_t *chunkReorderMap, bool keepBondNormalChunkOrder, void *scratch, NvBlastLog logFn): Build and apply chunk reorder map.
NvBlastTicksToSeconds(int64_t ticks): Convert a tick value from NvBlastTimers to seconds.
NvBlastTimersReset(NvBlastTimers *timers): Resets all values in the given NvBlastTimers struct to zero.
NvBlastTkFrameworkCreate(): Create a new TkFramework.
NvBlastTkFrameworkGet(): Retrieve a pointer to the global TkFramework singleton (if it exists).
Nv::Blast::logLL(int type, const char *msg, const char *file, int line): Logging wrapper compatible with NvBlastLog.
operator+(const NvcVec2 &v, const NvcVec2 &w): Some basic operators for NvcVec2 and NvcVec3.