The format version of an asset may be obtained using the function
uint32_t assetVersion = NvBlastAssetGetFormatVersion(asset, logFn);
and likewise the format version of a family may be obtained using the function
uint32_t familyVersion = NvBlastAssetGetFormatVersion(family, logFn);
If the format version does not match the SDK's current version for one of these objects, the data may not be used with the current SDK. The NvBlastExtConverterLL extension will apply a chain of conversion functions to transform an asset or family from its stored version to any other version, provided that such a chain exists.
To apply it, simply use the function convertDataBlock. For example, given an asset pointer,
vector<char> inBlock, outBlock; inBlock.resize( NvBlastAssetGetSize(asset), logFn ); memcpy( inBlock.data(), asset, NvBlastAssetGetSize(asset) ); if ( convertDataBlock(outBlock, inBlock) ) { NvBlastAsset* convertedAsset = outBlock.data(); // Use convertedAsset here }