Main Page Class List Class Members

# Nv::Blast::ApexImporter::ApexImportTool Class Reference

`#include <NvBlastExtApexImportTool.h>`

List of all members.

## Public Member Functions
| ApexImportTool ()
const ExtPxCollisionBuilder * | getCollisionBuilder () const
bool | getCollisionGeometry (const NvParameterized::Interface *assetPrm, uint32_t chunkCount, std::vector< uint32_t > &chunkReorderInvMap, const std::vector< uint32_t > &apexChunkFlags, std::vector< ExtPxAssetDesc::ChunkDesc > &physicsChunks, std::vector< ExtPxAssetDesc::SubchunkDesc > &physicsSubchunks, std::vector< std::vector< CollisionHull * > > &hullsDesc)
physx::PxCooking * | getCooking ()
physx::PxPhysics * | getPxSdk ()
bool | importApexAsset (std::vector< uint32_t > &chunkReorderInvMap, NvParameterized::Interface *assetNvIfc, std::vector< NvBlastChunkDesc > &chunkDescriptors, std::vector< NvBlastBondDesc > &bondDescriptors, std::vector< uint32_t > &flags, const ApexImporterConfig &config)
bool | importApexAsset (std::vector< uint32_t > &chunkReorderInvMap, NvParameterized::Interface *assetNvIfc, std::vector< NvBlastChunkDesc > &chunkDescriptors, std::vector< NvBlastBondDesc > &bondDescriptors, std::vector< uint32_t > &flags)
bool | importRendermesh (const std::vector< uint32_t > &chunkReorderInvMap, const NvParameterized::Interface *assetNvIfc, Nv::Blast::ExporterMeshData *outputData, const char *materialsDir)
bool | isValid ()
bool | loadAssetFromFile (nvidia::PxFileBuf *stream, NvParameterized::Serializer::DeserializedData &data)
bool | saveAsset (const NvBlastAsset *asset, nvidia::PxFileBuf *stream)
| ~ApexImportTool ()
## Protected Member Functions
| ApexImportTool (const ApexImportTool &)
ApexImportTool & | operator= (const ApexImportTool &)
## Protected Attributes
ExtPxCollisionBuilder * | m_collisionBuilder
physx::PxCooking * | m_Cooking
physx::PxFoundation * | m_Foundation
physx::PxPhysics * | m_PhysxSDK

## Detailed Description

ApexImportTool provides routines to create NvBlastAssets from APEX assets.

## Constructor & Destructor Documentation

Nv::Blast::ApexImporter::ApexImportTool::ApexImportTool | ( |  | ) |

Nv::Blast::ApexImporter::ApexImportTool::~ApexImportTool | ( |  | ) |

Nv::Blast::ApexImporter::ApexImportTool::ApexImportTool | ( | const ApexImportTool & |  | ) | `[protected]`

## Member Function Documentation

const ExtPxCollisionBuilder* Nv::Blast::ApexImporter::ApexImportTool::getCollisionBuilder | ( |  | ) | const`[inline]`

bool Nv::Blast::ApexImporter::ApexImportTool::getCollisionGeometry | ( | const NvParameterized::Interface * | assetPrm,
|  | uint32_t | chunkCount,
|  | std::vector< uint32_t > & | chunkReorderInvMap,
|  | const std::vector< uint32_t > & | apexChunkFlags,
|  | std::vector< ExtPxAssetDesc::ChunkDesc > & | physicsChunks,
|  | std::vector< ExtPxAssetDesc::SubchunkDesc > & | physicsSubchunks,
|  | std::vector< std::vector< CollisionHull * > > & | hullsDesc |
| ) |  |  |

Method creates collision geometry from user-supplied APEX Destructible asset.

Parameters:

  `[in]` | apexAsset | Pointer on DestructibleAsset object for which collision geometry should be created.
  `[in]` | chunkCount | Blast asset chunk count, should be equal to number of blast chunk descriptors which are gathered at ApexImportTool::importApexAsset(...)
  `[in]` | chunkReorderInvMap | Chunk map from blast chunk to apex chunk filled in ApexImportTool::importApexAsset(...)
  `[in]` | apexChunkFlags | Chunk flags array
  `[out]` | physicsChunks | Chunk physics info output array
  `[out]` | physicsSubchunks | Chunk collision geometry and transformation data output array
  `[out]` | hullsDescs | Chunk collision geometry descriptors, can be used to save to some third party format

Returns:
  If true - success, output arrays are filled.

physx::PxCooking* Nv::Blast::ApexImporter::ApexImportTool::getCooking | ( |  | ) | `[inline]`

physx::PxPhysics* Nv::Blast::ApexImporter::ApexImportTool::getPxSdk | ( |  | ) | `[inline]`

bool Nv::Blast::ApexImporter::ApexImportTool::importApexAsset | ( | std::vector< uint32_t > & | chunkReorderInvMap,
|  | NvParameterized::Interface * | assetNvIfc,
|  | std::vector< NvBlastChunkDesc > & | chunkDescriptors,
|  | std::vector< NvBlastBondDesc > & | bondDescriptors,
|  | std::vector< uint32_t > & | flags,
|  | const ApexImporterConfig & | config |
| ) |  |  |

Method builds NvBlastAsset form provided DestructibleAsset. DestructibleAsset must contain support graph! Parameteres of conversion could be provided with ApexImporterConfig.

Parameters:

  `[out]` | chunkReorderInvMap | Chunk map from blast chunk to apex chunk to be filled.
  `[in]` | apexAsset | Pointer on DestructibleAsset object which should be converted to NvBlastAsset
  `[out]` | chunkDescriptors | Reference on chunk descriptors array to be filled.
  `[out]` | bondDescriptors | Reference on bond descriptors array to be filled.
  `[out]` | flags | Reference on chunk flags to be filled.
  `[in]` | config | ApexImporterConfig object with conversion parameters, see above.

Returns:
  If true, output arrays are filled.

bool Nv::Blast::ApexImporter::ApexImportTool::importApexAsset | ( | std::vector< uint32_t > & | chunkReorderInvMap,
|  | NvParameterized::Interface * | assetNvIfc,
|  | std::vector< NvBlastChunkDesc > & | chunkDescriptors,
|  | std::vector< NvBlastBondDesc > & | bondDescriptors,
|  | std::vector< uint32_t > & | flags |
| ) |  |  |

Method builds NvBlastAsset form provided DestructibleAsset. DestructibleAsset must contain support graph!

Parameters:

  `[out]` | chunkReorderInvMap | Chunk map from blast chunk to apex chunk to be filled.
  `[in]` | apexAsset | Pointer on DestructibleAsset object which should be converted to NvBlastAsset
  `[out]` | chunkDescriptors | Reference on chunk descriptors array to be filled.
  `[out]` | bondDescriptors | Reference on bond descriptors array to be filled.
  `[out]` | flags | Reference on chunk flags to be filled.

Returns:
  If true, output arrays are filled.

bool Nv::Blast::ApexImporter::ApexImportTool::importRendermesh | ( | const std::vector< uint32_t > & | chunkReorderInvMap,
|  | const NvParameterized::Interface * | assetNvIfc,
|  | Nv::Blast::ExporterMeshData * | outputData,
|  | const char * | materialsDir |
| ) |  |  |

Method builds NvBlastAsset form provided DestructibleAsset. DestructibleAsset must contain support graph!

bool Nv::Blast::ApexImporter::ApexImportTool::isValid | ( |  | ) |

bool Nv::Blast::ApexImporter::ApexImportTool::loadAssetFromFile | ( | nvidia::PxFileBuf * | stream,
|  | NvParameterized::Serializer::DeserializedData & | data |
| ) |  |  |

Method loads APEX Destruction asset from file

Parameters:

  `[in]` | stream | Pointer on PxFileBuf stream with Apex Destruction asset

Returns:
  If not 0, pointer on DestructibleAsset object is returned.

ApexImportTool& Nv::Blast::ApexImporter::ApexImportTool::operator= | ( | const ApexImportTool & |  | ) | `[protected]`

bool Nv::Blast::ApexImporter::ApexImportTool::saveAsset | ( | const NvBlastAsset * | asset,
|  | nvidia::PxFileBuf * | stream |
| ) |  |  |

Method serializes user-supplied NvBlastAsset object to user-supplied PxFileBuf stream.

Parameters:

  `[in]` | asset | Pointer on NvBlastAsset object which should be serialized
  `[in]` | stream | Pointer on PxFileBuf object in which NvBlastAsset should be serialized.

Returns:
  If true, NvBlastAsset object serialized successfully.

## Member Data Documentation

ExtPxCollisionBuilder* Nv::Blast::ApexImporter::ApexImportTool::m_collisionBuilder`[protected]`

physx::PxCooking* Nv::Blast::ApexImporter::ApexImportTool::m_Cooking`[protected]`

physx::PxFoundation* Nv::Blast::ApexImporter::ApexImportTool::m_Foundation`[protected]`

physx::PxPhysics* Nv::Blast::ApexImporter::ApexImportTool::m_PhysxSDK`[protected]`

The documentation for this class was generated from the following file:

- sdk/extensions/import/include/NvBlastExtApexImportTool.h