|
(cross-post to here, since I’m not getting a reply in the import/export forum)
I’m trying to get an FBX file, which was exported from Revit 2010, converted into Collada. However, the collada exporter seems broken since it crashes during export. The call stack shows it to be in KFbxGeometryConverter::TriangulateMesh().
Since there is no source code to this function I cannot track down the issue further and would appreciate assistance on how to solve this problem.
I’m working on Windows 7 (64-bit), the file was exported from Revit 2010 to FBX and is available at this location (21 MB).
I’m using the Revit 2010.2 SDK with Visual Studio 2008 (SP1) and am running the ImportExport example provided with the SDK.
The call stack at the crash point shows the following:
ImportExport.exe!fbxsdk_20102::KFbxLayerElementArray::GetCount()
ImportExport.exe!fbxsdk_20102::KFbxLayerElementUserData::Clear()
ImportExport.exe!fbxsdk_20102::KFbxLayerElementUserData::operator=()
ImportExport.exe!fbxsdk_20102::KFbxLayerElementUserData::KFbxLayerElementUserData()
ImportExport.exe!fbxsdk_20102::KFbxLayerElementUserData::Create()
ImportExport.exe!fbxsdk_20102::KFbxLayer::Clone()
ImportExport.exe!fbxsdk_20102::KFbxLayerContainer::CopyLayers()
ImportExport.exe!fbxsdk_20102::KFbxLayerContainer::operator=()
ImportExport.exe!fbxsdk_20102::KFbxGeometryBase::operator=()
ImportExport.exe!fbxsdk_20102::KFbxGeometry::operator=()
ImportExport.exe!fbxsdk_20102::KFbxMesh::operator=()
ImportExport.exe!fbxsdk_20102::KFbxGeometryConverter::TriangulateMesh()
ImportExport.exe!fbxsdk_20102::KFbxGeometryConverter::TriangulateInPlace()
ImportExport.exe!fbxsdk_20102::KFbxWriterCollada::ExportNodeAttribute()
ImportExport.exe!fbxsdk_20102::KFbxWriterCollada::ExportNode()
ImportExport.exe!fbxsdk_20102::KFbxWriterCollada::ExportNodeRecursive()
ImportExport.exe!fbxsdk_20102::KFbxWriterCollada::ExportScene()
ImportExport.exe!fbxsdk_20102::KFbxWriterCollada::Write()
ImportExport.exe!fbxsdk_20102::KFbxExporter::Export()
ImportExport.exe!SaveScene() Line 320
ImportExport.exe!ImportExport() Line 85
ImportExport.exe!ExecuteImportExport() Line 557
ImportExport.exe!WndProc() Line 254
The error is an access violation (0xC0000005) reading location 0x00000014 which leads me to believe some bad pointer is being used.
I would like to know if this issue can be circumvented using the current SDK or a prior version. I found a post pointing to the use of the TriangulateMesh2() somewhere and I tried that approach but it crashed as well.
Thanks,
George
|