From 35f9517510ef9f8f134806a45ec56572707c6856 Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Mon, 3 Jun 2019 22:34:22 +0200 Subject: [PATCH 01/24] Fix dox Fix the assimp.net link --- Readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Readme.md b/Readme.md index 19e43a3cb..51d394236 100644 --- a/Readme.md +++ b/Readme.md @@ -125,7 +125,7 @@ Take a look into the https://github.com/assimp/assimp/blob/master/Build.md file. ### Ports ### * [Android](port/AndroidJNI/README.md) * [Python](port/PyAssimp/README.md) -* [.NET](port/AssimpNET/Readme.md) +* [.NET](https://github.com/kebby/assimp-net) * [Pascal](port/AssimpPascal/Readme.md) * [Javascript (Alpha)](https://github.com/makc/assimp2json) * [Unity 3d Plugin](https://www.assetstore.unity3d.com/en/#!/content/91777) From 4d66b332534467af9a5580b8ff67906aa9c6455d Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Mon, 3 Jun 2019 22:36:57 +0200 Subject: [PATCH 02/24] Update Readme.md Fix wrong link --- port/AssimpNET/Readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/port/AssimpNET/Readme.md b/port/AssimpNET/Readme.md index bcbfebab1..814cab3e0 100644 --- a/port/AssimpNET/Readme.md +++ b/port/AssimpNET/Readme.md @@ -1 +1 @@ -Please check the following git-repo for the source: https://bitbucket.org/Starnick/assimpnet +Please check the following git-repo for the source: https://github.com/kebby/assimp-net From 1855bf44f9d697fab214ae300d77f89cfd52b6a3 Mon Sep 17 00:00:00 2001 From: petrmohelnik Date: Wed, 5 Jun 2019 18:51:49 +0200 Subject: [PATCH 03/24] glTF importer - clean all member arrays When importing more than one scene using the same gtlf importer loading fails with error 'bad array new length'. This happens because 'meshOffsets' are not cleared and the importer continues to push_back values at the end. Adjacent values are then used to calculate the length of 'mMeshes' array. This calculation expects that each value is higher than the previous otherwise we get negative length. But when pushin at the end of uncleared array we get contents like this: 0,1,2,3,0,1,2. Then when calculating 0-3 we try to allocate array of length -3 and get this exception. --- code/glTF2Importer.cpp | 6 +++++- code/glTFImporter.cpp | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/code/glTF2Importer.cpp b/code/glTF2Importer.cpp index bb0f7ad8d..42c58adf9 100755 --- a/code/glTF2Importer.cpp +++ b/code/glTF2Importer.cpp @@ -1130,7 +1130,11 @@ void glTF2Importer::ImportEmbeddedTextures(glTF2::Asset& r) } } -void glTF2Importer::InternReadFile(const std::string& pFile, aiScene* pScene, IOSystem* pIOHandler) { +void glTF2Importer::InternReadFile(const std::string& pFile, aiScene* pScene, IOSystem* pIOHandler) +{ + // clean all member arrays + meshOffsets.clear(); + embeddedTexIdxs.clear(); this->mScene = pScene; diff --git a/code/glTFImporter.cpp b/code/glTFImporter.cpp index 57566b463..c9a00808c 100755 --- a/code/glTFImporter.cpp +++ b/code/glTFImporter.cpp @@ -717,7 +717,11 @@ void glTFImporter::ImportEmbeddedTextures(glTF::Asset& r) } } -void glTFImporter::InternReadFile(const std::string& pFile, aiScene* pScene, IOSystem* pIOHandler) { +void glTFImporter::InternReadFile(const std::string& pFile, aiScene* pScene, IOSystem* pIOHandler) +{ + // clean all member arrays + meshOffsets.clear(); + embeddedTexIdxs.clear(); this->mScene = pScene; From 57c46db04256671878b0b87b18a88645ee448fa1 Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Thu, 6 Jun 2019 14:45:43 +0200 Subject: [PATCH 04/24] Reorg of code. --- code/{ => 3DS}/3DSConverter.cpp | 0 code/{ => 3DS}/3DSExporter.cpp | 0 code/{ => 3DS}/3DSExporter.h | 0 code/{ => 3DS}/3DSHelper.h | 0 code/{ => 3DS}/3DSLoader.cpp | 0 code/{ => 3DS}/3DSLoader.h | 0 code/{ => 3MF}/3MFXmlTags.h | 0 code/{ => 3MF}/D3MFExporter.cpp | 0 code/{ => 3MF}/D3MFExporter.h | 0 code/{ => 3MF}/D3MFImporter.cpp | 0 code/{ => 3MF}/D3MFImporter.h | 0 code/{ => 3MF}/D3MFOpcPackage.cpp | 0 code/{ => 3MF}/D3MFOpcPackage.h | 0 code/{ => AC}/ACLoader.cpp | 0 code/{ => AC}/ACLoader.h | 0 code/{ => AMF}/AMFImporter.cpp | 0 code/{ => AMF}/AMFImporter.hpp | 0 code/{ => AMF}/AMFImporter_Geometry.cpp | 0 code/{ => AMF}/AMFImporter_Macro.hpp | 0 code/{ => AMF}/AMFImporter_Material.cpp | 0 code/{ => AMF}/AMFImporter_Node.hpp | 0 code/{ => AMF}/AMFImporter_Postprocess.cpp | 0 code/{ => ASE}/ASELoader.cpp | 0 code/{ => ASE}/ASELoader.h | 0 code/{ => ASE}/ASEParser.cpp | 0 code/{ => ASE}/ASEParser.h | 0 code/{ => Assbin}/AssbinExporter.cpp | 0 code/{ => Assbin}/AssbinExporter.h | 0 code/{ => Assbin}/AssbinLoader.cpp | 0 code/{ => Assbin}/AssbinLoader.h | 0 code/{ => Assxml}/AssxmlExporter.cpp | 0 code/{ => Assxml}/AssxmlExporter.h | 0 code/{ => B3D}/B3DImporter.cpp | 0 code/{ => B3D}/B3DImporter.h | 0 code/{ => BVH}/BVHLoader.cpp | 0 code/{ => BVH}/BVHLoader.h | 0 code/{ => Blender}/BlenderBMesh.cpp | 0 code/{ => Blender}/BlenderBMesh.h | 0 code/{ => Blender}/BlenderCustomData.cpp | 0 code/{ => Blender}/BlenderCustomData.h | 0 code/{ => Blender}/BlenderDNA.cpp | 0 code/{ => Blender}/BlenderDNA.h | 0 code/{ => Blender}/BlenderDNA.inl | 0 code/{ => Blender}/BlenderIntermediate.h | 0 code/{ => Blender}/BlenderLoader.cpp | 0 code/{ => Blender}/BlenderLoader.h | 0 code/{ => Blender}/BlenderModifier.cpp | 0 code/{ => Blender}/BlenderModifier.h | 0 code/{ => Blender}/BlenderScene.cpp | 0 code/{ => Blender}/BlenderScene.h | 0 code/{ => Blender}/BlenderSceneGen.h | 0 code/{ => Blender}/BlenderTessellator.cpp | 0 code/{ => Blender}/BlenderTessellator.h | 0 code/{ => C4D}/C4DImporter.cpp | 0 code/{ => C4D}/C4DImporter.h | 0 code/{ => CApi}/AssimpCExport.cpp | 0 code/{ => CApi}/CInterfaceIOWrapper.cpp | 0 code/{ => CApi}/CInterfaceIOWrapper.h | 0 code/{ => COB}/COBLoader.cpp | 0 code/{ => COB}/COBLoader.h | 0 code/{ => COB}/COBScene.h | 0 code/{ => CSM}/CSMLoader.cpp | 0 code/{ => CSM}/CSMLoader.h | 0 code/{ => Collada}/ColladaExporter.cpp | 0 code/{ => Collada}/ColladaExporter.h | 0 code/{ => Collada}/ColladaHelper.h | 0 code/{ => Collada}/ColladaLoader.cpp | 0 code/{ => Collada}/ColladaLoader.h | 0 code/{ => Collada}/ColladaParser.cpp | 0 code/{ => Collada}/ColladaParser.h | 0 code/{ => Common}/Assimp.cpp | 0 code/{ => Common}/BaseImporter.cpp | 0 code/{ => Common}/BaseProcess.cpp | 0 code/{ => Common}/BaseProcess.h | 0 code/{ => Common}/Bitmap.cpp | 0 code/{ => Common}/CreateAnimMesh.cpp | 0 code/{ => Common}/DefaultIOStream.cpp | 0 code/{ => Common}/DefaultIOSystem.cpp | 0 code/{ => Common}/DefaultLogger.cpp | 0 code/{ => Common}/DefaultProgressHandler.h | 0 code/{ => Common}/Exporter.cpp | 0 code/{ => Common}/FIReader.cpp | 0 code/{ => Common}/FIReader.hpp | 0 code/{ => Common}/FileLogStream.h | 0 code/{ => Common}/FileSystemFilter.h | 0 code/{ => Common}/Importer.cpp | 0 code/{ => Common}/Importer.h | 0 code/{ => Common}/ImporterRegistry.cpp | 0 code/{ => Common}/PolyTools.h | 0 code/{ => Common}/SceneCombiner.cpp | 0 code/{ => Common}/ScenePrivate.h | 0 code/{ => Common}/SkeletonMeshBuilder.cpp | 0 code/{ => Common}/StandardShapes.cpp | 0 code/{ => Common}/StdOStreamLogStream.h | 0 code/{ => Common}/Subdivision.cpp | 0 code/{ => Common}/TargetAnimation.cpp | 0 code/{ => Common}/TargetAnimation.h | 0 code/{ => Common}/Version.cpp | 0 code/{ => Common}/Win32DebugLogStream.h | 0 code/{ => Common}/assbin_chunks.h | 0 code/{ => Common}/scene.cpp | 0 code/{ => Common}/simd.cpp | 0 code/{ => Common}/simd.h | 0 code/{ => DXF}/DXFHelper.h | 0 code/{ => DXF}/DXFLoader.cpp | 0 code/{ => DXF}/DXFLoader.h | 0 code/{ => FBX}/FBXAnimation.cpp | 0 code/{ => FBX}/FBXBinaryTokenizer.cpp | 0 code/{ => FBX}/FBXCommon.h | 0 code/{ => FBX}/FBXCompileConfig.h | 0 code/{ => FBX}/FBXConverter.cpp | 0 code/{ => FBX}/FBXConverter.h | 0 code/{ => FBX}/FBXDeformer.cpp | 0 code/{ => FBX}/FBXDocument.cpp | 0 code/{ => FBX}/FBXDocument.h | 0 code/{ => FBX}/FBXDocumentUtil.cpp | 0 code/{ => FBX}/FBXDocumentUtil.h | 0 code/{ => FBX}/FBXExportNode.cpp | 0 code/{ => FBX}/FBXExportNode.h | 0 code/{ => FBX}/FBXExportProperty.cpp | 0 code/{ => FBX}/FBXExportProperty.h | 0 code/{ => FBX}/FBXExporter.cpp | 0 code/{ => FBX}/FBXExporter.h | 0 code/{ => FBX}/FBXImportSettings.h | 0 code/{ => FBX}/FBXImporter.cpp | 0 code/{ => FBX}/FBXImporter.h | 0 code/{ => FBX}/FBXMaterial.cpp | 0 code/{ => FBX}/FBXMeshGeometry.cpp | 0 code/{ => FBX}/FBXMeshGeometry.h | 0 code/{ => FBX}/FBXModel.cpp | 0 code/{ => FBX}/FBXNodeAttribute.cpp | 0 code/{ => FBX}/FBXParser.cpp | 0 code/{ => FBX}/FBXParser.h | 0 code/{ => FBX}/FBXProperties.cpp | 0 code/{ => FBX}/FBXProperties.h | 0 code/{ => FBX}/FBXTokenizer.cpp | 0 code/{ => FBX}/FBXTokenizer.h | 0 code/{ => FBX}/FBXUtil.cpp | 0 code/{ => FBX}/FBXUtil.h | 0 code/{ => HMP}/HMPFileData.h | 0 code/{ => HMP}/HMPLoader.cpp | 0 code/{ => HMP}/HMPLoader.h | 0 code/{ => HMP}/HalfLifeFileData.h | 0 code/{ => Irr}/IRRLoader.cpp | 0 code/{ => Irr}/IRRLoader.h | 0 code/{ => Irr}/IRRMeshLoader.cpp | 0 code/{ => Irr}/IRRMeshLoader.h | 0 code/{ => Irr}/IRRShared.cpp | 0 code/{ => Irr}/IRRShared.h | 0 code/{ => LWO}/LWOAnimation.cpp | 0 code/{ => LWO}/LWOAnimation.h | 0 code/{ => LWO}/LWOBLoader.cpp | 0 code/{ => LWO}/LWOFileData.h | 0 code/{ => LWO}/LWOLoader.cpp | 0 code/{ => LWO}/LWOLoader.h | 0 code/{ => LWO}/LWOMaterial.cpp | 0 code/{ => LWS}/LWSLoader.cpp | 0 code/{ => LWS}/LWSLoader.h | 0 code/{ => MD2}/MD2FileData.h | 0 code/{ => MD2}/MD2Loader.cpp | 0 code/{ => MD2}/MD2Loader.h | 0 code/{ => MD2}/MD2NormalTable.h | 0 code/{ => MD3}/MD3FileData.h | 0 code/{ => MD3}/MD3Loader.cpp | 0 code/{ => MD3}/MD3Loader.h | 0 code/{ => MD4}/MD4FileData.h | 0 code/{ => MD5}/MD5Loader.cpp | 0 code/{ => MD5}/MD5Loader.h | 0 code/{ => MD5}/MD5Parser.cpp | 0 code/{ => MD5}/MD5Parser.h | 0 code/{ => MDC}/MDCFileData.h | 0 code/{ => MDC}/MDCLoader.cpp | 0 code/{ => MDC}/MDCLoader.h | 0 code/{ => MDC}/MDCNormalTable.h | 0 code/{ => MDL}/MDLDefaultColorMap.h | 0 code/{ => MDL}/MDLFileData.h | 0 code/{ => MDL}/MDLLoader.cpp | 0 code/{ => MDL}/MDLLoader.h | 0 code/{ => MDL}/MDLMaterialLoader.cpp | 0 code/{ => MMD}/MMDCpp14.h | 0 code/{ => MMD}/MMDImporter.cpp | 0 code/{ => MMD}/MMDImporter.h | 0 code/{ => MMD}/MMDPmdParser.h | 0 code/{ => MMD}/MMDPmxParser.cpp | 0 code/{ => MMD}/MMDPmxParser.h | 0 code/{ => MMD}/MMDVmdParser.h | 0 code/{ => MS3D}/MS3DLoader.cpp | 0 code/{ => MS3D}/MS3DLoader.h | 0 code/{ => Material}/MaterialSystem.cpp | 0 code/{ => Material}/MaterialSystem.h | 0 code/{ => NDO}/NDOLoader.cpp | 0 code/{ => NDO}/NDOLoader.h | 0 code/{ => NFF}/NFFLoader.cpp | 0 code/{ => NFF}/NFFLoader.h | 0 code/{ => OFF}/OFFLoader.cpp | 0 code/{ => OFF}/OFFLoader.h | 0 code/{ => Obj}/ObjExporter.cpp | 0 code/{ => Obj}/ObjExporter.h | 0 code/{ => Obj}/ObjFileData.h | 0 code/{ => Obj}/ObjFileImporter.cpp | 0 code/{ => Obj}/ObjFileImporter.h | 0 code/{ => Obj}/ObjFileMtlImporter.cpp | 0 code/{ => Obj}/ObjFileMtlImporter.h | 0 code/{ => Obj}/ObjFileParser.cpp | 0 code/{ => Obj}/ObjFileParser.h | 0 code/{ => Obj}/ObjTools.h | 0 code/{ => Ogre}/OgreBinarySerializer.cpp | 0 code/{ => Ogre}/OgreBinarySerializer.h | 0 code/{ => Ogre}/OgreImporter.cpp | 0 code/{ => Ogre}/OgreImporter.h | 0 code/{ => Ogre}/OgreMaterial.cpp | 0 code/{ => Ogre}/OgreParsingUtils.h | 0 code/{ => Ogre}/OgreStructs.cpp | 0 code/{ => Ogre}/OgreStructs.h | 0 code/{ => Ogre}/OgreXmlSerializer.cpp | 0 code/{ => Ogre}/OgreXmlSerializer.h | 0 code/{OpenGEXExporter.cpp => OpenGEX/MDLMaterialLoader.cpp} | 0 code/{OpenGEXExporter.h => OpenGEX/MDLMaterialLoader.h} | 0 code/{ => OpenGEX}/OpenGEXImporter.cpp | 0 code/{ => OpenGEX}/OpenGEXImporter.h | 0 code/{ => OpenGEX}/OpenGEXStructs.h | 0 code/{ => Ply}/PlyExporter.cpp | 0 code/{ => Ply}/PlyExporter.h | 0 code/{ => Ply}/PlyLoader.cpp | 0 code/{ => Ply}/PlyLoader.h | 0 code/{ => Ply}/PlyParser.cpp | 0 code/{ => Ply}/PlyParser.h | 0 code/{ => PostProcessing}/CalcTangentsProcess.cpp | 0 code/{ => PostProcessing}/CalcTangentsProcess.h | 0 code/{ => PostProcessing}/ComputeUVMappingProcess.cpp | 0 code/{ => PostProcessing}/ComputeUVMappingProcess.h | 0 code/{ => PostProcessing}/ConvertToLHProcess.cpp | 0 code/{ => PostProcessing}/ConvertToLHProcess.h | 0 code/{ => PostProcessing}/DeboneProcess.cpp | 0 code/{ => PostProcessing}/DeboneProcess.h | 0 code/{ => PostProcessing}/DropFaceNormalsProcess.cpp | 0 code/{ => PostProcessing}/DropFaceNormalsProcess.h | 0 code/{ => PostProcessing}/EmbedTexturesProcess.cpp | 0 code/{ => PostProcessing}/EmbedTexturesProcess.h | 0 code/{ => PostProcessing}/FindDegenerates.cpp | 0 code/{ => PostProcessing}/FindDegenerates.h | 0 code/{ => PostProcessing}/FindInstancesProcess.cpp | 0 code/{ => PostProcessing}/FindInstancesProcess.h | 0 code/{ => PostProcessing}/FindInvalidDataProcess.cpp | 0 code/{ => PostProcessing}/FindInvalidDataProcess.h | 0 code/{ => PostProcessing}/FixNormalsStep.cpp | 0 code/{ => PostProcessing}/FixNormalsStep.h | 0 code/{ => PostProcessing}/GenFaceNormalsProcess.cpp | 0 code/{ => PostProcessing}/GenFaceNormalsProcess.h | 0 code/{ => PostProcessing}/GenVertexNormalsProcess.cpp | 0 code/{ => PostProcessing}/GenVertexNormalsProcess.h | 0 code/{ => PostProcessing}/ImproveCacheLocality.cpp | 0 code/{ => PostProcessing}/ImproveCacheLocality.h | 0 code/{ => PostProcessing}/JoinVerticesProcess.cpp | 0 code/{ => PostProcessing}/JoinVerticesProcess.h | 0 code/{ => PostProcessing}/LimitBoneWeightsProcess.cpp | 0 code/{ => PostProcessing}/LimitBoneWeightsProcess.h | 0 code/{ => PostProcessing}/MakeVerboseFormat.cpp | 0 code/{ => PostProcessing}/MakeVerboseFormat.h | 0 code/{ => PostProcessing}/OptimizeGraph.cpp | 0 code/{ => PostProcessing}/OptimizeGraph.h | 0 code/{ => PostProcessing}/OptimizeMeshes.cpp | 0 code/{ => PostProcessing}/OptimizeMeshes.h | 0 code/{ => PostProcessing}/PostStepRegistry.cpp | 0 code/{ => PostProcessing}/PretransformVertices.cpp | 0 code/{ => PostProcessing}/PretransformVertices.h | 0 code/{ => PostProcessing}/ProcessHelper.cpp | 0 code/{ => PostProcessing}/ProcessHelper.h | 0 code/{ => PostProcessing}/RemoveComments.cpp | 0 code/{ => PostProcessing}/RemoveRedundantMaterials.cpp | 0 code/{ => PostProcessing}/RemoveRedundantMaterials.h | 0 code/{ => PostProcessing}/RemoveVCProcess.cpp | 0 code/{ => PostProcessing}/RemoveVCProcess.h | 0 code/{ => PostProcessing}/SGSpatialSort.cpp | 0 code/{ => PostProcessing}/ScaleProcess.cpp | 0 code/{ => PostProcessing}/ScaleProcess.h | 0 code/{ => PostProcessing}/ScenePreprocessor.cpp | 0 code/{ => PostProcessing}/ScenePreprocessor.h | 0 code/{ => PostProcessing}/SortByPTypeProcess.cpp | 0 code/{ => PostProcessing}/SortByPTypeProcess.h | 0 code/{ => PostProcessing}/SpatialSort.cpp | 0 code/{ => PostProcessing}/SplitByBoneCountProcess.cpp | 0 code/{ => PostProcessing}/SplitByBoneCountProcess.h | 0 code/{ => PostProcessing}/SplitLargeMeshes.cpp | 0 code/{ => PostProcessing}/SplitLargeMeshes.h | 0 code/{ => PostProcessing}/TextureTransform.cpp | 0 code/{ => PostProcessing}/TextureTransform.h | 0 code/{ => PostProcessing}/TriangulateProcess.cpp | 0 code/{ => PostProcessing}/TriangulateProcess.h | 0 code/{ => PostProcessing}/ValidateDataStructure.cpp | 0 code/{ => PostProcessing}/ValidateDataStructure.h | 0 code/{ => PostProcessing}/VertexTriangleAdjacency.cpp | 0 code/{ => PostProcessing}/VertexTriangleAdjacency.h | 0 code/{ => Q3BSP}/Q3BSPFileData.h | 0 code/{ => Q3BSP}/Q3BSPFileImporter.cpp | 0 code/{ => Q3BSP}/Q3BSPFileImporter.h | 0 code/{ => Q3BSP}/Q3BSPFileParser.cpp | 0 code/{ => Q3BSP}/Q3BSPFileParser.h | 0 code/{ => Q3BSP}/Q3BSPZipArchive.cpp | 0 code/{ => Q3BSP}/Q3BSPZipArchive.h | 0 code/{ => Q3D}/Q3DLoader.cpp | 0 code/{ => Q3D}/Q3DLoader.h | 0 code/{ => Raw}/RawLoader.cpp | 0 code/{ => Raw}/RawLoader.h | 0 code/{ => SIB}/SIBImporter.cpp | 0 code/{ => SIB}/SIBImporter.h | 0 code/{ => SMD}/SMDLoader.cpp | 0 code/{ => SMD}/SMDLoader.h | 0 code/{ => STL}/STLExporter.cpp | 0 code/{ => STL}/STLExporter.h | 0 code/{ => STL}/STLLoader.cpp | 0 code/{ => STL}/STLLoader.h | 0 code/{ => Step}/STEPFile.h | 0 code/{ => Step}/StepExporter.cpp | 0 code/{ => Step}/StepExporter.h | 0 code/{ => Terragen}/TerragenLoader.cpp | 0 code/{ => Terragen}/TerragenLoader.h | 0 code/{ => Unreal}/UnrealLoader.cpp | 0 code/{ => Unreal}/UnrealLoader.h | 0 code/{ => X}/XFileExporter.cpp | 0 code/{ => X}/XFileExporter.h | 0 code/{ => X}/XFileHelper.h | 0 code/{ => X}/XFileImporter.cpp | 0 code/{ => X}/XFileImporter.h | 0 code/{ => X}/XFileParser.cpp | 0 code/{ => X}/XFileParser.h | 0 code/{ => X3D}/X3DExporter.cpp | 0 code/{ => X3D}/X3DExporter.hpp | 0 code/{ => X3D}/X3DImporter.cpp | 0 code/{ => X3D}/X3DImporter.hpp | 0 code/{ => X3D}/X3DImporter_Geometry2D.cpp | 0 code/{ => X3D}/X3DImporter_Geometry3D.cpp | 0 code/{ => X3D}/X3DImporter_Group.cpp | 0 code/{ => X3D}/X3DImporter_Light.cpp | 0 code/{ => X3D}/X3DImporter_Macro.hpp | 0 code/{ => X3D}/X3DImporter_Metadata.cpp | 0 code/{ => X3D}/X3DImporter_Networking.cpp | 0 code/{ => X3D}/X3DImporter_Node.hpp | 0 code/{ => X3D}/X3DImporter_Postprocess.cpp | 0 code/{ => X3D}/X3DImporter_Rendering.cpp | 0 code/{ => X3D}/X3DImporter_Shape.cpp | 0 code/{ => X3D}/X3DImporter_Texturing.cpp | 0 code/{ => X3D}/X3DVocabulary.cpp | 0 code/{ => XGL}/XGLLoader.cpp | 0 code/{ => XGL}/XGLLoader.h | 0 code/{ => glTF}/glTFAsset.h | 0 code/{ => glTF}/glTFAsset.inl | 0 code/{ => glTF}/glTFAssetWriter.h | 0 code/{ => glTF}/glTFAssetWriter.inl | 0 code/{ => glTF}/glTFExporter.cpp | 0 code/{ => glTF}/glTFExporter.h | 0 code/{ => glTF}/glTFImporter.cpp | 0 code/{ => glTF}/glTFImporter.h | 0 code/{ => glTF2}/glTF2Asset.h | 0 code/{ => glTF2}/glTF2Asset.inl | 0 code/{ => glTF2}/glTF2AssetWriter.h | 0 code/{ => glTF2}/glTF2AssetWriter.inl | 0 code/{ => glTF2}/glTF2Exporter.cpp | 0 code/{ => glTF2}/glTF2Exporter.h | 0 code/{ => glTF2}/glTF2Importer.cpp | 0 code/{ => glTF2}/glTF2Importer.h | 0 361 files changed, 0 insertions(+), 0 deletions(-) rename code/{ => 3DS}/3DSConverter.cpp (100%) rename code/{ => 3DS}/3DSExporter.cpp (100%) rename code/{ => 3DS}/3DSExporter.h (100%) rename code/{ => 3DS}/3DSHelper.h (100%) rename code/{ => 3DS}/3DSLoader.cpp (100%) rename code/{ => 3DS}/3DSLoader.h (100%) rename code/{ => 3MF}/3MFXmlTags.h (100%) rename code/{ => 3MF}/D3MFExporter.cpp (100%) rename code/{ => 3MF}/D3MFExporter.h (100%) rename code/{ => 3MF}/D3MFImporter.cpp (100%) rename code/{ => 3MF}/D3MFImporter.h (100%) rename code/{ => 3MF}/D3MFOpcPackage.cpp (100%) rename code/{ => 3MF}/D3MFOpcPackage.h (100%) rename code/{ => AC}/ACLoader.cpp (100%) rename code/{ => AC}/ACLoader.h (100%) rename code/{ => AMF}/AMFImporter.cpp (100%) rename code/{ => AMF}/AMFImporter.hpp (100%) rename code/{ => AMF}/AMFImporter_Geometry.cpp (100%) rename code/{ => AMF}/AMFImporter_Macro.hpp (100%) rename code/{ => AMF}/AMFImporter_Material.cpp (100%) rename code/{ => AMF}/AMFImporter_Node.hpp (100%) rename code/{ => AMF}/AMFImporter_Postprocess.cpp (100%) rename code/{ => ASE}/ASELoader.cpp (100%) rename code/{ => ASE}/ASELoader.h (100%) rename code/{ => ASE}/ASEParser.cpp (100%) rename code/{ => ASE}/ASEParser.h (100%) rename code/{ => Assbin}/AssbinExporter.cpp (100%) rename code/{ => Assbin}/AssbinExporter.h (100%) rename code/{ => Assbin}/AssbinLoader.cpp (100%) rename code/{ => Assbin}/AssbinLoader.h (100%) rename code/{ => Assxml}/AssxmlExporter.cpp (100%) rename code/{ => Assxml}/AssxmlExporter.h (100%) rename code/{ => B3D}/B3DImporter.cpp (100%) rename code/{ => B3D}/B3DImporter.h (100%) rename code/{ => BVH}/BVHLoader.cpp (100%) rename code/{ => BVH}/BVHLoader.h (100%) rename code/{ => Blender}/BlenderBMesh.cpp (100%) rename code/{ => Blender}/BlenderBMesh.h (100%) rename code/{ => Blender}/BlenderCustomData.cpp (100%) rename code/{ => Blender}/BlenderCustomData.h (100%) rename code/{ => Blender}/BlenderDNA.cpp (100%) rename code/{ => Blender}/BlenderDNA.h (100%) rename code/{ => Blender}/BlenderDNA.inl (100%) rename code/{ => Blender}/BlenderIntermediate.h (100%) rename code/{ => Blender}/BlenderLoader.cpp (100%) rename code/{ => Blender}/BlenderLoader.h (100%) rename code/{ => Blender}/BlenderModifier.cpp (100%) rename code/{ => Blender}/BlenderModifier.h (100%) rename code/{ => Blender}/BlenderScene.cpp (100%) rename code/{ => Blender}/BlenderScene.h (100%) rename code/{ => Blender}/BlenderSceneGen.h (100%) rename code/{ => Blender}/BlenderTessellator.cpp (100%) rename code/{ => Blender}/BlenderTessellator.h (100%) rename code/{ => C4D}/C4DImporter.cpp (100%) rename code/{ => C4D}/C4DImporter.h (100%) rename code/{ => CApi}/AssimpCExport.cpp (100%) rename code/{ => CApi}/CInterfaceIOWrapper.cpp (100%) rename code/{ => CApi}/CInterfaceIOWrapper.h (100%) rename code/{ => COB}/COBLoader.cpp (100%) rename code/{ => COB}/COBLoader.h (100%) rename code/{ => COB}/COBScene.h (100%) rename code/{ => CSM}/CSMLoader.cpp (100%) rename code/{ => CSM}/CSMLoader.h (100%) rename code/{ => Collada}/ColladaExporter.cpp (100%) rename code/{ => Collada}/ColladaExporter.h (100%) rename code/{ => Collada}/ColladaHelper.h (100%) rename code/{ => Collada}/ColladaLoader.cpp (100%) rename code/{ => Collada}/ColladaLoader.h (100%) rename code/{ => Collada}/ColladaParser.cpp (100%) rename code/{ => Collada}/ColladaParser.h (100%) rename code/{ => Common}/Assimp.cpp (100%) rename code/{ => Common}/BaseImporter.cpp (100%) rename code/{ => Common}/BaseProcess.cpp (100%) rename code/{ => Common}/BaseProcess.h (100%) rename code/{ => Common}/Bitmap.cpp (100%) rename code/{ => Common}/CreateAnimMesh.cpp (100%) rename code/{ => Common}/DefaultIOStream.cpp (100%) rename code/{ => Common}/DefaultIOSystem.cpp (100%) rename code/{ => Common}/DefaultLogger.cpp (100%) rename code/{ => Common}/DefaultProgressHandler.h (100%) rename code/{ => Common}/Exporter.cpp (100%) rename code/{ => Common}/FIReader.cpp (100%) rename code/{ => Common}/FIReader.hpp (100%) rename code/{ => Common}/FileLogStream.h (100%) rename code/{ => Common}/FileSystemFilter.h (100%) rename code/{ => Common}/Importer.cpp (100%) rename code/{ => Common}/Importer.h (100%) rename code/{ => Common}/ImporterRegistry.cpp (100%) rename code/{ => Common}/PolyTools.h (100%) rename code/{ => Common}/SceneCombiner.cpp (100%) rename code/{ => Common}/ScenePrivate.h (100%) rename code/{ => Common}/SkeletonMeshBuilder.cpp (100%) rename code/{ => Common}/StandardShapes.cpp (100%) rename code/{ => Common}/StdOStreamLogStream.h (100%) rename code/{ => Common}/Subdivision.cpp (100%) rename code/{ => Common}/TargetAnimation.cpp (100%) rename code/{ => Common}/TargetAnimation.h (100%) rename code/{ => Common}/Version.cpp (100%) rename code/{ => Common}/Win32DebugLogStream.h (100%) rename code/{ => Common}/assbin_chunks.h (100%) rename code/{ => Common}/scene.cpp (100%) rename code/{ => Common}/simd.cpp (100%) rename code/{ => Common}/simd.h (100%) rename code/{ => DXF}/DXFHelper.h (100%) rename code/{ => DXF}/DXFLoader.cpp (100%) rename code/{ => DXF}/DXFLoader.h (100%) rename code/{ => FBX}/FBXAnimation.cpp (100%) rename code/{ => FBX}/FBXBinaryTokenizer.cpp (100%) rename code/{ => FBX}/FBXCommon.h (100%) rename code/{ => FBX}/FBXCompileConfig.h (100%) rename code/{ => FBX}/FBXConverter.cpp (100%) rename code/{ => FBX}/FBXConverter.h (100%) rename code/{ => FBX}/FBXDeformer.cpp (100%) rename code/{ => FBX}/FBXDocument.cpp (100%) rename code/{ => FBX}/FBXDocument.h (100%) rename code/{ => FBX}/FBXDocumentUtil.cpp (100%) rename code/{ => FBX}/FBXDocumentUtil.h (100%) rename code/{ => FBX}/FBXExportNode.cpp (100%) rename code/{ => FBX}/FBXExportNode.h (100%) rename code/{ => FBX}/FBXExportProperty.cpp (100%) rename code/{ => FBX}/FBXExportProperty.h (100%) rename code/{ => FBX}/FBXExporter.cpp (100%) rename code/{ => FBX}/FBXExporter.h (100%) rename code/{ => FBX}/FBXImportSettings.h (100%) rename code/{ => FBX}/FBXImporter.cpp (100%) rename code/{ => FBX}/FBXImporter.h (100%) rename code/{ => FBX}/FBXMaterial.cpp (100%) rename code/{ => FBX}/FBXMeshGeometry.cpp (100%) rename code/{ => FBX}/FBXMeshGeometry.h (100%) rename code/{ => FBX}/FBXModel.cpp (100%) rename code/{ => FBX}/FBXNodeAttribute.cpp (100%) rename code/{ => FBX}/FBXParser.cpp (100%) rename code/{ => FBX}/FBXParser.h (100%) rename code/{ => FBX}/FBXProperties.cpp (100%) rename code/{ => FBX}/FBXProperties.h (100%) rename code/{ => FBX}/FBXTokenizer.cpp (100%) rename code/{ => FBX}/FBXTokenizer.h (100%) rename code/{ => FBX}/FBXUtil.cpp (100%) rename code/{ => FBX}/FBXUtil.h (100%) rename code/{ => HMP}/HMPFileData.h (100%) rename code/{ => HMP}/HMPLoader.cpp (100%) rename code/{ => HMP}/HMPLoader.h (100%) rename code/{ => HMP}/HalfLifeFileData.h (100%) rename code/{ => Irr}/IRRLoader.cpp (100%) rename code/{ => Irr}/IRRLoader.h (100%) rename code/{ => Irr}/IRRMeshLoader.cpp (100%) rename code/{ => Irr}/IRRMeshLoader.h (100%) rename code/{ => Irr}/IRRShared.cpp (100%) rename code/{ => Irr}/IRRShared.h (100%) rename code/{ => LWO}/LWOAnimation.cpp (100%) rename code/{ => LWO}/LWOAnimation.h (100%) rename code/{ => LWO}/LWOBLoader.cpp (100%) rename code/{ => LWO}/LWOFileData.h (100%) rename code/{ => LWO}/LWOLoader.cpp (100%) rename code/{ => LWO}/LWOLoader.h (100%) rename code/{ => LWO}/LWOMaterial.cpp (100%) rename code/{ => LWS}/LWSLoader.cpp (100%) rename code/{ => LWS}/LWSLoader.h (100%) rename code/{ => MD2}/MD2FileData.h (100%) rename code/{ => MD2}/MD2Loader.cpp (100%) rename code/{ => MD2}/MD2Loader.h (100%) rename code/{ => MD2}/MD2NormalTable.h (100%) rename code/{ => MD3}/MD3FileData.h (100%) rename code/{ => MD3}/MD3Loader.cpp (100%) rename code/{ => MD3}/MD3Loader.h (100%) rename code/{ => MD4}/MD4FileData.h (100%) rename code/{ => MD5}/MD5Loader.cpp (100%) rename code/{ => MD5}/MD5Loader.h (100%) rename code/{ => MD5}/MD5Parser.cpp (100%) rename code/{ => MD5}/MD5Parser.h (100%) rename code/{ => MDC}/MDCFileData.h (100%) rename code/{ => MDC}/MDCLoader.cpp (100%) rename code/{ => MDC}/MDCLoader.h (100%) rename code/{ => MDC}/MDCNormalTable.h (100%) rename code/{ => MDL}/MDLDefaultColorMap.h (100%) rename code/{ => MDL}/MDLFileData.h (100%) rename code/{ => MDL}/MDLLoader.cpp (100%) rename code/{ => MDL}/MDLLoader.h (100%) rename code/{ => MDL}/MDLMaterialLoader.cpp (100%) rename code/{ => MMD}/MMDCpp14.h (100%) rename code/{ => MMD}/MMDImporter.cpp (100%) rename code/{ => MMD}/MMDImporter.h (100%) rename code/{ => MMD}/MMDPmdParser.h (100%) rename code/{ => MMD}/MMDPmxParser.cpp (100%) rename code/{ => MMD}/MMDPmxParser.h (100%) rename code/{ => MMD}/MMDVmdParser.h (100%) rename code/{ => MS3D}/MS3DLoader.cpp (100%) rename code/{ => MS3D}/MS3DLoader.h (100%) rename code/{ => Material}/MaterialSystem.cpp (100%) rename code/{ => Material}/MaterialSystem.h (100%) rename code/{ => NDO}/NDOLoader.cpp (100%) rename code/{ => NDO}/NDOLoader.h (100%) rename code/{ => NFF}/NFFLoader.cpp (100%) rename code/{ => NFF}/NFFLoader.h (100%) rename code/{ => OFF}/OFFLoader.cpp (100%) rename code/{ => OFF}/OFFLoader.h (100%) rename code/{ => Obj}/ObjExporter.cpp (100%) rename code/{ => Obj}/ObjExporter.h (100%) rename code/{ => Obj}/ObjFileData.h (100%) rename code/{ => Obj}/ObjFileImporter.cpp (100%) rename code/{ => Obj}/ObjFileImporter.h (100%) rename code/{ => Obj}/ObjFileMtlImporter.cpp (100%) rename code/{ => Obj}/ObjFileMtlImporter.h (100%) rename code/{ => Obj}/ObjFileParser.cpp (100%) rename code/{ => Obj}/ObjFileParser.h (100%) rename code/{ => Obj}/ObjTools.h (100%) rename code/{ => Ogre}/OgreBinarySerializer.cpp (100%) rename code/{ => Ogre}/OgreBinarySerializer.h (100%) rename code/{ => Ogre}/OgreImporter.cpp (100%) rename code/{ => Ogre}/OgreImporter.h (100%) rename code/{ => Ogre}/OgreMaterial.cpp (100%) rename code/{ => Ogre}/OgreParsingUtils.h (100%) rename code/{ => Ogre}/OgreStructs.cpp (100%) rename code/{ => Ogre}/OgreStructs.h (100%) rename code/{ => Ogre}/OgreXmlSerializer.cpp (100%) rename code/{ => Ogre}/OgreXmlSerializer.h (100%) rename code/{OpenGEXExporter.cpp => OpenGEX/MDLMaterialLoader.cpp} (100%) rename code/{OpenGEXExporter.h => OpenGEX/MDLMaterialLoader.h} (100%) rename code/{ => OpenGEX}/OpenGEXImporter.cpp (100%) rename code/{ => OpenGEX}/OpenGEXImporter.h (100%) rename code/{ => OpenGEX}/OpenGEXStructs.h (100%) rename code/{ => Ply}/PlyExporter.cpp (100%) rename code/{ => Ply}/PlyExporter.h (100%) rename code/{ => Ply}/PlyLoader.cpp (100%) rename code/{ => Ply}/PlyLoader.h (100%) rename code/{ => Ply}/PlyParser.cpp (100%) rename code/{ => Ply}/PlyParser.h (100%) rename code/{ => PostProcessing}/CalcTangentsProcess.cpp (100%) rename code/{ => PostProcessing}/CalcTangentsProcess.h (100%) rename code/{ => PostProcessing}/ComputeUVMappingProcess.cpp (100%) rename code/{ => PostProcessing}/ComputeUVMappingProcess.h (100%) rename code/{ => PostProcessing}/ConvertToLHProcess.cpp (100%) rename code/{ => PostProcessing}/ConvertToLHProcess.h (100%) rename code/{ => PostProcessing}/DeboneProcess.cpp (100%) rename code/{ => PostProcessing}/DeboneProcess.h (100%) rename code/{ => PostProcessing}/DropFaceNormalsProcess.cpp (100%) rename code/{ => PostProcessing}/DropFaceNormalsProcess.h (100%) rename code/{ => PostProcessing}/EmbedTexturesProcess.cpp (100%) rename code/{ => PostProcessing}/EmbedTexturesProcess.h (100%) rename code/{ => PostProcessing}/FindDegenerates.cpp (100%) rename code/{ => PostProcessing}/FindDegenerates.h (100%) rename code/{ => PostProcessing}/FindInstancesProcess.cpp (100%) rename code/{ => PostProcessing}/FindInstancesProcess.h (100%) rename code/{ => PostProcessing}/FindInvalidDataProcess.cpp (100%) rename code/{ => PostProcessing}/FindInvalidDataProcess.h (100%) rename code/{ => PostProcessing}/FixNormalsStep.cpp (100%) rename code/{ => PostProcessing}/FixNormalsStep.h (100%) rename code/{ => PostProcessing}/GenFaceNormalsProcess.cpp (100%) rename code/{ => PostProcessing}/GenFaceNormalsProcess.h (100%) rename code/{ => PostProcessing}/GenVertexNormalsProcess.cpp (100%) rename code/{ => PostProcessing}/GenVertexNormalsProcess.h (100%) rename code/{ => PostProcessing}/ImproveCacheLocality.cpp (100%) rename code/{ => PostProcessing}/ImproveCacheLocality.h (100%) rename code/{ => PostProcessing}/JoinVerticesProcess.cpp (100%) rename code/{ => PostProcessing}/JoinVerticesProcess.h (100%) rename code/{ => PostProcessing}/LimitBoneWeightsProcess.cpp (100%) rename code/{ => PostProcessing}/LimitBoneWeightsProcess.h (100%) rename code/{ => PostProcessing}/MakeVerboseFormat.cpp (100%) rename code/{ => PostProcessing}/MakeVerboseFormat.h (100%) rename code/{ => PostProcessing}/OptimizeGraph.cpp (100%) rename code/{ => PostProcessing}/OptimizeGraph.h (100%) rename code/{ => PostProcessing}/OptimizeMeshes.cpp (100%) rename code/{ => PostProcessing}/OptimizeMeshes.h (100%) rename code/{ => PostProcessing}/PostStepRegistry.cpp (100%) rename code/{ => PostProcessing}/PretransformVertices.cpp (100%) rename code/{ => PostProcessing}/PretransformVertices.h (100%) rename code/{ => PostProcessing}/ProcessHelper.cpp (100%) rename code/{ => PostProcessing}/ProcessHelper.h (100%) rename code/{ => PostProcessing}/RemoveComments.cpp (100%) rename code/{ => PostProcessing}/RemoveRedundantMaterials.cpp (100%) rename code/{ => PostProcessing}/RemoveRedundantMaterials.h (100%) rename code/{ => PostProcessing}/RemoveVCProcess.cpp (100%) rename code/{ => PostProcessing}/RemoveVCProcess.h (100%) rename code/{ => PostProcessing}/SGSpatialSort.cpp (100%) rename code/{ => PostProcessing}/ScaleProcess.cpp (100%) rename code/{ => PostProcessing}/ScaleProcess.h (100%) rename code/{ => PostProcessing}/ScenePreprocessor.cpp (100%) rename code/{ => PostProcessing}/ScenePreprocessor.h (100%) rename code/{ => PostProcessing}/SortByPTypeProcess.cpp (100%) rename code/{ => PostProcessing}/SortByPTypeProcess.h (100%) rename code/{ => PostProcessing}/SpatialSort.cpp (100%) rename code/{ => PostProcessing}/SplitByBoneCountProcess.cpp (100%) rename code/{ => PostProcessing}/SplitByBoneCountProcess.h (100%) rename code/{ => PostProcessing}/SplitLargeMeshes.cpp (100%) rename code/{ => PostProcessing}/SplitLargeMeshes.h (100%) rename code/{ => PostProcessing}/TextureTransform.cpp (100%) rename code/{ => PostProcessing}/TextureTransform.h (100%) rename code/{ => PostProcessing}/TriangulateProcess.cpp (100%) rename code/{ => PostProcessing}/TriangulateProcess.h (100%) rename code/{ => PostProcessing}/ValidateDataStructure.cpp (100%) rename code/{ => PostProcessing}/ValidateDataStructure.h (100%) rename code/{ => PostProcessing}/VertexTriangleAdjacency.cpp (100%) rename code/{ => PostProcessing}/VertexTriangleAdjacency.h (100%) rename code/{ => Q3BSP}/Q3BSPFileData.h (100%) rename code/{ => Q3BSP}/Q3BSPFileImporter.cpp (100%) rename code/{ => Q3BSP}/Q3BSPFileImporter.h (100%) rename code/{ => Q3BSP}/Q3BSPFileParser.cpp (100%) rename code/{ => Q3BSP}/Q3BSPFileParser.h (100%) rename code/{ => Q3BSP}/Q3BSPZipArchive.cpp (100%) rename code/{ => Q3BSP}/Q3BSPZipArchive.h (100%) rename code/{ => Q3D}/Q3DLoader.cpp (100%) rename code/{ => Q3D}/Q3DLoader.h (100%) rename code/{ => Raw}/RawLoader.cpp (100%) rename code/{ => Raw}/RawLoader.h (100%) rename code/{ => SIB}/SIBImporter.cpp (100%) rename code/{ => SIB}/SIBImporter.h (100%) rename code/{ => SMD}/SMDLoader.cpp (100%) rename code/{ => SMD}/SMDLoader.h (100%) rename code/{ => STL}/STLExporter.cpp (100%) rename code/{ => STL}/STLExporter.h (100%) rename code/{ => STL}/STLLoader.cpp (100%) rename code/{ => STL}/STLLoader.h (100%) rename code/{ => Step}/STEPFile.h (100%) rename code/{ => Step}/StepExporter.cpp (100%) rename code/{ => Step}/StepExporter.h (100%) rename code/{ => Terragen}/TerragenLoader.cpp (100%) rename code/{ => Terragen}/TerragenLoader.h (100%) rename code/{ => Unreal}/UnrealLoader.cpp (100%) rename code/{ => Unreal}/UnrealLoader.h (100%) rename code/{ => X}/XFileExporter.cpp (100%) rename code/{ => X}/XFileExporter.h (100%) rename code/{ => X}/XFileHelper.h (100%) rename code/{ => X}/XFileImporter.cpp (100%) rename code/{ => X}/XFileImporter.h (100%) rename code/{ => X}/XFileParser.cpp (100%) rename code/{ => X}/XFileParser.h (100%) rename code/{ => X3D}/X3DExporter.cpp (100%) rename code/{ => X3D}/X3DExporter.hpp (100%) rename code/{ => X3D}/X3DImporter.cpp (100%) rename code/{ => X3D}/X3DImporter.hpp (100%) rename code/{ => X3D}/X3DImporter_Geometry2D.cpp (100%) rename code/{ => X3D}/X3DImporter_Geometry3D.cpp (100%) rename code/{ => X3D}/X3DImporter_Group.cpp (100%) rename code/{ => X3D}/X3DImporter_Light.cpp (100%) rename code/{ => X3D}/X3DImporter_Macro.hpp (100%) rename code/{ => X3D}/X3DImporter_Metadata.cpp (100%) rename code/{ => X3D}/X3DImporter_Networking.cpp (100%) rename code/{ => X3D}/X3DImporter_Node.hpp (100%) rename code/{ => X3D}/X3DImporter_Postprocess.cpp (100%) rename code/{ => X3D}/X3DImporter_Rendering.cpp (100%) rename code/{ => X3D}/X3DImporter_Shape.cpp (100%) rename code/{ => X3D}/X3DImporter_Texturing.cpp (100%) rename code/{ => X3D}/X3DVocabulary.cpp (100%) rename code/{ => XGL}/XGLLoader.cpp (100%) rename code/{ => XGL}/XGLLoader.h (100%) rename code/{ => glTF}/glTFAsset.h (100%) rename code/{ => glTF}/glTFAsset.inl (100%) rename code/{ => glTF}/glTFAssetWriter.h (100%) rename code/{ => glTF}/glTFAssetWriter.inl (100%) rename code/{ => glTF}/glTFExporter.cpp (100%) rename code/{ => glTF}/glTFExporter.h (100%) rename code/{ => glTF}/glTFImporter.cpp (100%) rename code/{ => glTF}/glTFImporter.h (100%) rename code/{ => glTF2}/glTF2Asset.h (100%) rename code/{ => glTF2}/glTF2Asset.inl (100%) rename code/{ => glTF2}/glTF2AssetWriter.h (100%) rename code/{ => glTF2}/glTF2AssetWriter.inl (100%) rename code/{ => glTF2}/glTF2Exporter.cpp (100%) rename code/{ => glTF2}/glTF2Exporter.h (100%) rename code/{ => glTF2}/glTF2Importer.cpp (100%) rename code/{ => glTF2}/glTF2Importer.h (100%) diff --git a/code/3DSConverter.cpp b/code/3DS/3DSConverter.cpp similarity index 100% rename from code/3DSConverter.cpp rename to code/3DS/3DSConverter.cpp diff --git a/code/3DSExporter.cpp b/code/3DS/3DSExporter.cpp similarity index 100% rename from code/3DSExporter.cpp rename to code/3DS/3DSExporter.cpp diff --git a/code/3DSExporter.h b/code/3DS/3DSExporter.h similarity index 100% rename from code/3DSExporter.h rename to code/3DS/3DSExporter.h diff --git a/code/3DSHelper.h b/code/3DS/3DSHelper.h similarity index 100% rename from code/3DSHelper.h rename to code/3DS/3DSHelper.h diff --git a/code/3DSLoader.cpp b/code/3DS/3DSLoader.cpp similarity index 100% rename from code/3DSLoader.cpp rename to code/3DS/3DSLoader.cpp diff --git a/code/3DSLoader.h b/code/3DS/3DSLoader.h similarity index 100% rename from code/3DSLoader.h rename to code/3DS/3DSLoader.h diff --git a/code/3MFXmlTags.h b/code/3MF/3MFXmlTags.h similarity index 100% rename from code/3MFXmlTags.h rename to code/3MF/3MFXmlTags.h diff --git a/code/D3MFExporter.cpp b/code/3MF/D3MFExporter.cpp similarity index 100% rename from code/D3MFExporter.cpp rename to code/3MF/D3MFExporter.cpp diff --git a/code/D3MFExporter.h b/code/3MF/D3MFExporter.h similarity index 100% rename from code/D3MFExporter.h rename to code/3MF/D3MFExporter.h diff --git a/code/D3MFImporter.cpp b/code/3MF/D3MFImporter.cpp similarity index 100% rename from code/D3MFImporter.cpp rename to code/3MF/D3MFImporter.cpp diff --git a/code/D3MFImporter.h b/code/3MF/D3MFImporter.h similarity index 100% rename from code/D3MFImporter.h rename to code/3MF/D3MFImporter.h diff --git a/code/D3MFOpcPackage.cpp b/code/3MF/D3MFOpcPackage.cpp similarity index 100% rename from code/D3MFOpcPackage.cpp rename to code/3MF/D3MFOpcPackage.cpp diff --git a/code/D3MFOpcPackage.h b/code/3MF/D3MFOpcPackage.h similarity index 100% rename from code/D3MFOpcPackage.h rename to code/3MF/D3MFOpcPackage.h diff --git a/code/ACLoader.cpp b/code/AC/ACLoader.cpp similarity index 100% rename from code/ACLoader.cpp rename to code/AC/ACLoader.cpp diff --git a/code/ACLoader.h b/code/AC/ACLoader.h similarity index 100% rename from code/ACLoader.h rename to code/AC/ACLoader.h diff --git a/code/AMFImporter.cpp b/code/AMF/AMFImporter.cpp similarity index 100% rename from code/AMFImporter.cpp rename to code/AMF/AMFImporter.cpp diff --git a/code/AMFImporter.hpp b/code/AMF/AMFImporter.hpp similarity index 100% rename from code/AMFImporter.hpp rename to code/AMF/AMFImporter.hpp diff --git a/code/AMFImporter_Geometry.cpp b/code/AMF/AMFImporter_Geometry.cpp similarity index 100% rename from code/AMFImporter_Geometry.cpp rename to code/AMF/AMFImporter_Geometry.cpp diff --git a/code/AMFImporter_Macro.hpp b/code/AMF/AMFImporter_Macro.hpp similarity index 100% rename from code/AMFImporter_Macro.hpp rename to code/AMF/AMFImporter_Macro.hpp diff --git a/code/AMFImporter_Material.cpp b/code/AMF/AMFImporter_Material.cpp similarity index 100% rename from code/AMFImporter_Material.cpp rename to code/AMF/AMFImporter_Material.cpp diff --git a/code/AMFImporter_Node.hpp b/code/AMF/AMFImporter_Node.hpp similarity index 100% rename from code/AMFImporter_Node.hpp rename to code/AMF/AMFImporter_Node.hpp diff --git a/code/AMFImporter_Postprocess.cpp b/code/AMF/AMFImporter_Postprocess.cpp similarity index 100% rename from code/AMFImporter_Postprocess.cpp rename to code/AMF/AMFImporter_Postprocess.cpp diff --git a/code/ASELoader.cpp b/code/ASE/ASELoader.cpp similarity index 100% rename from code/ASELoader.cpp rename to code/ASE/ASELoader.cpp diff --git a/code/ASELoader.h b/code/ASE/ASELoader.h similarity index 100% rename from code/ASELoader.h rename to code/ASE/ASELoader.h diff --git a/code/ASEParser.cpp b/code/ASE/ASEParser.cpp similarity index 100% rename from code/ASEParser.cpp rename to code/ASE/ASEParser.cpp diff --git a/code/ASEParser.h b/code/ASE/ASEParser.h similarity index 100% rename from code/ASEParser.h rename to code/ASE/ASEParser.h diff --git a/code/AssbinExporter.cpp b/code/Assbin/AssbinExporter.cpp similarity index 100% rename from code/AssbinExporter.cpp rename to code/Assbin/AssbinExporter.cpp diff --git a/code/AssbinExporter.h b/code/Assbin/AssbinExporter.h similarity index 100% rename from code/AssbinExporter.h rename to code/Assbin/AssbinExporter.h diff --git a/code/AssbinLoader.cpp b/code/Assbin/AssbinLoader.cpp similarity index 100% rename from code/AssbinLoader.cpp rename to code/Assbin/AssbinLoader.cpp diff --git a/code/AssbinLoader.h b/code/Assbin/AssbinLoader.h similarity index 100% rename from code/AssbinLoader.h rename to code/Assbin/AssbinLoader.h diff --git a/code/AssxmlExporter.cpp b/code/Assxml/AssxmlExporter.cpp similarity index 100% rename from code/AssxmlExporter.cpp rename to code/Assxml/AssxmlExporter.cpp diff --git a/code/AssxmlExporter.h b/code/Assxml/AssxmlExporter.h similarity index 100% rename from code/AssxmlExporter.h rename to code/Assxml/AssxmlExporter.h diff --git a/code/B3DImporter.cpp b/code/B3D/B3DImporter.cpp similarity index 100% rename from code/B3DImporter.cpp rename to code/B3D/B3DImporter.cpp diff --git a/code/B3DImporter.h b/code/B3D/B3DImporter.h similarity index 100% rename from code/B3DImporter.h rename to code/B3D/B3DImporter.h diff --git a/code/BVHLoader.cpp b/code/BVH/BVHLoader.cpp similarity index 100% rename from code/BVHLoader.cpp rename to code/BVH/BVHLoader.cpp diff --git a/code/BVHLoader.h b/code/BVH/BVHLoader.h similarity index 100% rename from code/BVHLoader.h rename to code/BVH/BVHLoader.h diff --git a/code/BlenderBMesh.cpp b/code/Blender/BlenderBMesh.cpp similarity index 100% rename from code/BlenderBMesh.cpp rename to code/Blender/BlenderBMesh.cpp diff --git a/code/BlenderBMesh.h b/code/Blender/BlenderBMesh.h similarity index 100% rename from code/BlenderBMesh.h rename to code/Blender/BlenderBMesh.h diff --git a/code/BlenderCustomData.cpp b/code/Blender/BlenderCustomData.cpp similarity index 100% rename from code/BlenderCustomData.cpp rename to code/Blender/BlenderCustomData.cpp diff --git a/code/BlenderCustomData.h b/code/Blender/BlenderCustomData.h similarity index 100% rename from code/BlenderCustomData.h rename to code/Blender/BlenderCustomData.h diff --git a/code/BlenderDNA.cpp b/code/Blender/BlenderDNA.cpp similarity index 100% rename from code/BlenderDNA.cpp rename to code/Blender/BlenderDNA.cpp diff --git a/code/BlenderDNA.h b/code/Blender/BlenderDNA.h similarity index 100% rename from code/BlenderDNA.h rename to code/Blender/BlenderDNA.h diff --git a/code/BlenderDNA.inl b/code/Blender/BlenderDNA.inl similarity index 100% rename from code/BlenderDNA.inl rename to code/Blender/BlenderDNA.inl diff --git a/code/BlenderIntermediate.h b/code/Blender/BlenderIntermediate.h similarity index 100% rename from code/BlenderIntermediate.h rename to code/Blender/BlenderIntermediate.h diff --git a/code/BlenderLoader.cpp b/code/Blender/BlenderLoader.cpp similarity index 100% rename from code/BlenderLoader.cpp rename to code/Blender/BlenderLoader.cpp diff --git a/code/BlenderLoader.h b/code/Blender/BlenderLoader.h similarity index 100% rename from code/BlenderLoader.h rename to code/Blender/BlenderLoader.h diff --git a/code/BlenderModifier.cpp b/code/Blender/BlenderModifier.cpp similarity index 100% rename from code/BlenderModifier.cpp rename to code/Blender/BlenderModifier.cpp diff --git a/code/BlenderModifier.h b/code/Blender/BlenderModifier.h similarity index 100% rename from code/BlenderModifier.h rename to code/Blender/BlenderModifier.h diff --git a/code/BlenderScene.cpp b/code/Blender/BlenderScene.cpp similarity index 100% rename from code/BlenderScene.cpp rename to code/Blender/BlenderScene.cpp diff --git a/code/BlenderScene.h b/code/Blender/BlenderScene.h similarity index 100% rename from code/BlenderScene.h rename to code/Blender/BlenderScene.h diff --git a/code/BlenderSceneGen.h b/code/Blender/BlenderSceneGen.h similarity index 100% rename from code/BlenderSceneGen.h rename to code/Blender/BlenderSceneGen.h diff --git a/code/BlenderTessellator.cpp b/code/Blender/BlenderTessellator.cpp similarity index 100% rename from code/BlenderTessellator.cpp rename to code/Blender/BlenderTessellator.cpp diff --git a/code/BlenderTessellator.h b/code/Blender/BlenderTessellator.h similarity index 100% rename from code/BlenderTessellator.h rename to code/Blender/BlenderTessellator.h diff --git a/code/C4DImporter.cpp b/code/C4D/C4DImporter.cpp similarity index 100% rename from code/C4DImporter.cpp rename to code/C4D/C4DImporter.cpp diff --git a/code/C4DImporter.h b/code/C4D/C4DImporter.h similarity index 100% rename from code/C4DImporter.h rename to code/C4D/C4DImporter.h diff --git a/code/AssimpCExport.cpp b/code/CApi/AssimpCExport.cpp similarity index 100% rename from code/AssimpCExport.cpp rename to code/CApi/AssimpCExport.cpp diff --git a/code/CInterfaceIOWrapper.cpp b/code/CApi/CInterfaceIOWrapper.cpp similarity index 100% rename from code/CInterfaceIOWrapper.cpp rename to code/CApi/CInterfaceIOWrapper.cpp diff --git a/code/CInterfaceIOWrapper.h b/code/CApi/CInterfaceIOWrapper.h similarity index 100% rename from code/CInterfaceIOWrapper.h rename to code/CApi/CInterfaceIOWrapper.h diff --git a/code/COBLoader.cpp b/code/COB/COBLoader.cpp similarity index 100% rename from code/COBLoader.cpp rename to code/COB/COBLoader.cpp diff --git a/code/COBLoader.h b/code/COB/COBLoader.h similarity index 100% rename from code/COBLoader.h rename to code/COB/COBLoader.h diff --git a/code/COBScene.h b/code/COB/COBScene.h similarity index 100% rename from code/COBScene.h rename to code/COB/COBScene.h diff --git a/code/CSMLoader.cpp b/code/CSM/CSMLoader.cpp similarity index 100% rename from code/CSMLoader.cpp rename to code/CSM/CSMLoader.cpp diff --git a/code/CSMLoader.h b/code/CSM/CSMLoader.h similarity index 100% rename from code/CSMLoader.h rename to code/CSM/CSMLoader.h diff --git a/code/ColladaExporter.cpp b/code/Collada/ColladaExporter.cpp similarity index 100% rename from code/ColladaExporter.cpp rename to code/Collada/ColladaExporter.cpp diff --git a/code/ColladaExporter.h b/code/Collada/ColladaExporter.h similarity index 100% rename from code/ColladaExporter.h rename to code/Collada/ColladaExporter.h diff --git a/code/ColladaHelper.h b/code/Collada/ColladaHelper.h similarity index 100% rename from code/ColladaHelper.h rename to code/Collada/ColladaHelper.h diff --git a/code/ColladaLoader.cpp b/code/Collada/ColladaLoader.cpp similarity index 100% rename from code/ColladaLoader.cpp rename to code/Collada/ColladaLoader.cpp diff --git a/code/ColladaLoader.h b/code/Collada/ColladaLoader.h similarity index 100% rename from code/ColladaLoader.h rename to code/Collada/ColladaLoader.h diff --git a/code/ColladaParser.cpp b/code/Collada/ColladaParser.cpp similarity index 100% rename from code/ColladaParser.cpp rename to code/Collada/ColladaParser.cpp diff --git a/code/ColladaParser.h b/code/Collada/ColladaParser.h similarity index 100% rename from code/ColladaParser.h rename to code/Collada/ColladaParser.h diff --git a/code/Assimp.cpp b/code/Common/Assimp.cpp similarity index 100% rename from code/Assimp.cpp rename to code/Common/Assimp.cpp diff --git a/code/BaseImporter.cpp b/code/Common/BaseImporter.cpp similarity index 100% rename from code/BaseImporter.cpp rename to code/Common/BaseImporter.cpp diff --git a/code/BaseProcess.cpp b/code/Common/BaseProcess.cpp similarity index 100% rename from code/BaseProcess.cpp rename to code/Common/BaseProcess.cpp diff --git a/code/BaseProcess.h b/code/Common/BaseProcess.h similarity index 100% rename from code/BaseProcess.h rename to code/Common/BaseProcess.h diff --git a/code/Bitmap.cpp b/code/Common/Bitmap.cpp similarity index 100% rename from code/Bitmap.cpp rename to code/Common/Bitmap.cpp diff --git a/code/CreateAnimMesh.cpp b/code/Common/CreateAnimMesh.cpp similarity index 100% rename from code/CreateAnimMesh.cpp rename to code/Common/CreateAnimMesh.cpp diff --git a/code/DefaultIOStream.cpp b/code/Common/DefaultIOStream.cpp similarity index 100% rename from code/DefaultIOStream.cpp rename to code/Common/DefaultIOStream.cpp diff --git a/code/DefaultIOSystem.cpp b/code/Common/DefaultIOSystem.cpp similarity index 100% rename from code/DefaultIOSystem.cpp rename to code/Common/DefaultIOSystem.cpp diff --git a/code/DefaultLogger.cpp b/code/Common/DefaultLogger.cpp similarity index 100% rename from code/DefaultLogger.cpp rename to code/Common/DefaultLogger.cpp diff --git a/code/DefaultProgressHandler.h b/code/Common/DefaultProgressHandler.h similarity index 100% rename from code/DefaultProgressHandler.h rename to code/Common/DefaultProgressHandler.h diff --git a/code/Exporter.cpp b/code/Common/Exporter.cpp similarity index 100% rename from code/Exporter.cpp rename to code/Common/Exporter.cpp diff --git a/code/FIReader.cpp b/code/Common/FIReader.cpp similarity index 100% rename from code/FIReader.cpp rename to code/Common/FIReader.cpp diff --git a/code/FIReader.hpp b/code/Common/FIReader.hpp similarity index 100% rename from code/FIReader.hpp rename to code/Common/FIReader.hpp diff --git a/code/FileLogStream.h b/code/Common/FileLogStream.h similarity index 100% rename from code/FileLogStream.h rename to code/Common/FileLogStream.h diff --git a/code/FileSystemFilter.h b/code/Common/FileSystemFilter.h similarity index 100% rename from code/FileSystemFilter.h rename to code/Common/FileSystemFilter.h diff --git a/code/Importer.cpp b/code/Common/Importer.cpp similarity index 100% rename from code/Importer.cpp rename to code/Common/Importer.cpp diff --git a/code/Importer.h b/code/Common/Importer.h similarity index 100% rename from code/Importer.h rename to code/Common/Importer.h diff --git a/code/ImporterRegistry.cpp b/code/Common/ImporterRegistry.cpp similarity index 100% rename from code/ImporterRegistry.cpp rename to code/Common/ImporterRegistry.cpp diff --git a/code/PolyTools.h b/code/Common/PolyTools.h similarity index 100% rename from code/PolyTools.h rename to code/Common/PolyTools.h diff --git a/code/SceneCombiner.cpp b/code/Common/SceneCombiner.cpp similarity index 100% rename from code/SceneCombiner.cpp rename to code/Common/SceneCombiner.cpp diff --git a/code/ScenePrivate.h b/code/Common/ScenePrivate.h similarity index 100% rename from code/ScenePrivate.h rename to code/Common/ScenePrivate.h diff --git a/code/SkeletonMeshBuilder.cpp b/code/Common/SkeletonMeshBuilder.cpp similarity index 100% rename from code/SkeletonMeshBuilder.cpp rename to code/Common/SkeletonMeshBuilder.cpp diff --git a/code/StandardShapes.cpp b/code/Common/StandardShapes.cpp similarity index 100% rename from code/StandardShapes.cpp rename to code/Common/StandardShapes.cpp diff --git a/code/StdOStreamLogStream.h b/code/Common/StdOStreamLogStream.h similarity index 100% rename from code/StdOStreamLogStream.h rename to code/Common/StdOStreamLogStream.h diff --git a/code/Subdivision.cpp b/code/Common/Subdivision.cpp similarity index 100% rename from code/Subdivision.cpp rename to code/Common/Subdivision.cpp diff --git a/code/TargetAnimation.cpp b/code/Common/TargetAnimation.cpp similarity index 100% rename from code/TargetAnimation.cpp rename to code/Common/TargetAnimation.cpp diff --git a/code/TargetAnimation.h b/code/Common/TargetAnimation.h similarity index 100% rename from code/TargetAnimation.h rename to code/Common/TargetAnimation.h diff --git a/code/Version.cpp b/code/Common/Version.cpp similarity index 100% rename from code/Version.cpp rename to code/Common/Version.cpp diff --git a/code/Win32DebugLogStream.h b/code/Common/Win32DebugLogStream.h similarity index 100% rename from code/Win32DebugLogStream.h rename to code/Common/Win32DebugLogStream.h diff --git a/code/assbin_chunks.h b/code/Common/assbin_chunks.h similarity index 100% rename from code/assbin_chunks.h rename to code/Common/assbin_chunks.h diff --git a/code/scene.cpp b/code/Common/scene.cpp similarity index 100% rename from code/scene.cpp rename to code/Common/scene.cpp diff --git a/code/simd.cpp b/code/Common/simd.cpp similarity index 100% rename from code/simd.cpp rename to code/Common/simd.cpp diff --git a/code/simd.h b/code/Common/simd.h similarity index 100% rename from code/simd.h rename to code/Common/simd.h diff --git a/code/DXFHelper.h b/code/DXF/DXFHelper.h similarity index 100% rename from code/DXFHelper.h rename to code/DXF/DXFHelper.h diff --git a/code/DXFLoader.cpp b/code/DXF/DXFLoader.cpp similarity index 100% rename from code/DXFLoader.cpp rename to code/DXF/DXFLoader.cpp diff --git a/code/DXFLoader.h b/code/DXF/DXFLoader.h similarity index 100% rename from code/DXFLoader.h rename to code/DXF/DXFLoader.h diff --git a/code/FBXAnimation.cpp b/code/FBX/FBXAnimation.cpp similarity index 100% rename from code/FBXAnimation.cpp rename to code/FBX/FBXAnimation.cpp diff --git a/code/FBXBinaryTokenizer.cpp b/code/FBX/FBXBinaryTokenizer.cpp similarity index 100% rename from code/FBXBinaryTokenizer.cpp rename to code/FBX/FBXBinaryTokenizer.cpp diff --git a/code/FBXCommon.h b/code/FBX/FBXCommon.h similarity index 100% rename from code/FBXCommon.h rename to code/FBX/FBXCommon.h diff --git a/code/FBXCompileConfig.h b/code/FBX/FBXCompileConfig.h similarity index 100% rename from code/FBXCompileConfig.h rename to code/FBX/FBXCompileConfig.h diff --git a/code/FBXConverter.cpp b/code/FBX/FBXConverter.cpp similarity index 100% rename from code/FBXConverter.cpp rename to code/FBX/FBXConverter.cpp diff --git a/code/FBXConverter.h b/code/FBX/FBXConverter.h similarity index 100% rename from code/FBXConverter.h rename to code/FBX/FBXConverter.h diff --git a/code/FBXDeformer.cpp b/code/FBX/FBXDeformer.cpp similarity index 100% rename from code/FBXDeformer.cpp rename to code/FBX/FBXDeformer.cpp diff --git a/code/FBXDocument.cpp b/code/FBX/FBXDocument.cpp similarity index 100% rename from code/FBXDocument.cpp rename to code/FBX/FBXDocument.cpp diff --git a/code/FBXDocument.h b/code/FBX/FBXDocument.h similarity index 100% rename from code/FBXDocument.h rename to code/FBX/FBXDocument.h diff --git a/code/FBXDocumentUtil.cpp b/code/FBX/FBXDocumentUtil.cpp similarity index 100% rename from code/FBXDocumentUtil.cpp rename to code/FBX/FBXDocumentUtil.cpp diff --git a/code/FBXDocumentUtil.h b/code/FBX/FBXDocumentUtil.h similarity index 100% rename from code/FBXDocumentUtil.h rename to code/FBX/FBXDocumentUtil.h diff --git a/code/FBXExportNode.cpp b/code/FBX/FBXExportNode.cpp similarity index 100% rename from code/FBXExportNode.cpp rename to code/FBX/FBXExportNode.cpp diff --git a/code/FBXExportNode.h b/code/FBX/FBXExportNode.h similarity index 100% rename from code/FBXExportNode.h rename to code/FBX/FBXExportNode.h diff --git a/code/FBXExportProperty.cpp b/code/FBX/FBXExportProperty.cpp similarity index 100% rename from code/FBXExportProperty.cpp rename to code/FBX/FBXExportProperty.cpp diff --git a/code/FBXExportProperty.h b/code/FBX/FBXExportProperty.h similarity index 100% rename from code/FBXExportProperty.h rename to code/FBX/FBXExportProperty.h diff --git a/code/FBXExporter.cpp b/code/FBX/FBXExporter.cpp similarity index 100% rename from code/FBXExporter.cpp rename to code/FBX/FBXExporter.cpp diff --git a/code/FBXExporter.h b/code/FBX/FBXExporter.h similarity index 100% rename from code/FBXExporter.h rename to code/FBX/FBXExporter.h diff --git a/code/FBXImportSettings.h b/code/FBX/FBXImportSettings.h similarity index 100% rename from code/FBXImportSettings.h rename to code/FBX/FBXImportSettings.h diff --git a/code/FBXImporter.cpp b/code/FBX/FBXImporter.cpp similarity index 100% rename from code/FBXImporter.cpp rename to code/FBX/FBXImporter.cpp diff --git a/code/FBXImporter.h b/code/FBX/FBXImporter.h similarity index 100% rename from code/FBXImporter.h rename to code/FBX/FBXImporter.h diff --git a/code/FBXMaterial.cpp b/code/FBX/FBXMaterial.cpp similarity index 100% rename from code/FBXMaterial.cpp rename to code/FBX/FBXMaterial.cpp diff --git a/code/FBXMeshGeometry.cpp b/code/FBX/FBXMeshGeometry.cpp similarity index 100% rename from code/FBXMeshGeometry.cpp rename to code/FBX/FBXMeshGeometry.cpp diff --git a/code/FBXMeshGeometry.h b/code/FBX/FBXMeshGeometry.h similarity index 100% rename from code/FBXMeshGeometry.h rename to code/FBX/FBXMeshGeometry.h diff --git a/code/FBXModel.cpp b/code/FBX/FBXModel.cpp similarity index 100% rename from code/FBXModel.cpp rename to code/FBX/FBXModel.cpp diff --git a/code/FBXNodeAttribute.cpp b/code/FBX/FBXNodeAttribute.cpp similarity index 100% rename from code/FBXNodeAttribute.cpp rename to code/FBX/FBXNodeAttribute.cpp diff --git a/code/FBXParser.cpp b/code/FBX/FBXParser.cpp similarity index 100% rename from code/FBXParser.cpp rename to code/FBX/FBXParser.cpp diff --git a/code/FBXParser.h b/code/FBX/FBXParser.h similarity index 100% rename from code/FBXParser.h rename to code/FBX/FBXParser.h diff --git a/code/FBXProperties.cpp b/code/FBX/FBXProperties.cpp similarity index 100% rename from code/FBXProperties.cpp rename to code/FBX/FBXProperties.cpp diff --git a/code/FBXProperties.h b/code/FBX/FBXProperties.h similarity index 100% rename from code/FBXProperties.h rename to code/FBX/FBXProperties.h diff --git a/code/FBXTokenizer.cpp b/code/FBX/FBXTokenizer.cpp similarity index 100% rename from code/FBXTokenizer.cpp rename to code/FBX/FBXTokenizer.cpp diff --git a/code/FBXTokenizer.h b/code/FBX/FBXTokenizer.h similarity index 100% rename from code/FBXTokenizer.h rename to code/FBX/FBXTokenizer.h diff --git a/code/FBXUtil.cpp b/code/FBX/FBXUtil.cpp similarity index 100% rename from code/FBXUtil.cpp rename to code/FBX/FBXUtil.cpp diff --git a/code/FBXUtil.h b/code/FBX/FBXUtil.h similarity index 100% rename from code/FBXUtil.h rename to code/FBX/FBXUtil.h diff --git a/code/HMPFileData.h b/code/HMP/HMPFileData.h similarity index 100% rename from code/HMPFileData.h rename to code/HMP/HMPFileData.h diff --git a/code/HMPLoader.cpp b/code/HMP/HMPLoader.cpp similarity index 100% rename from code/HMPLoader.cpp rename to code/HMP/HMPLoader.cpp diff --git a/code/HMPLoader.h b/code/HMP/HMPLoader.h similarity index 100% rename from code/HMPLoader.h rename to code/HMP/HMPLoader.h diff --git a/code/HalfLifeFileData.h b/code/HMP/HalfLifeFileData.h similarity index 100% rename from code/HalfLifeFileData.h rename to code/HMP/HalfLifeFileData.h diff --git a/code/IRRLoader.cpp b/code/Irr/IRRLoader.cpp similarity index 100% rename from code/IRRLoader.cpp rename to code/Irr/IRRLoader.cpp diff --git a/code/IRRLoader.h b/code/Irr/IRRLoader.h similarity index 100% rename from code/IRRLoader.h rename to code/Irr/IRRLoader.h diff --git a/code/IRRMeshLoader.cpp b/code/Irr/IRRMeshLoader.cpp similarity index 100% rename from code/IRRMeshLoader.cpp rename to code/Irr/IRRMeshLoader.cpp diff --git a/code/IRRMeshLoader.h b/code/Irr/IRRMeshLoader.h similarity index 100% rename from code/IRRMeshLoader.h rename to code/Irr/IRRMeshLoader.h diff --git a/code/IRRShared.cpp b/code/Irr/IRRShared.cpp similarity index 100% rename from code/IRRShared.cpp rename to code/Irr/IRRShared.cpp diff --git a/code/IRRShared.h b/code/Irr/IRRShared.h similarity index 100% rename from code/IRRShared.h rename to code/Irr/IRRShared.h diff --git a/code/LWOAnimation.cpp b/code/LWO/LWOAnimation.cpp similarity index 100% rename from code/LWOAnimation.cpp rename to code/LWO/LWOAnimation.cpp diff --git a/code/LWOAnimation.h b/code/LWO/LWOAnimation.h similarity index 100% rename from code/LWOAnimation.h rename to code/LWO/LWOAnimation.h diff --git a/code/LWOBLoader.cpp b/code/LWO/LWOBLoader.cpp similarity index 100% rename from code/LWOBLoader.cpp rename to code/LWO/LWOBLoader.cpp diff --git a/code/LWOFileData.h b/code/LWO/LWOFileData.h similarity index 100% rename from code/LWOFileData.h rename to code/LWO/LWOFileData.h diff --git a/code/LWOLoader.cpp b/code/LWO/LWOLoader.cpp similarity index 100% rename from code/LWOLoader.cpp rename to code/LWO/LWOLoader.cpp diff --git a/code/LWOLoader.h b/code/LWO/LWOLoader.h similarity index 100% rename from code/LWOLoader.h rename to code/LWO/LWOLoader.h diff --git a/code/LWOMaterial.cpp b/code/LWO/LWOMaterial.cpp similarity index 100% rename from code/LWOMaterial.cpp rename to code/LWO/LWOMaterial.cpp diff --git a/code/LWSLoader.cpp b/code/LWS/LWSLoader.cpp similarity index 100% rename from code/LWSLoader.cpp rename to code/LWS/LWSLoader.cpp diff --git a/code/LWSLoader.h b/code/LWS/LWSLoader.h similarity index 100% rename from code/LWSLoader.h rename to code/LWS/LWSLoader.h diff --git a/code/MD2FileData.h b/code/MD2/MD2FileData.h similarity index 100% rename from code/MD2FileData.h rename to code/MD2/MD2FileData.h diff --git a/code/MD2Loader.cpp b/code/MD2/MD2Loader.cpp similarity index 100% rename from code/MD2Loader.cpp rename to code/MD2/MD2Loader.cpp diff --git a/code/MD2Loader.h b/code/MD2/MD2Loader.h similarity index 100% rename from code/MD2Loader.h rename to code/MD2/MD2Loader.h diff --git a/code/MD2NormalTable.h b/code/MD2/MD2NormalTable.h similarity index 100% rename from code/MD2NormalTable.h rename to code/MD2/MD2NormalTable.h diff --git a/code/MD3FileData.h b/code/MD3/MD3FileData.h similarity index 100% rename from code/MD3FileData.h rename to code/MD3/MD3FileData.h diff --git a/code/MD3Loader.cpp b/code/MD3/MD3Loader.cpp similarity index 100% rename from code/MD3Loader.cpp rename to code/MD3/MD3Loader.cpp diff --git a/code/MD3Loader.h b/code/MD3/MD3Loader.h similarity index 100% rename from code/MD3Loader.h rename to code/MD3/MD3Loader.h diff --git a/code/MD4FileData.h b/code/MD4/MD4FileData.h similarity index 100% rename from code/MD4FileData.h rename to code/MD4/MD4FileData.h diff --git a/code/MD5Loader.cpp b/code/MD5/MD5Loader.cpp similarity index 100% rename from code/MD5Loader.cpp rename to code/MD5/MD5Loader.cpp diff --git a/code/MD5Loader.h b/code/MD5/MD5Loader.h similarity index 100% rename from code/MD5Loader.h rename to code/MD5/MD5Loader.h diff --git a/code/MD5Parser.cpp b/code/MD5/MD5Parser.cpp similarity index 100% rename from code/MD5Parser.cpp rename to code/MD5/MD5Parser.cpp diff --git a/code/MD5Parser.h b/code/MD5/MD5Parser.h similarity index 100% rename from code/MD5Parser.h rename to code/MD5/MD5Parser.h diff --git a/code/MDCFileData.h b/code/MDC/MDCFileData.h similarity index 100% rename from code/MDCFileData.h rename to code/MDC/MDCFileData.h diff --git a/code/MDCLoader.cpp b/code/MDC/MDCLoader.cpp similarity index 100% rename from code/MDCLoader.cpp rename to code/MDC/MDCLoader.cpp diff --git a/code/MDCLoader.h b/code/MDC/MDCLoader.h similarity index 100% rename from code/MDCLoader.h rename to code/MDC/MDCLoader.h diff --git a/code/MDCNormalTable.h b/code/MDC/MDCNormalTable.h similarity index 100% rename from code/MDCNormalTable.h rename to code/MDC/MDCNormalTable.h diff --git a/code/MDLDefaultColorMap.h b/code/MDL/MDLDefaultColorMap.h similarity index 100% rename from code/MDLDefaultColorMap.h rename to code/MDL/MDLDefaultColorMap.h diff --git a/code/MDLFileData.h b/code/MDL/MDLFileData.h similarity index 100% rename from code/MDLFileData.h rename to code/MDL/MDLFileData.h diff --git a/code/MDLLoader.cpp b/code/MDL/MDLLoader.cpp similarity index 100% rename from code/MDLLoader.cpp rename to code/MDL/MDLLoader.cpp diff --git a/code/MDLLoader.h b/code/MDL/MDLLoader.h similarity index 100% rename from code/MDLLoader.h rename to code/MDL/MDLLoader.h diff --git a/code/MDLMaterialLoader.cpp b/code/MDL/MDLMaterialLoader.cpp similarity index 100% rename from code/MDLMaterialLoader.cpp rename to code/MDL/MDLMaterialLoader.cpp diff --git a/code/MMDCpp14.h b/code/MMD/MMDCpp14.h similarity index 100% rename from code/MMDCpp14.h rename to code/MMD/MMDCpp14.h diff --git a/code/MMDImporter.cpp b/code/MMD/MMDImporter.cpp similarity index 100% rename from code/MMDImporter.cpp rename to code/MMD/MMDImporter.cpp diff --git a/code/MMDImporter.h b/code/MMD/MMDImporter.h similarity index 100% rename from code/MMDImporter.h rename to code/MMD/MMDImporter.h diff --git a/code/MMDPmdParser.h b/code/MMD/MMDPmdParser.h similarity index 100% rename from code/MMDPmdParser.h rename to code/MMD/MMDPmdParser.h diff --git a/code/MMDPmxParser.cpp b/code/MMD/MMDPmxParser.cpp similarity index 100% rename from code/MMDPmxParser.cpp rename to code/MMD/MMDPmxParser.cpp diff --git a/code/MMDPmxParser.h b/code/MMD/MMDPmxParser.h similarity index 100% rename from code/MMDPmxParser.h rename to code/MMD/MMDPmxParser.h diff --git a/code/MMDVmdParser.h b/code/MMD/MMDVmdParser.h similarity index 100% rename from code/MMDVmdParser.h rename to code/MMD/MMDVmdParser.h diff --git a/code/MS3DLoader.cpp b/code/MS3D/MS3DLoader.cpp similarity index 100% rename from code/MS3DLoader.cpp rename to code/MS3D/MS3DLoader.cpp diff --git a/code/MS3DLoader.h b/code/MS3D/MS3DLoader.h similarity index 100% rename from code/MS3DLoader.h rename to code/MS3D/MS3DLoader.h diff --git a/code/MaterialSystem.cpp b/code/Material/MaterialSystem.cpp similarity index 100% rename from code/MaterialSystem.cpp rename to code/Material/MaterialSystem.cpp diff --git a/code/MaterialSystem.h b/code/Material/MaterialSystem.h similarity index 100% rename from code/MaterialSystem.h rename to code/Material/MaterialSystem.h diff --git a/code/NDOLoader.cpp b/code/NDO/NDOLoader.cpp similarity index 100% rename from code/NDOLoader.cpp rename to code/NDO/NDOLoader.cpp diff --git a/code/NDOLoader.h b/code/NDO/NDOLoader.h similarity index 100% rename from code/NDOLoader.h rename to code/NDO/NDOLoader.h diff --git a/code/NFFLoader.cpp b/code/NFF/NFFLoader.cpp similarity index 100% rename from code/NFFLoader.cpp rename to code/NFF/NFFLoader.cpp diff --git a/code/NFFLoader.h b/code/NFF/NFFLoader.h similarity index 100% rename from code/NFFLoader.h rename to code/NFF/NFFLoader.h diff --git a/code/OFFLoader.cpp b/code/OFF/OFFLoader.cpp similarity index 100% rename from code/OFFLoader.cpp rename to code/OFF/OFFLoader.cpp diff --git a/code/OFFLoader.h b/code/OFF/OFFLoader.h similarity index 100% rename from code/OFFLoader.h rename to code/OFF/OFFLoader.h diff --git a/code/ObjExporter.cpp b/code/Obj/ObjExporter.cpp similarity index 100% rename from code/ObjExporter.cpp rename to code/Obj/ObjExporter.cpp diff --git a/code/ObjExporter.h b/code/Obj/ObjExporter.h similarity index 100% rename from code/ObjExporter.h rename to code/Obj/ObjExporter.h diff --git a/code/ObjFileData.h b/code/Obj/ObjFileData.h similarity index 100% rename from code/ObjFileData.h rename to code/Obj/ObjFileData.h diff --git a/code/ObjFileImporter.cpp b/code/Obj/ObjFileImporter.cpp similarity index 100% rename from code/ObjFileImporter.cpp rename to code/Obj/ObjFileImporter.cpp diff --git a/code/ObjFileImporter.h b/code/Obj/ObjFileImporter.h similarity index 100% rename from code/ObjFileImporter.h rename to code/Obj/ObjFileImporter.h diff --git a/code/ObjFileMtlImporter.cpp b/code/Obj/ObjFileMtlImporter.cpp similarity index 100% rename from code/ObjFileMtlImporter.cpp rename to code/Obj/ObjFileMtlImporter.cpp diff --git a/code/ObjFileMtlImporter.h b/code/Obj/ObjFileMtlImporter.h similarity index 100% rename from code/ObjFileMtlImporter.h rename to code/Obj/ObjFileMtlImporter.h diff --git a/code/ObjFileParser.cpp b/code/Obj/ObjFileParser.cpp similarity index 100% rename from code/ObjFileParser.cpp rename to code/Obj/ObjFileParser.cpp diff --git a/code/ObjFileParser.h b/code/Obj/ObjFileParser.h similarity index 100% rename from code/ObjFileParser.h rename to code/Obj/ObjFileParser.h diff --git a/code/ObjTools.h b/code/Obj/ObjTools.h similarity index 100% rename from code/ObjTools.h rename to code/Obj/ObjTools.h diff --git a/code/OgreBinarySerializer.cpp b/code/Ogre/OgreBinarySerializer.cpp similarity index 100% rename from code/OgreBinarySerializer.cpp rename to code/Ogre/OgreBinarySerializer.cpp diff --git a/code/OgreBinarySerializer.h b/code/Ogre/OgreBinarySerializer.h similarity index 100% rename from code/OgreBinarySerializer.h rename to code/Ogre/OgreBinarySerializer.h diff --git a/code/OgreImporter.cpp b/code/Ogre/OgreImporter.cpp similarity index 100% rename from code/OgreImporter.cpp rename to code/Ogre/OgreImporter.cpp diff --git a/code/OgreImporter.h b/code/Ogre/OgreImporter.h similarity index 100% rename from code/OgreImporter.h rename to code/Ogre/OgreImporter.h diff --git a/code/OgreMaterial.cpp b/code/Ogre/OgreMaterial.cpp similarity index 100% rename from code/OgreMaterial.cpp rename to code/Ogre/OgreMaterial.cpp diff --git a/code/OgreParsingUtils.h b/code/Ogre/OgreParsingUtils.h similarity index 100% rename from code/OgreParsingUtils.h rename to code/Ogre/OgreParsingUtils.h diff --git a/code/OgreStructs.cpp b/code/Ogre/OgreStructs.cpp similarity index 100% rename from code/OgreStructs.cpp rename to code/Ogre/OgreStructs.cpp diff --git a/code/OgreStructs.h b/code/Ogre/OgreStructs.h similarity index 100% rename from code/OgreStructs.h rename to code/Ogre/OgreStructs.h diff --git a/code/OgreXmlSerializer.cpp b/code/Ogre/OgreXmlSerializer.cpp similarity index 100% rename from code/OgreXmlSerializer.cpp rename to code/Ogre/OgreXmlSerializer.cpp diff --git a/code/OgreXmlSerializer.h b/code/Ogre/OgreXmlSerializer.h similarity index 100% rename from code/OgreXmlSerializer.h rename to code/Ogre/OgreXmlSerializer.h diff --git a/code/OpenGEXExporter.cpp b/code/OpenGEX/MDLMaterialLoader.cpp similarity index 100% rename from code/OpenGEXExporter.cpp rename to code/OpenGEX/MDLMaterialLoader.cpp diff --git a/code/OpenGEXExporter.h b/code/OpenGEX/MDLMaterialLoader.h similarity index 100% rename from code/OpenGEXExporter.h rename to code/OpenGEX/MDLMaterialLoader.h diff --git a/code/OpenGEXImporter.cpp b/code/OpenGEX/OpenGEXImporter.cpp similarity index 100% rename from code/OpenGEXImporter.cpp rename to code/OpenGEX/OpenGEXImporter.cpp diff --git a/code/OpenGEXImporter.h b/code/OpenGEX/OpenGEXImporter.h similarity index 100% rename from code/OpenGEXImporter.h rename to code/OpenGEX/OpenGEXImporter.h diff --git a/code/OpenGEXStructs.h b/code/OpenGEX/OpenGEXStructs.h similarity index 100% rename from code/OpenGEXStructs.h rename to code/OpenGEX/OpenGEXStructs.h diff --git a/code/PlyExporter.cpp b/code/Ply/PlyExporter.cpp similarity index 100% rename from code/PlyExporter.cpp rename to code/Ply/PlyExporter.cpp diff --git a/code/PlyExporter.h b/code/Ply/PlyExporter.h similarity index 100% rename from code/PlyExporter.h rename to code/Ply/PlyExporter.h diff --git a/code/PlyLoader.cpp b/code/Ply/PlyLoader.cpp similarity index 100% rename from code/PlyLoader.cpp rename to code/Ply/PlyLoader.cpp diff --git a/code/PlyLoader.h b/code/Ply/PlyLoader.h similarity index 100% rename from code/PlyLoader.h rename to code/Ply/PlyLoader.h diff --git a/code/PlyParser.cpp b/code/Ply/PlyParser.cpp similarity index 100% rename from code/PlyParser.cpp rename to code/Ply/PlyParser.cpp diff --git a/code/PlyParser.h b/code/Ply/PlyParser.h similarity index 100% rename from code/PlyParser.h rename to code/Ply/PlyParser.h diff --git a/code/CalcTangentsProcess.cpp b/code/PostProcessing/CalcTangentsProcess.cpp similarity index 100% rename from code/CalcTangentsProcess.cpp rename to code/PostProcessing/CalcTangentsProcess.cpp diff --git a/code/CalcTangentsProcess.h b/code/PostProcessing/CalcTangentsProcess.h similarity index 100% rename from code/CalcTangentsProcess.h rename to code/PostProcessing/CalcTangentsProcess.h diff --git a/code/ComputeUVMappingProcess.cpp b/code/PostProcessing/ComputeUVMappingProcess.cpp similarity index 100% rename from code/ComputeUVMappingProcess.cpp rename to code/PostProcessing/ComputeUVMappingProcess.cpp diff --git a/code/ComputeUVMappingProcess.h b/code/PostProcessing/ComputeUVMappingProcess.h similarity index 100% rename from code/ComputeUVMappingProcess.h rename to code/PostProcessing/ComputeUVMappingProcess.h diff --git a/code/ConvertToLHProcess.cpp b/code/PostProcessing/ConvertToLHProcess.cpp similarity index 100% rename from code/ConvertToLHProcess.cpp rename to code/PostProcessing/ConvertToLHProcess.cpp diff --git a/code/ConvertToLHProcess.h b/code/PostProcessing/ConvertToLHProcess.h similarity index 100% rename from code/ConvertToLHProcess.h rename to code/PostProcessing/ConvertToLHProcess.h diff --git a/code/DeboneProcess.cpp b/code/PostProcessing/DeboneProcess.cpp similarity index 100% rename from code/DeboneProcess.cpp rename to code/PostProcessing/DeboneProcess.cpp diff --git a/code/DeboneProcess.h b/code/PostProcessing/DeboneProcess.h similarity index 100% rename from code/DeboneProcess.h rename to code/PostProcessing/DeboneProcess.h diff --git a/code/DropFaceNormalsProcess.cpp b/code/PostProcessing/DropFaceNormalsProcess.cpp similarity index 100% rename from code/DropFaceNormalsProcess.cpp rename to code/PostProcessing/DropFaceNormalsProcess.cpp diff --git a/code/DropFaceNormalsProcess.h b/code/PostProcessing/DropFaceNormalsProcess.h similarity index 100% rename from code/DropFaceNormalsProcess.h rename to code/PostProcessing/DropFaceNormalsProcess.h diff --git a/code/EmbedTexturesProcess.cpp b/code/PostProcessing/EmbedTexturesProcess.cpp similarity index 100% rename from code/EmbedTexturesProcess.cpp rename to code/PostProcessing/EmbedTexturesProcess.cpp diff --git a/code/EmbedTexturesProcess.h b/code/PostProcessing/EmbedTexturesProcess.h similarity index 100% rename from code/EmbedTexturesProcess.h rename to code/PostProcessing/EmbedTexturesProcess.h diff --git a/code/FindDegenerates.cpp b/code/PostProcessing/FindDegenerates.cpp similarity index 100% rename from code/FindDegenerates.cpp rename to code/PostProcessing/FindDegenerates.cpp diff --git a/code/FindDegenerates.h b/code/PostProcessing/FindDegenerates.h similarity index 100% rename from code/FindDegenerates.h rename to code/PostProcessing/FindDegenerates.h diff --git a/code/FindInstancesProcess.cpp b/code/PostProcessing/FindInstancesProcess.cpp similarity index 100% rename from code/FindInstancesProcess.cpp rename to code/PostProcessing/FindInstancesProcess.cpp diff --git a/code/FindInstancesProcess.h b/code/PostProcessing/FindInstancesProcess.h similarity index 100% rename from code/FindInstancesProcess.h rename to code/PostProcessing/FindInstancesProcess.h diff --git a/code/FindInvalidDataProcess.cpp b/code/PostProcessing/FindInvalidDataProcess.cpp similarity index 100% rename from code/FindInvalidDataProcess.cpp rename to code/PostProcessing/FindInvalidDataProcess.cpp diff --git a/code/FindInvalidDataProcess.h b/code/PostProcessing/FindInvalidDataProcess.h similarity index 100% rename from code/FindInvalidDataProcess.h rename to code/PostProcessing/FindInvalidDataProcess.h diff --git a/code/FixNormalsStep.cpp b/code/PostProcessing/FixNormalsStep.cpp similarity index 100% rename from code/FixNormalsStep.cpp rename to code/PostProcessing/FixNormalsStep.cpp diff --git a/code/FixNormalsStep.h b/code/PostProcessing/FixNormalsStep.h similarity index 100% rename from code/FixNormalsStep.h rename to code/PostProcessing/FixNormalsStep.h diff --git a/code/GenFaceNormalsProcess.cpp b/code/PostProcessing/GenFaceNormalsProcess.cpp similarity index 100% rename from code/GenFaceNormalsProcess.cpp rename to code/PostProcessing/GenFaceNormalsProcess.cpp diff --git a/code/GenFaceNormalsProcess.h b/code/PostProcessing/GenFaceNormalsProcess.h similarity index 100% rename from code/GenFaceNormalsProcess.h rename to code/PostProcessing/GenFaceNormalsProcess.h diff --git a/code/GenVertexNormalsProcess.cpp b/code/PostProcessing/GenVertexNormalsProcess.cpp similarity index 100% rename from code/GenVertexNormalsProcess.cpp rename to code/PostProcessing/GenVertexNormalsProcess.cpp diff --git a/code/GenVertexNormalsProcess.h b/code/PostProcessing/GenVertexNormalsProcess.h similarity index 100% rename from code/GenVertexNormalsProcess.h rename to code/PostProcessing/GenVertexNormalsProcess.h diff --git a/code/ImproveCacheLocality.cpp b/code/PostProcessing/ImproveCacheLocality.cpp similarity index 100% rename from code/ImproveCacheLocality.cpp rename to code/PostProcessing/ImproveCacheLocality.cpp diff --git a/code/ImproveCacheLocality.h b/code/PostProcessing/ImproveCacheLocality.h similarity index 100% rename from code/ImproveCacheLocality.h rename to code/PostProcessing/ImproveCacheLocality.h diff --git a/code/JoinVerticesProcess.cpp b/code/PostProcessing/JoinVerticesProcess.cpp similarity index 100% rename from code/JoinVerticesProcess.cpp rename to code/PostProcessing/JoinVerticesProcess.cpp diff --git a/code/JoinVerticesProcess.h b/code/PostProcessing/JoinVerticesProcess.h similarity index 100% rename from code/JoinVerticesProcess.h rename to code/PostProcessing/JoinVerticesProcess.h diff --git a/code/LimitBoneWeightsProcess.cpp b/code/PostProcessing/LimitBoneWeightsProcess.cpp similarity index 100% rename from code/LimitBoneWeightsProcess.cpp rename to code/PostProcessing/LimitBoneWeightsProcess.cpp diff --git a/code/LimitBoneWeightsProcess.h b/code/PostProcessing/LimitBoneWeightsProcess.h similarity index 100% rename from code/LimitBoneWeightsProcess.h rename to code/PostProcessing/LimitBoneWeightsProcess.h diff --git a/code/MakeVerboseFormat.cpp b/code/PostProcessing/MakeVerboseFormat.cpp similarity index 100% rename from code/MakeVerboseFormat.cpp rename to code/PostProcessing/MakeVerboseFormat.cpp diff --git a/code/MakeVerboseFormat.h b/code/PostProcessing/MakeVerboseFormat.h similarity index 100% rename from code/MakeVerboseFormat.h rename to code/PostProcessing/MakeVerboseFormat.h diff --git a/code/OptimizeGraph.cpp b/code/PostProcessing/OptimizeGraph.cpp similarity index 100% rename from code/OptimizeGraph.cpp rename to code/PostProcessing/OptimizeGraph.cpp diff --git a/code/OptimizeGraph.h b/code/PostProcessing/OptimizeGraph.h similarity index 100% rename from code/OptimizeGraph.h rename to code/PostProcessing/OptimizeGraph.h diff --git a/code/OptimizeMeshes.cpp b/code/PostProcessing/OptimizeMeshes.cpp similarity index 100% rename from code/OptimizeMeshes.cpp rename to code/PostProcessing/OptimizeMeshes.cpp diff --git a/code/OptimizeMeshes.h b/code/PostProcessing/OptimizeMeshes.h similarity index 100% rename from code/OptimizeMeshes.h rename to code/PostProcessing/OptimizeMeshes.h diff --git a/code/PostStepRegistry.cpp b/code/PostProcessing/PostStepRegistry.cpp similarity index 100% rename from code/PostStepRegistry.cpp rename to code/PostProcessing/PostStepRegistry.cpp diff --git a/code/PretransformVertices.cpp b/code/PostProcessing/PretransformVertices.cpp similarity index 100% rename from code/PretransformVertices.cpp rename to code/PostProcessing/PretransformVertices.cpp diff --git a/code/PretransformVertices.h b/code/PostProcessing/PretransformVertices.h similarity index 100% rename from code/PretransformVertices.h rename to code/PostProcessing/PretransformVertices.h diff --git a/code/ProcessHelper.cpp b/code/PostProcessing/ProcessHelper.cpp similarity index 100% rename from code/ProcessHelper.cpp rename to code/PostProcessing/ProcessHelper.cpp diff --git a/code/ProcessHelper.h b/code/PostProcessing/ProcessHelper.h similarity index 100% rename from code/ProcessHelper.h rename to code/PostProcessing/ProcessHelper.h diff --git a/code/RemoveComments.cpp b/code/PostProcessing/RemoveComments.cpp similarity index 100% rename from code/RemoveComments.cpp rename to code/PostProcessing/RemoveComments.cpp diff --git a/code/RemoveRedundantMaterials.cpp b/code/PostProcessing/RemoveRedundantMaterials.cpp similarity index 100% rename from code/RemoveRedundantMaterials.cpp rename to code/PostProcessing/RemoveRedundantMaterials.cpp diff --git a/code/RemoveRedundantMaterials.h b/code/PostProcessing/RemoveRedundantMaterials.h similarity index 100% rename from code/RemoveRedundantMaterials.h rename to code/PostProcessing/RemoveRedundantMaterials.h diff --git a/code/RemoveVCProcess.cpp b/code/PostProcessing/RemoveVCProcess.cpp similarity index 100% rename from code/RemoveVCProcess.cpp rename to code/PostProcessing/RemoveVCProcess.cpp diff --git a/code/RemoveVCProcess.h b/code/PostProcessing/RemoveVCProcess.h similarity index 100% rename from code/RemoveVCProcess.h rename to code/PostProcessing/RemoveVCProcess.h diff --git a/code/SGSpatialSort.cpp b/code/PostProcessing/SGSpatialSort.cpp similarity index 100% rename from code/SGSpatialSort.cpp rename to code/PostProcessing/SGSpatialSort.cpp diff --git a/code/ScaleProcess.cpp b/code/PostProcessing/ScaleProcess.cpp similarity index 100% rename from code/ScaleProcess.cpp rename to code/PostProcessing/ScaleProcess.cpp diff --git a/code/ScaleProcess.h b/code/PostProcessing/ScaleProcess.h similarity index 100% rename from code/ScaleProcess.h rename to code/PostProcessing/ScaleProcess.h diff --git a/code/ScenePreprocessor.cpp b/code/PostProcessing/ScenePreprocessor.cpp similarity index 100% rename from code/ScenePreprocessor.cpp rename to code/PostProcessing/ScenePreprocessor.cpp diff --git a/code/ScenePreprocessor.h b/code/PostProcessing/ScenePreprocessor.h similarity index 100% rename from code/ScenePreprocessor.h rename to code/PostProcessing/ScenePreprocessor.h diff --git a/code/SortByPTypeProcess.cpp b/code/PostProcessing/SortByPTypeProcess.cpp similarity index 100% rename from code/SortByPTypeProcess.cpp rename to code/PostProcessing/SortByPTypeProcess.cpp diff --git a/code/SortByPTypeProcess.h b/code/PostProcessing/SortByPTypeProcess.h similarity index 100% rename from code/SortByPTypeProcess.h rename to code/PostProcessing/SortByPTypeProcess.h diff --git a/code/SpatialSort.cpp b/code/PostProcessing/SpatialSort.cpp similarity index 100% rename from code/SpatialSort.cpp rename to code/PostProcessing/SpatialSort.cpp diff --git a/code/SplitByBoneCountProcess.cpp b/code/PostProcessing/SplitByBoneCountProcess.cpp similarity index 100% rename from code/SplitByBoneCountProcess.cpp rename to code/PostProcessing/SplitByBoneCountProcess.cpp diff --git a/code/SplitByBoneCountProcess.h b/code/PostProcessing/SplitByBoneCountProcess.h similarity index 100% rename from code/SplitByBoneCountProcess.h rename to code/PostProcessing/SplitByBoneCountProcess.h diff --git a/code/SplitLargeMeshes.cpp b/code/PostProcessing/SplitLargeMeshes.cpp similarity index 100% rename from code/SplitLargeMeshes.cpp rename to code/PostProcessing/SplitLargeMeshes.cpp diff --git a/code/SplitLargeMeshes.h b/code/PostProcessing/SplitLargeMeshes.h similarity index 100% rename from code/SplitLargeMeshes.h rename to code/PostProcessing/SplitLargeMeshes.h diff --git a/code/TextureTransform.cpp b/code/PostProcessing/TextureTransform.cpp similarity index 100% rename from code/TextureTransform.cpp rename to code/PostProcessing/TextureTransform.cpp diff --git a/code/TextureTransform.h b/code/PostProcessing/TextureTransform.h similarity index 100% rename from code/TextureTransform.h rename to code/PostProcessing/TextureTransform.h diff --git a/code/TriangulateProcess.cpp b/code/PostProcessing/TriangulateProcess.cpp similarity index 100% rename from code/TriangulateProcess.cpp rename to code/PostProcessing/TriangulateProcess.cpp diff --git a/code/TriangulateProcess.h b/code/PostProcessing/TriangulateProcess.h similarity index 100% rename from code/TriangulateProcess.h rename to code/PostProcessing/TriangulateProcess.h diff --git a/code/ValidateDataStructure.cpp b/code/PostProcessing/ValidateDataStructure.cpp similarity index 100% rename from code/ValidateDataStructure.cpp rename to code/PostProcessing/ValidateDataStructure.cpp diff --git a/code/ValidateDataStructure.h b/code/PostProcessing/ValidateDataStructure.h similarity index 100% rename from code/ValidateDataStructure.h rename to code/PostProcessing/ValidateDataStructure.h diff --git a/code/VertexTriangleAdjacency.cpp b/code/PostProcessing/VertexTriangleAdjacency.cpp similarity index 100% rename from code/VertexTriangleAdjacency.cpp rename to code/PostProcessing/VertexTriangleAdjacency.cpp diff --git a/code/VertexTriangleAdjacency.h b/code/PostProcessing/VertexTriangleAdjacency.h similarity index 100% rename from code/VertexTriangleAdjacency.h rename to code/PostProcessing/VertexTriangleAdjacency.h diff --git a/code/Q3BSPFileData.h b/code/Q3BSP/Q3BSPFileData.h similarity index 100% rename from code/Q3BSPFileData.h rename to code/Q3BSP/Q3BSPFileData.h diff --git a/code/Q3BSPFileImporter.cpp b/code/Q3BSP/Q3BSPFileImporter.cpp similarity index 100% rename from code/Q3BSPFileImporter.cpp rename to code/Q3BSP/Q3BSPFileImporter.cpp diff --git a/code/Q3BSPFileImporter.h b/code/Q3BSP/Q3BSPFileImporter.h similarity index 100% rename from code/Q3BSPFileImporter.h rename to code/Q3BSP/Q3BSPFileImporter.h diff --git a/code/Q3BSPFileParser.cpp b/code/Q3BSP/Q3BSPFileParser.cpp similarity index 100% rename from code/Q3BSPFileParser.cpp rename to code/Q3BSP/Q3BSPFileParser.cpp diff --git a/code/Q3BSPFileParser.h b/code/Q3BSP/Q3BSPFileParser.h similarity index 100% rename from code/Q3BSPFileParser.h rename to code/Q3BSP/Q3BSPFileParser.h diff --git a/code/Q3BSPZipArchive.cpp b/code/Q3BSP/Q3BSPZipArchive.cpp similarity index 100% rename from code/Q3BSPZipArchive.cpp rename to code/Q3BSP/Q3BSPZipArchive.cpp diff --git a/code/Q3BSPZipArchive.h b/code/Q3BSP/Q3BSPZipArchive.h similarity index 100% rename from code/Q3BSPZipArchive.h rename to code/Q3BSP/Q3BSPZipArchive.h diff --git a/code/Q3DLoader.cpp b/code/Q3D/Q3DLoader.cpp similarity index 100% rename from code/Q3DLoader.cpp rename to code/Q3D/Q3DLoader.cpp diff --git a/code/Q3DLoader.h b/code/Q3D/Q3DLoader.h similarity index 100% rename from code/Q3DLoader.h rename to code/Q3D/Q3DLoader.h diff --git a/code/RawLoader.cpp b/code/Raw/RawLoader.cpp similarity index 100% rename from code/RawLoader.cpp rename to code/Raw/RawLoader.cpp diff --git a/code/RawLoader.h b/code/Raw/RawLoader.h similarity index 100% rename from code/RawLoader.h rename to code/Raw/RawLoader.h diff --git a/code/SIBImporter.cpp b/code/SIB/SIBImporter.cpp similarity index 100% rename from code/SIBImporter.cpp rename to code/SIB/SIBImporter.cpp diff --git a/code/SIBImporter.h b/code/SIB/SIBImporter.h similarity index 100% rename from code/SIBImporter.h rename to code/SIB/SIBImporter.h diff --git a/code/SMDLoader.cpp b/code/SMD/SMDLoader.cpp similarity index 100% rename from code/SMDLoader.cpp rename to code/SMD/SMDLoader.cpp diff --git a/code/SMDLoader.h b/code/SMD/SMDLoader.h similarity index 100% rename from code/SMDLoader.h rename to code/SMD/SMDLoader.h diff --git a/code/STLExporter.cpp b/code/STL/STLExporter.cpp similarity index 100% rename from code/STLExporter.cpp rename to code/STL/STLExporter.cpp diff --git a/code/STLExporter.h b/code/STL/STLExporter.h similarity index 100% rename from code/STLExporter.h rename to code/STL/STLExporter.h diff --git a/code/STLLoader.cpp b/code/STL/STLLoader.cpp similarity index 100% rename from code/STLLoader.cpp rename to code/STL/STLLoader.cpp diff --git a/code/STLLoader.h b/code/STL/STLLoader.h similarity index 100% rename from code/STLLoader.h rename to code/STL/STLLoader.h diff --git a/code/STEPFile.h b/code/Step/STEPFile.h similarity index 100% rename from code/STEPFile.h rename to code/Step/STEPFile.h diff --git a/code/StepExporter.cpp b/code/Step/StepExporter.cpp similarity index 100% rename from code/StepExporter.cpp rename to code/Step/StepExporter.cpp diff --git a/code/StepExporter.h b/code/Step/StepExporter.h similarity index 100% rename from code/StepExporter.h rename to code/Step/StepExporter.h diff --git a/code/TerragenLoader.cpp b/code/Terragen/TerragenLoader.cpp similarity index 100% rename from code/TerragenLoader.cpp rename to code/Terragen/TerragenLoader.cpp diff --git a/code/TerragenLoader.h b/code/Terragen/TerragenLoader.h similarity index 100% rename from code/TerragenLoader.h rename to code/Terragen/TerragenLoader.h diff --git a/code/UnrealLoader.cpp b/code/Unreal/UnrealLoader.cpp similarity index 100% rename from code/UnrealLoader.cpp rename to code/Unreal/UnrealLoader.cpp diff --git a/code/UnrealLoader.h b/code/Unreal/UnrealLoader.h similarity index 100% rename from code/UnrealLoader.h rename to code/Unreal/UnrealLoader.h diff --git a/code/XFileExporter.cpp b/code/X/XFileExporter.cpp similarity index 100% rename from code/XFileExporter.cpp rename to code/X/XFileExporter.cpp diff --git a/code/XFileExporter.h b/code/X/XFileExporter.h similarity index 100% rename from code/XFileExporter.h rename to code/X/XFileExporter.h diff --git a/code/XFileHelper.h b/code/X/XFileHelper.h similarity index 100% rename from code/XFileHelper.h rename to code/X/XFileHelper.h diff --git a/code/XFileImporter.cpp b/code/X/XFileImporter.cpp similarity index 100% rename from code/XFileImporter.cpp rename to code/X/XFileImporter.cpp diff --git a/code/XFileImporter.h b/code/X/XFileImporter.h similarity index 100% rename from code/XFileImporter.h rename to code/X/XFileImporter.h diff --git a/code/XFileParser.cpp b/code/X/XFileParser.cpp similarity index 100% rename from code/XFileParser.cpp rename to code/X/XFileParser.cpp diff --git a/code/XFileParser.h b/code/X/XFileParser.h similarity index 100% rename from code/XFileParser.h rename to code/X/XFileParser.h diff --git a/code/X3DExporter.cpp b/code/X3D/X3DExporter.cpp similarity index 100% rename from code/X3DExporter.cpp rename to code/X3D/X3DExporter.cpp diff --git a/code/X3DExporter.hpp b/code/X3D/X3DExporter.hpp similarity index 100% rename from code/X3DExporter.hpp rename to code/X3D/X3DExporter.hpp diff --git a/code/X3DImporter.cpp b/code/X3D/X3DImporter.cpp similarity index 100% rename from code/X3DImporter.cpp rename to code/X3D/X3DImporter.cpp diff --git a/code/X3DImporter.hpp b/code/X3D/X3DImporter.hpp similarity index 100% rename from code/X3DImporter.hpp rename to code/X3D/X3DImporter.hpp diff --git a/code/X3DImporter_Geometry2D.cpp b/code/X3D/X3DImporter_Geometry2D.cpp similarity index 100% rename from code/X3DImporter_Geometry2D.cpp rename to code/X3D/X3DImporter_Geometry2D.cpp diff --git a/code/X3DImporter_Geometry3D.cpp b/code/X3D/X3DImporter_Geometry3D.cpp similarity index 100% rename from code/X3DImporter_Geometry3D.cpp rename to code/X3D/X3DImporter_Geometry3D.cpp diff --git a/code/X3DImporter_Group.cpp b/code/X3D/X3DImporter_Group.cpp similarity index 100% rename from code/X3DImporter_Group.cpp rename to code/X3D/X3DImporter_Group.cpp diff --git a/code/X3DImporter_Light.cpp b/code/X3D/X3DImporter_Light.cpp similarity index 100% rename from code/X3DImporter_Light.cpp rename to code/X3D/X3DImporter_Light.cpp diff --git a/code/X3DImporter_Macro.hpp b/code/X3D/X3DImporter_Macro.hpp similarity index 100% rename from code/X3DImporter_Macro.hpp rename to code/X3D/X3DImporter_Macro.hpp diff --git a/code/X3DImporter_Metadata.cpp b/code/X3D/X3DImporter_Metadata.cpp similarity index 100% rename from code/X3DImporter_Metadata.cpp rename to code/X3D/X3DImporter_Metadata.cpp diff --git a/code/X3DImporter_Networking.cpp b/code/X3D/X3DImporter_Networking.cpp similarity index 100% rename from code/X3DImporter_Networking.cpp rename to code/X3D/X3DImporter_Networking.cpp diff --git a/code/X3DImporter_Node.hpp b/code/X3D/X3DImporter_Node.hpp similarity index 100% rename from code/X3DImporter_Node.hpp rename to code/X3D/X3DImporter_Node.hpp diff --git a/code/X3DImporter_Postprocess.cpp b/code/X3D/X3DImporter_Postprocess.cpp similarity index 100% rename from code/X3DImporter_Postprocess.cpp rename to code/X3D/X3DImporter_Postprocess.cpp diff --git a/code/X3DImporter_Rendering.cpp b/code/X3D/X3DImporter_Rendering.cpp similarity index 100% rename from code/X3DImporter_Rendering.cpp rename to code/X3D/X3DImporter_Rendering.cpp diff --git a/code/X3DImporter_Shape.cpp b/code/X3D/X3DImporter_Shape.cpp similarity index 100% rename from code/X3DImporter_Shape.cpp rename to code/X3D/X3DImporter_Shape.cpp diff --git a/code/X3DImporter_Texturing.cpp b/code/X3D/X3DImporter_Texturing.cpp similarity index 100% rename from code/X3DImporter_Texturing.cpp rename to code/X3D/X3DImporter_Texturing.cpp diff --git a/code/X3DVocabulary.cpp b/code/X3D/X3DVocabulary.cpp similarity index 100% rename from code/X3DVocabulary.cpp rename to code/X3D/X3DVocabulary.cpp diff --git a/code/XGLLoader.cpp b/code/XGL/XGLLoader.cpp similarity index 100% rename from code/XGLLoader.cpp rename to code/XGL/XGLLoader.cpp diff --git a/code/XGLLoader.h b/code/XGL/XGLLoader.h similarity index 100% rename from code/XGLLoader.h rename to code/XGL/XGLLoader.h diff --git a/code/glTFAsset.h b/code/glTF/glTFAsset.h similarity index 100% rename from code/glTFAsset.h rename to code/glTF/glTFAsset.h diff --git a/code/glTFAsset.inl b/code/glTF/glTFAsset.inl similarity index 100% rename from code/glTFAsset.inl rename to code/glTF/glTFAsset.inl diff --git a/code/glTFAssetWriter.h b/code/glTF/glTFAssetWriter.h similarity index 100% rename from code/glTFAssetWriter.h rename to code/glTF/glTFAssetWriter.h diff --git a/code/glTFAssetWriter.inl b/code/glTF/glTFAssetWriter.inl similarity index 100% rename from code/glTFAssetWriter.inl rename to code/glTF/glTFAssetWriter.inl diff --git a/code/glTFExporter.cpp b/code/glTF/glTFExporter.cpp similarity index 100% rename from code/glTFExporter.cpp rename to code/glTF/glTFExporter.cpp diff --git a/code/glTFExporter.h b/code/glTF/glTFExporter.h similarity index 100% rename from code/glTFExporter.h rename to code/glTF/glTFExporter.h diff --git a/code/glTFImporter.cpp b/code/glTF/glTFImporter.cpp similarity index 100% rename from code/glTFImporter.cpp rename to code/glTF/glTFImporter.cpp diff --git a/code/glTFImporter.h b/code/glTF/glTFImporter.h similarity index 100% rename from code/glTFImporter.h rename to code/glTF/glTFImporter.h diff --git a/code/glTF2Asset.h b/code/glTF2/glTF2Asset.h similarity index 100% rename from code/glTF2Asset.h rename to code/glTF2/glTF2Asset.h diff --git a/code/glTF2Asset.inl b/code/glTF2/glTF2Asset.inl similarity index 100% rename from code/glTF2Asset.inl rename to code/glTF2/glTF2Asset.inl diff --git a/code/glTF2AssetWriter.h b/code/glTF2/glTF2AssetWriter.h similarity index 100% rename from code/glTF2AssetWriter.h rename to code/glTF2/glTF2AssetWriter.h diff --git a/code/glTF2AssetWriter.inl b/code/glTF2/glTF2AssetWriter.inl similarity index 100% rename from code/glTF2AssetWriter.inl rename to code/glTF2/glTF2AssetWriter.inl diff --git a/code/glTF2Exporter.cpp b/code/glTF2/glTF2Exporter.cpp similarity index 100% rename from code/glTF2Exporter.cpp rename to code/glTF2/glTF2Exporter.cpp diff --git a/code/glTF2Exporter.h b/code/glTF2/glTF2Exporter.h similarity index 100% rename from code/glTF2Exporter.h rename to code/glTF2/glTF2Exporter.h diff --git a/code/glTF2Importer.cpp b/code/glTF2/glTF2Importer.cpp similarity index 100% rename from code/glTF2Importer.cpp rename to code/glTF2/glTF2Importer.cpp diff --git a/code/glTF2Importer.h b/code/glTF2/glTF2Importer.h similarity index 100% rename from code/glTF2Importer.h rename to code/glTF2/glTF2Importer.h From 2d985b92c98cfd53f709e36be0e70b0760d7a222 Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Sun, 9 Jun 2019 18:43:56 +0200 Subject: [PATCH 05/24] Fix references in cmake file. --- code/CMakeLists.txt | 724 +++++++++--------- code/{ => Common}/IFF.h | 0 .../PostStepRegistry.cpp | 0 .../RemoveComments.cpp | 0 .../SGSpatialSort.cpp | 0 .../ScenePreprocessor.cpp | 0 .../ScenePreprocessor.h | 0 .../SpatialSort.cpp | 0 .../SplitByBoneCountProcess.cpp | 0 .../SplitByBoneCountProcess.h | 0 .../VertexTriangleAdjacency.cpp | 0 .../VertexTriangleAdjacency.h | 0 ...MaterialLoader.cpp => OpenGEXExporter.cpp} | 0 ...{MDLMaterialLoader.h => OpenGEXExporter.h} | 0 code/{Common => X3D}/FIReader.cpp | 0 code/{Common => X3D}/FIReader.hpp | 0 test/CMakeLists.txt | 2 +- 17 files changed, 365 insertions(+), 361 deletions(-) rename code/{ => Common}/IFF.h (100%) rename code/{PostProcessing => Common}/PostStepRegistry.cpp (100%) rename code/{PostProcessing => Common}/RemoveComments.cpp (100%) rename code/{PostProcessing => Common}/SGSpatialSort.cpp (100%) rename code/{PostProcessing => Common}/ScenePreprocessor.cpp (100%) rename code/{PostProcessing => Common}/ScenePreprocessor.h (100%) rename code/{PostProcessing => Common}/SpatialSort.cpp (100%) rename code/{PostProcessing => Common}/SplitByBoneCountProcess.cpp (100%) rename code/{PostProcessing => Common}/SplitByBoneCountProcess.h (100%) rename code/{PostProcessing => Common}/VertexTriangleAdjacency.cpp (100%) rename code/{PostProcessing => Common}/VertexTriangleAdjacency.h (100%) rename code/OpenGEX/{MDLMaterialLoader.cpp => OpenGEXExporter.cpp} (100%) rename code/OpenGEX/{MDLMaterialLoader.h => OpenGEXExporter.h} (100%) rename code/{Common => X3D}/FIReader.cpp (100%) rename code/{Common => X3D}/FIReader.hpp (100%) diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt index 83209ca03..d3333c37e 100644 --- a/code/CMakeLists.txt +++ b/code/CMakeLists.txt @@ -142,7 +142,7 @@ SET( PUBLIC_HEADERS ) SET( Core_SRCS - Assimp.cpp + Common/Assimp.cpp ) IF(MSVC) @@ -154,52 +154,57 @@ SET( Logging_SRCS ${HEADER_PATH}/LogStream.hpp ${HEADER_PATH}/Logger.hpp ${HEADER_PATH}/NullLogger.hpp - Win32DebugLogStream.h - DefaultLogger.cpp - FileLogStream.h - StdOStreamLogStream.h + Common/Win32DebugLogStream.h + Common/DefaultLogger.cpp + Common/FileLogStream.h + Common/StdOStreamLogStream.h ) SOURCE_GROUP(Logging FILES ${Logging_SRCS}) SET( Common_SRCS - BaseImporter.cpp - BaseProcess.cpp - BaseProcess.h - Importer.h - ScenePrivate.h - PostStepRegistry.cpp - ImporterRegistry.cpp - DefaultProgressHandler.h - DefaultIOStream.cpp - DefaultIOSystem.cpp - CInterfaceIOWrapper.cpp - CInterfaceIOWrapper.h - Importer.cpp - IFF.h - SGSpatialSort.cpp - VertexTriangleAdjacency.cpp - VertexTriangleAdjacency.h - SpatialSort.cpp - SceneCombiner.cpp - ScenePreprocessor.cpp - ScenePreprocessor.h - SkeletonMeshBuilder.cpp - SplitByBoneCountProcess.cpp - SplitByBoneCountProcess.h - StandardShapes.cpp - TargetAnimation.cpp - TargetAnimation.h - RemoveComments.cpp - Subdivision.cpp - scene.cpp - Bitmap.cpp - Version.cpp - CreateAnimMesh.cpp - simd.h - simd.cpp + Common/BaseImporter.cpp + Common/BaseProcess.cpp + Common/BaseProcess.h + Common/Importer.h + Common/ScenePrivate.h + Common/PostStepRegistry.cpp + Common/ImporterRegistry.cpp + Common/DefaultProgressHandler.h + Common/DefaultIOStream.cpp + Common/DefaultIOSystem.cpp + Common/PolyTools.h + Common/Importer.cpp + Common/IFF.h + Common/SGSpatialSort.cpp + Common/VertexTriangleAdjacency.cpp + Common/VertexTriangleAdjacency.h + Common/SpatialSort.cpp + Common/SceneCombiner.cpp + Common/ScenePreprocessor.cpp + Common/ScenePreprocessor.h + Common/SkeletonMeshBuilder.cpp + Common/SplitByBoneCountProcess.cpp + Common/SplitByBoneCountProcess.h + Common/StandardShapes.cpp + Common/TargetAnimation.cpp + Common/TargetAnimation.h + Common/RemoveComments.cpp + Common/Subdivision.cpp + Common/scene.cpp + Common/Bitmap.cpp + Common/Version.cpp + Common/CreateAnimMesh.cpp + Common/simd.h + Common/simd.cpp ) SOURCE_GROUP(Common FILES ${Common_SRCS}) +SET( CApi_SRCS + CApi/CInterfaceIOWrapper.cpp + CApi/CInterfaceIOWrapper.h +) +SOURCE_GROUP(CApi FILES ${CApi_SRCS}) + SET( STEPParser_SRCS Importer/STEPParser/STEPFileReader.h Importer/STEPParser/STEPFileReader.cpp @@ -210,8 +215,8 @@ SOURCE_GROUP(STEPParser FILES ${STEPParser_SRCS}) IF ( ASSIMP_BUILD_NONFREE_C4D_IMPORTER ) SET( C4D_SRCS - C4DImporter.cpp - C4DImporter.h + C4D/C4DImporter.cpp + C4D/C4DImporter.h ) SOURCE_GROUP( C4D FILES ${C4D_SRCS}) ENDIF ( ASSIMP_BUILD_NONFREE_C4D_IMPORTER ) @@ -283,261 +288,261 @@ SET(ASSIMP_EXPORTERS_ENABLED "") # list of enabled exporters SET(ASSIMP_EXPORTERS_DISABLED "") # disabled exporters list (used to print) ADD_ASSIMP_IMPORTER( AMF - AMFImporter.hpp - AMFImporter_Macro.hpp - AMFImporter_Node.hpp - AMFImporter.cpp - AMFImporter_Geometry.cpp - AMFImporter_Material.cpp - AMFImporter_Postprocess.cpp + AMF/AMFImporter.hpp + AMF/AMFImporter_Macro.hpp + AMF/AMFImporter_Node.hpp + AMF/AMFImporter.cpp + AMF/AMFImporter_Geometry.cpp + AMF/AMFImporter_Material.cpp + AMF/AMFImporter_Postprocess.cpp ) ADD_ASSIMP_IMPORTER( 3DS - 3DSConverter.cpp - 3DSHelper.h - 3DSLoader.cpp - 3DSLoader.h + 3DS/3DSConverter.cpp + 3DS/3DSHelper.h + 3DS/3DSLoader.cpp + 3DS/3DSLoader.h ) ADD_ASSIMP_EXPORTER( 3DS - 3DSExporter.h - 3DSExporter.cpp + 3DS/3DSExporter.h + 3DS/3DSExporter.cpp ) ADD_ASSIMP_IMPORTER( AC - ACLoader.cpp - ACLoader.h + AC/ACLoader.cpp + AC/ACLoader.h ) ADD_ASSIMP_IMPORTER( ASE - ASELoader.cpp - ASELoader.h - ASEParser.cpp - ASEParser.h + ASE/ASELoader.cpp + ASE/ASELoader.h + ASE/ASEParser.cpp + ASE/ASEParser.h ) ADD_ASSIMP_IMPORTER( ASSBIN - AssbinLoader.h - AssbinLoader.cpp + Assbin/AssbinLoader.h + Assbin/AssbinLoader.cpp ) ADD_ASSIMP_EXPORTER( ASSBIN - AssbinExporter.h - AssbinExporter.cpp + Assbin/AssbinExporter.h + Assbin/AssbinExporter.cpp ) ADD_ASSIMP_IMPORTER( ASSXML - AssxmlExporter.h - AssxmlExporter.cpp + Assxml/AssxmlExporter.h + Assxml/AssxmlExporter.cpp ) ADD_ASSIMP_IMPORTER( B3D - B3DImporter.cpp - B3DImporter.h + B3D/B3DImporter.cpp + B3D/B3DImporter.h ) ADD_ASSIMP_IMPORTER( BVH - BVHLoader.cpp - BVHLoader.h + BVH/BVHLoader.cpp + BVH/BVHLoader.h ) ADD_ASSIMP_IMPORTER( COLLADA - ColladaHelper.h - ColladaLoader.cpp - ColladaLoader.h - ColladaParser.cpp - ColladaParser.h + Collada/ColladaHelper.h + Collada/ColladaLoader.cpp + Collada/ColladaLoader.h + Collada/ColladaParser.cpp + Collada/ColladaParser.h ) ADD_ASSIMP_EXPORTER( COLLADA - ColladaExporter.h - ColladaExporter.cpp + Collada/ColladaExporter.h + Collada/ColladaExporter.cpp ) ADD_ASSIMP_IMPORTER( DXF - DXFLoader.cpp - DXFLoader.h - DXFHelper.h + DXF/DXFLoader.cpp + DXF/DXFLoader.h + DXF/DXFHelper.h ) ADD_ASSIMP_IMPORTER( CSM - CSMLoader.cpp - CSMLoader.h + CSM/CSMLoader.cpp + CSM/CSMLoader.h ) ADD_ASSIMP_IMPORTER( HMP - HMPFileData.h - HMPLoader.cpp - HMPLoader.h - HalfLifeFileData.h + HMP/HMPFileData.h + HMP/HMPLoader.cpp + HMP/HMPLoader.h + HMP/HalfLifeFileData.h ) ADD_ASSIMP_IMPORTER( IRRMESH - IRRMeshLoader.cpp - IRRMeshLoader.h - IRRShared.cpp - IRRShared.h + IRR/IRRMeshLoader.cpp + IRR/IRRMeshLoader.h + IRR/IRRShared.cpp + IRR/IRRShared.h ) ADD_ASSIMP_IMPORTER( IRR - IRRLoader.cpp - IRRLoader.h - IRRShared.cpp - IRRShared.h + IRR/IRRLoader.cpp + IRR/IRRLoader.h + IRR/IRRShared.cpp + IRR/IRRShared.h ) ADD_ASSIMP_IMPORTER( LWO - LWOAnimation.cpp - LWOAnimation.h - LWOBLoader.cpp - LWOFileData.h - LWOLoader.cpp - LWOLoader.h - LWOMaterial.cpp + LWO/LWOAnimation.cpp + LWO/LWOAnimation.h + LWO/LWOBLoader.cpp + LWO/LWOFileData.h + LWO/LWOLoader.cpp + LWO/LWOLoader.h + LWO/LWOMaterial.cpp ) ADD_ASSIMP_IMPORTER( LWS - LWSLoader.cpp - LWSLoader.h + LWS/LWSLoader.cpp + LWS/LWSLoader.h ) ADD_ASSIMP_IMPORTER( MD2 - MD2FileData.h - MD2Loader.cpp - MD2Loader.h - MD2NormalTable.h + MD2/MD2FileData.h + MD2/MD2Loader.cpp + MD2/MD2Loader.h + MD2/MD2NormalTable.h ) ADD_ASSIMP_IMPORTER( MD3 - MD3FileData.h - MD3Loader.cpp - MD3Loader.h + MD3/MD3FileData.h + MD3/MD3Loader.cpp + MD3/MD3Loader.h ) ADD_ASSIMP_IMPORTER( MD5 - MD5Loader.cpp - MD5Loader.h - MD5Parser.cpp - MD5Parser.h + MD5/MD5Loader.cpp + MD5/MD5Loader.h + MD5/MD5Parser.cpp + MD5/MD5Parser.h ) ADD_ASSIMP_IMPORTER( MDC - MDCFileData.h - MDCLoader.cpp - MDCLoader.h - MDCNormalTable.h + MDC/MDCFileData.h + MDC/MDCLoader.cpp + MDC/MDCLoader.h + MDC/MDCNormalTable.h ) ADD_ASSIMP_IMPORTER( MDL - MDLDefaultColorMap.h - MDLFileData.h - MDLLoader.cpp - MDLLoader.h - MDLMaterialLoader.cpp + MDL/MDLDefaultColorMap.h + MDL/MDLFileData.h + MDL/MDLLoader.cpp + MDL/MDLLoader.h + MDL/MDLMaterialLoader.cpp ) SET( MaterialSystem_SRCS - MaterialSystem.cpp - MaterialSystem.h + Material/MaterialSystem.cpp + Material/MaterialSystem.h ) SOURCE_GROUP( MaterialSystem FILES ${MaterialSystem_SRCS}) ADD_ASSIMP_IMPORTER( NFF - NFFLoader.cpp - NFFLoader.h + NFF/NFFLoader.cpp + NFF/NFFLoader.h ) ADD_ASSIMP_IMPORTER( NDO - NDOLoader.cpp - NDOLoader.h + NDO/NDOLoader.cpp + NDO/NDOLoader.h ) ADD_ASSIMP_IMPORTER( OFF - OFFLoader.cpp - OFFLoader.h + OFF/OFFLoader.cpp + OFF/OFFLoader.h ) ADD_ASSIMP_IMPORTER( OBJ - ObjFileData.h - ObjFileImporter.cpp - ObjFileImporter.h - ObjFileMtlImporter.cpp - ObjFileMtlImporter.h - ObjFileParser.cpp - ObjFileParser.h - ObjTools.h + Obj/ObjFileData.h + Obj/ObjFileImporter.cpp + Obj/ObjFileImporter.h + Obj/ObjFileMtlImporter.cpp + Obj/ObjFileMtlImporter.h + Obj/ObjFileParser.cpp + Obj/ObjFileParser.h + Obj/ObjTools.h ) ADD_ASSIMP_EXPORTER( OBJ - ObjExporter.h - ObjExporter.cpp + Obj/ObjExporter.h + Obj/ObjExporter.cpp ) ADD_ASSIMP_IMPORTER( OGRE - OgreImporter.h - OgreStructs.h - OgreParsingUtils.h - OgreBinarySerializer.h - OgreXmlSerializer.h - OgreImporter.cpp - OgreStructs.cpp - OgreBinarySerializer.cpp - OgreXmlSerializer.cpp - OgreMaterial.cpp + Ogre/OgreImporter.h + Ogre/OgreStructs.h + Ogre/OgreParsingUtils.h + Ogre/OgreBinarySerializer.h + Ogre/OgreXmlSerializer.h + Ogre/OgreImporter.cpp + Ogre/OgreStructs.cpp + Ogre/OgreBinarySerializer.cpp + Ogre/OgreXmlSerializer.cpp + Ogre/OgreMaterial.cpp ) ADD_ASSIMP_IMPORTER( OPENGEX - OpenGEXImporter.cpp - OpenGEXImporter.h - OpenGEXStructs.h + OpenGEX/OpenGEXImporter.cpp + OpenGEX/OpenGEXImporter.h + OpenGEX/OpenGEXStructs.h ) ADD_ASSIMP_EXPORTER( OPENGEX - OpenGEXExporter.cpp - OpenGEXExporter.h + OpenGEX/OpenGEXExporter.cpp + OpenGEX/OpenGEXExporter.h ) ADD_ASSIMP_IMPORTER( PLY - PlyLoader.cpp - PlyLoader.h - PlyParser.cpp - PlyParser.h + Ply/PlyLoader.cpp + Ply/PlyLoader.h + Ply/PlyParser.cpp + Ply/PlyParser.h ) ADD_ASSIMP_EXPORTER( PLY - PlyExporter.cpp - PlyExporter.h + Ply/PlyExporter.cpp + Ply/PlyExporter.h ) ADD_ASSIMP_IMPORTER( MS3D - MS3DLoader.cpp - MS3DLoader.h + MS3D/MS3DLoader.cpp + MS3D/MS3DLoader.h ) ADD_ASSIMP_IMPORTER( COB - COBLoader.cpp - COBLoader.h - COBScene.h + COB/COBLoader.cpp + COB/COBLoader.h + COB/COBScene.h ) ADD_ASSIMP_IMPORTER( BLEND - BlenderLoader.cpp - BlenderLoader.h - BlenderDNA.cpp - BlenderDNA.h - BlenderDNA.inl - BlenderScene.cpp - BlenderScene.h - BlenderSceneGen.h - BlenderIntermediate.h - BlenderModifier.h - BlenderModifier.cpp - BlenderBMesh.h - BlenderBMesh.cpp - BlenderTessellator.h - BlenderTessellator.cpp - BlenderCustomData.h - BlenderCustomData.cpp + Blender/BlenderLoader.cpp + Blender/BlenderLoader.h + Blender/BlenderDNA.cpp + Blender/BlenderDNA.h + Blender/BlenderDNA.inl + Blender/BlenderScene.cpp + Blender/BlenderScene.h + Blender/BlenderSceneGen.h + Blender/BlenderIntermediate.h + Blender/BlenderModifier.h + Blender/BlenderModifier.cpp + Blender/BlenderBMesh.h + Blender/BlenderBMesh.cpp + Blender/BlenderTessellator.h + Blender/BlenderTessellator.cpp + Blender/BlenderCustomData.h + Blender/BlenderCustomData.cpp ) ADD_ASSIMP_IMPORTER( IFC @@ -565,106 +570,105 @@ if (ASSIMP_BUILD_IFC_IMPORTER) endif (ASSIMP_BUILD_IFC_IMPORTER) ADD_ASSIMP_IMPORTER( XGL - XGLLoader.cpp - XGLLoader.h + XGL/XGLLoader.cpp + XGL/XGLLoader.h ) ADD_ASSIMP_IMPORTER( FBX - FBXImporter.cpp - FBXCompileConfig.h - FBXImporter.h - FBXParser.cpp - FBXParser.h - FBXTokenizer.cpp - FBXTokenizer.h - FBXImportSettings.h - FBXConverter.h - FBXConverter.cpp - FBXUtil.h - FBXUtil.cpp - FBXDocument.h - FBXDocument.cpp - FBXProperties.h - FBXProperties.cpp - FBXMeshGeometry.h - FBXMeshGeometry.cpp - FBXMaterial.cpp - FBXModel.cpp - FBXAnimation.cpp - FBXNodeAttribute.cpp - FBXDeformer.cpp - FBXBinaryTokenizer.cpp - FBXDocumentUtil.cpp - FBXCommon.h + FBX/FBXImporter.cpp + FBX/FBXCompileConfig.h + FBX/FBXImporter.h + FBX/FBXParser.cpp + FBX/FBXParser.h + FBX/FBXTokenizer.cpp + FBX/FBXTokenizer.h + FBX/FBXImportSettings.h + FBX/FBXConverter.h + FBX/FBXConverter.cpp + FBX/FBXUtil.h + FBX/FBXUtil.cpp + FBX/FBXDocument.h + FBX/FBXDocument.cpp + FBX/FBXProperties.h + FBX/FBXProperties.cpp + FBX/FBXMeshGeometry.h + FBX/FBXMeshGeometry.cpp + FBX/FBXMaterial.cpp + FBX/FBXModel.cpp + FBX/FBXAnimation.cpp + FBX/FBXNodeAttribute.cpp + FBX/FBXDeformer.cpp + FBX/FBXBinaryTokenizer.cpp + FBX/FBXDocumentUtil.cpp + FBX/FBXCommon.h ) ADD_ASSIMP_EXPORTER( FBX - FBXExporter.h - FBXExporter.cpp - FBXExportNode.h - FBXExportNode.cpp - FBXExportProperty.h - FBXExportProperty.cpp + FBX/FBXExporter.h + FBX/FBXExporter.cpp + FBX/FBXExportNode.h + FBX/FBXExportNode.cpp + FBX/FBXExportProperty.h + FBX/FBXExportProperty.cpp ) SET( PostProcessing_SRCS - CalcTangentsProcess.cpp - CalcTangentsProcess.h - ComputeUVMappingProcess.cpp - ComputeUVMappingProcess.h - ConvertToLHProcess.cpp - ConvertToLHProcess.h - EmbedTexturesProcess.cpp - EmbedTexturesProcess.h - FindDegenerates.cpp - FindDegenerates.h - FindInstancesProcess.cpp - FindInstancesProcess.h - FindInvalidDataProcess.cpp - FindInvalidDataProcess.h - FixNormalsStep.cpp - FixNormalsStep.h - DropFaceNormalsProcess.cpp - DropFaceNormalsProcess.h - GenFaceNormalsProcess.cpp - GenFaceNormalsProcess.h - GenVertexNormalsProcess.cpp - GenVertexNormalsProcess.h - PretransformVertices.cpp - PretransformVertices.h - ImproveCacheLocality.cpp - ImproveCacheLocality.h - JoinVerticesProcess.cpp - JoinVerticesProcess.h - LimitBoneWeightsProcess.cpp - LimitBoneWeightsProcess.h - RemoveRedundantMaterials.cpp - RemoveRedundantMaterials.h - RemoveVCProcess.cpp - RemoveVCProcess.h - SortByPTypeProcess.cpp - SortByPTypeProcess.h - SplitLargeMeshes.cpp - SplitLargeMeshes.h - TextureTransform.cpp - TextureTransform.h - TriangulateProcess.cpp - TriangulateProcess.h - ValidateDataStructure.cpp - ValidateDataStructure.h - OptimizeGraph.cpp - OptimizeGraph.h - OptimizeMeshes.cpp - OptimizeMeshes.h - DeboneProcess.cpp - DeboneProcess.h - ProcessHelper.h - ProcessHelper.cpp - PolyTools.h - MakeVerboseFormat.cpp - MakeVerboseFormat.h - ScaleProcess.cpp - ScaleProcess.h + PostProcessing/CalcTangentsProcess.cpp + PostProcessing/CalcTangentsProcess.h + PostProcessing/ComputeUVMappingProcess.cpp + PostProcessing/ComputeUVMappingProcess.h + PostProcessing/ConvertToLHProcess.cpp + PostProcessing/ConvertToLHProcess.h + PostProcessing/EmbedTexturesProcess.cpp + PostProcessing/EmbedTexturesProcess.h + PostProcessing/FindDegenerates.cpp + PostProcessing/FindDegenerates.h + PostProcessing/FindInstancesProcess.cpp + PostProcessing/FindInstancesProcess.h + PostProcessing/FindInvalidDataProcess.cpp + PostProcessing/FindInvalidDataProcess.h + PostProcessing/FixNormalsStep.cpp + PostProcessing/FixNormalsStep.h + PostProcessing/DropFaceNormalsProcess.cpp + PostProcessing/DropFaceNormalsProcess.h + PostProcessing/GenFaceNormalsProcess.cpp + PostProcessing/GenFaceNormalsProcess.h + PostProcessing/GenVertexNormalsProcess.cpp + PostProcessing/GenVertexNormalsProcess.h + PostProcessing/PretransformVertices.cpp + PostProcessing/PretransformVertices.h + PostProcessing/ImproveCacheLocality.cpp + PostProcessing/ImproveCacheLocality.h + PostProcessing/JoinVerticesProcess.cpp + PostProcessing/JoinVerticesProcess.h + PostProcessing/LimitBoneWeightsProcess.cpp + PostProcessing/LimitBoneWeightsProcess.h + PostProcessing/RemoveRedundantMaterials.cpp + PostProcessing/RemoveRedundantMaterials.h + PostProcessing/RemoveVCProcess.cpp + PostProcessing/RemoveVCProcess.h + PostProcessing/SortByPTypeProcess.cpp + PostProcessing/SortByPTypeProcess.h + PostProcessing/SplitLargeMeshes.cpp + PostProcessing/SplitLargeMeshes.h + PostProcessing/TextureTransform.cpp + PostProcessing/TextureTransform.h + PostProcessing/TriangulateProcess.cpp + PostProcessing/TriangulateProcess.h + PostProcessing/ValidateDataStructure.cpp + PostProcessing/ValidateDataStructure.h + PostProcessing/OptimizeGraph.cpp + PostProcessing/OptimizeGraph.h + PostProcessing/OptimizeMeshes.cpp + PostProcessing/OptimizeMeshes.h + PostProcessing/DeboneProcess.cpp + PostProcessing/DeboneProcess.h + PostProcessing/ProcessHelper.h + PostProcessing/ProcessHelper.cpp + PostProcessing/MakeVerboseFormat.cpp + PostProcessing/MakeVerboseFormat.h + PostProcessing/ScaleProcess.cpp + PostProcessing/ScaleProcess.h ) SOURCE_GROUP( PostProcessing FILES ${PostProcessing_SRCS}) @@ -672,136 +676,136 @@ SET( IrrXML_SRCS ${HEADER_PATH}/irrXMLWrapper.h ) SOURCE_GROUP( IrrXML FILES ${IrrXML_SRCS}) ADD_ASSIMP_IMPORTER( Q3D - Q3DLoader.cpp - Q3DLoader.h + Q3D/Q3DLoader.cpp + Q3D/Q3DLoader.h ) ADD_ASSIMP_IMPORTER( Q3BSP - Q3BSPFileData.h - Q3BSPFileParser.h - Q3BSPFileParser.cpp - Q3BSPFileImporter.h - Q3BSPFileImporter.cpp - Q3BSPZipArchive.h - Q3BSPZipArchive.cpp + Q3BSP/Q3BSPFileData.h + Q3BSP/Q3BSPFileParser.h + Q3BSP/Q3BSPFileParser.cpp + Q3BSP/Q3BSPFileImporter.h + Q3BSP/Q3BSPFileImporter.cpp + Q3BSP/Q3BSPZipArchive.h + Q3BSP/Q3BSPZipArchive.cpp ) ADD_ASSIMP_IMPORTER( RAW - RawLoader.cpp - RawLoader.h + Raw/RawLoader.cpp + Raw/RawLoader.h ) ADD_ASSIMP_IMPORTER( SIB - SIBImporter.cpp - SIBImporter.h + SIB/SIBImporter.cpp + SIB/SIBImporter.h ) ADD_ASSIMP_IMPORTER( SMD - SMDLoader.cpp - SMDLoader.h + SMD/SMDLoader.cpp + SMD/SMDLoader.h ) ADD_ASSIMP_IMPORTER( STL - STLLoader.cpp - STLLoader.h + STL/STLLoader.cpp + STL/STLLoader.h ) ADD_ASSIMP_EXPORTER( STL - STLExporter.h - STLExporter.cpp + STL/STLExporter.h + STL/STLExporter.cpp ) ADD_ASSIMP_IMPORTER( TERRAGEN - TerragenLoader.cpp - TerragenLoader.h + Terragen/TerragenLoader.cpp + Terragen/TerragenLoader.h ) ADD_ASSIMP_IMPORTER( 3D - UnrealLoader.cpp - UnrealLoader.h + Unreal/UnrealLoader.cpp + Unreal/UnrealLoader.h ) ADD_ASSIMP_IMPORTER( X - XFileHelper.h - XFileImporter.cpp - XFileImporter.h - XFileParser.cpp - XFileParser.h + X/XFileHelper.h + X/XFileImporter.cpp + X/XFileImporter.h + X/XFileParser.cpp + X/XFileParser.h ) ADD_ASSIMP_EXPORTER( X - XFileExporter.h - XFileExporter.cpp + X/XFileExporter.h + X/XFileExporter.cpp ) ADD_ASSIMP_IMPORTER( X3D - X3DImporter.cpp - X3DImporter.hpp - X3DImporter_Geometry2D.cpp - X3DImporter_Geometry3D.cpp - X3DImporter_Group.cpp - X3DImporter_Light.cpp - X3DImporter_Macro.hpp - X3DImporter_Metadata.cpp - X3DImporter_Networking.cpp - X3DImporter_Node.hpp - X3DImporter_Postprocess.cpp - X3DImporter_Rendering.cpp - X3DImporter_Shape.cpp - X3DImporter_Texturing.cpp - FIReader.hpp - FIReader.cpp - X3DVocabulary.cpp + X3D/X3DImporter.cpp + X3D/X3DImporter.hpp + X3D/X3DImporter_Geometry2D.cpp + X3D/X3DImporter_Geometry3D.cpp + X3D/X3DImporter_Group.cpp + X3D/X3DImporter_Light.cpp + X3D/X3DImporter_Macro.hpp + X3D/X3DImporter_Metadata.cpp + X3D/X3DImporter_Networking.cpp + X3D/X3DImporter_Node.hpp + X3D/X3DImporter_Postprocess.cpp + X3D/X3DImporter_Rendering.cpp + X3D/X3DImporter_Shape.cpp + X3D/X3DImporter_Texturing.cpp + X3D/FIReader.hpp + X3D/FIReader.cpp + X3D/X3DVocabulary.cpp ) ADD_ASSIMP_EXPORTER( X3D - X3DExporter.cpp - X3DExporter.hpp + X3D/X3DExporter.cpp + X3D/X3DExporter.hpp ) ADD_ASSIMP_IMPORTER( GLTF - glTFAsset.h - glTFAsset.inl - glTFAssetWriter.h - glTFAssetWriter.inl - glTFImporter.cpp - glTFImporter.h - glTF2Asset.h - glTF2Asset.inl - glTF2AssetWriter.h - glTF2AssetWriter.inl - glTF2Importer.cpp - glTF2Importer.h + glTF/glTFAsset.h + glTF/glTFAsset.inl + glTF/glTFAssetWriter.h + glTF/glTFAssetWriter.inl + glTF/glTFImporter.cpp + glTF/glTFImporter.h + glTF2/glTF2Asset.h + glTF2/glTF2Asset.inl + glTF2/glTF2AssetWriter.h + glTF2/glTF2AssetWriter.inl + glTF2/glTF2Importer.cpp + glTF2/glTF2Importer.h ) ADD_ASSIMP_EXPORTER( GLTF - glTFExporter.h - glTFExporter.cpp - glTF2Exporter.h - glTF2Exporter.cpp + glTF/glTFExporter.h + glTF/glTFExporter.cpp + glTF2/glTF2Exporter.h + glTF2/glTF2Exporter.cpp ) ADD_ASSIMP_IMPORTER( 3MF - D3MFImporter.h - D3MFImporter.cpp - D3MFOpcPackage.h - D3MFOpcPackage.cpp - 3MFXmlTags.h + 3MF/D3MFImporter.h + 3MF/D3MFImporter.cpp + 3MF/D3MFOpcPackage.h + 3MF/D3MFOpcPackage.cpp + 3MF/3MFXmlTags.h ) ADD_ASSIMP_EXPORTER( 3MF - D3MFExporter.h - D3MFExporter.cpp + 3MF/D3MFExporter.h + 3MF/D3MFExporter.cpp ) ADD_ASSIMP_IMPORTER( MMD - MMDCpp14.h - MMDImporter.cpp - MMDImporter.h - MMDPmdParser.h - MMDPmxParser.h - MMDPmxParser.cpp - MMDVmdParser.h + MMD/MMDCpp14.h + MMD/MMDImporter.cpp + MMD/MMDImporter.h + MMD/MMDPmdParser.h + MMD/MMDPmxParser.h + MMD/MMDPmxParser.cpp + MMD/MMDVmdParser.h ) # Workaround for issue #2406 - force problematic large file to be optimized to prevent string table overflow error @@ -817,7 +821,7 @@ if ((CMAKE_COMPILER_IS_MINGW) AND (CMAKE_BUILD_TYPE MATCHES Debug)) endif() ADD_ASSIMP_IMPORTER( STEP - STEPFile.h + Step/STEPFile.h Importer/StepFile/StepFileImporter.h Importer/StepFile/StepFileImporter.cpp Importer/StepFile/StepFileGen1.cpp @@ -827,14 +831,14 @@ ADD_ASSIMP_IMPORTER( STEP ) ADD_ASSIMP_EXPORTER( STEP - StepExporter.h - StepExporter.cpp + Step/StepExporter.h + Step/StepExporter.cpp ) if ((NOT ASSIMP_NO_EXPORT) OR (NOT ASSIMP_EXPORTERS_ENABLED STREQUAL "")) SET( Exporter_SRCS - Exporter.cpp - AssimpCExport.cpp + Common/Exporter.cpp + CApi/AssimpCExport.cpp ${HEADER_PATH}/BlobIOSystem.h ) SOURCE_GROUP( Exporter FILES ${Exporter_SRCS}) diff --git a/code/IFF.h b/code/Common/IFF.h similarity index 100% rename from code/IFF.h rename to code/Common/IFF.h diff --git a/code/PostProcessing/PostStepRegistry.cpp b/code/Common/PostStepRegistry.cpp similarity index 100% rename from code/PostProcessing/PostStepRegistry.cpp rename to code/Common/PostStepRegistry.cpp diff --git a/code/PostProcessing/RemoveComments.cpp b/code/Common/RemoveComments.cpp similarity index 100% rename from code/PostProcessing/RemoveComments.cpp rename to code/Common/RemoveComments.cpp diff --git a/code/PostProcessing/SGSpatialSort.cpp b/code/Common/SGSpatialSort.cpp similarity index 100% rename from code/PostProcessing/SGSpatialSort.cpp rename to code/Common/SGSpatialSort.cpp diff --git a/code/PostProcessing/ScenePreprocessor.cpp b/code/Common/ScenePreprocessor.cpp similarity index 100% rename from code/PostProcessing/ScenePreprocessor.cpp rename to code/Common/ScenePreprocessor.cpp diff --git a/code/PostProcessing/ScenePreprocessor.h b/code/Common/ScenePreprocessor.h similarity index 100% rename from code/PostProcessing/ScenePreprocessor.h rename to code/Common/ScenePreprocessor.h diff --git a/code/PostProcessing/SpatialSort.cpp b/code/Common/SpatialSort.cpp similarity index 100% rename from code/PostProcessing/SpatialSort.cpp rename to code/Common/SpatialSort.cpp diff --git a/code/PostProcessing/SplitByBoneCountProcess.cpp b/code/Common/SplitByBoneCountProcess.cpp similarity index 100% rename from code/PostProcessing/SplitByBoneCountProcess.cpp rename to code/Common/SplitByBoneCountProcess.cpp diff --git a/code/PostProcessing/SplitByBoneCountProcess.h b/code/Common/SplitByBoneCountProcess.h similarity index 100% rename from code/PostProcessing/SplitByBoneCountProcess.h rename to code/Common/SplitByBoneCountProcess.h diff --git a/code/PostProcessing/VertexTriangleAdjacency.cpp b/code/Common/VertexTriangleAdjacency.cpp similarity index 100% rename from code/PostProcessing/VertexTriangleAdjacency.cpp rename to code/Common/VertexTriangleAdjacency.cpp diff --git a/code/PostProcessing/VertexTriangleAdjacency.h b/code/Common/VertexTriangleAdjacency.h similarity index 100% rename from code/PostProcessing/VertexTriangleAdjacency.h rename to code/Common/VertexTriangleAdjacency.h diff --git a/code/OpenGEX/MDLMaterialLoader.cpp b/code/OpenGEX/OpenGEXExporter.cpp similarity index 100% rename from code/OpenGEX/MDLMaterialLoader.cpp rename to code/OpenGEX/OpenGEXExporter.cpp diff --git a/code/OpenGEX/MDLMaterialLoader.h b/code/OpenGEX/OpenGEXExporter.h similarity index 100% rename from code/OpenGEX/MDLMaterialLoader.h rename to code/OpenGEX/OpenGEXExporter.h diff --git a/code/Common/FIReader.cpp b/code/X3D/FIReader.cpp similarity index 100% rename from code/Common/FIReader.cpp rename to code/X3D/FIReader.cpp diff --git a/code/Common/FIReader.hpp b/code/X3D/FIReader.hpp similarity index 100% rename from code/Common/FIReader.hpp rename to code/X3D/FIReader.hpp diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 03c4ac6a1..013865de0 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -174,7 +174,7 @@ add_executable( unit ../contrib/gtest/src/gtest-all.cc unit/CCompilerTest.c unit/Main.cpp - ../code/Version.cpp + ../code/Common/Version.cpp ${COMMON} ${IMPORTERS} ${MATERIAL} From 2da3a38d609d44815164c82abbafec8922a364c1 Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Mon, 10 Jun 2019 23:26:00 +0200 Subject: [PATCH 06/24] Fix the compile pass, still unresolved symbols. --- CMakeLists.txt | 3 +- code/3DS/3DSConverter.cpp | 2 +- code/3DS/3DSExporter.cpp | 10 +- code/AC/ACLoader.cpp | 2 +- code/ASE/ASELoader.cpp | 30 +++--- code/ASE/ASELoader.h | 1 - code/ASE/ASEParser.cpp | 4 +- code/ASE/ASEParser.h | 2 +- code/Assbin/AssbinExporter.cpp | 5 +- code/Assbin/AssbinLoader.cpp | 4 +- code/Assxml/AssxmlExporter.cpp | 6 +- code/B3D/B3DImporter.cpp | 10 +- code/CApi/AssimpCExport.cpp | 2 +- code/CMakeLists.txt | 3 +- code/COB/COBLoader.cpp | 10 +- code/Common/Assimp.cpp | 2 +- code/Common/Exporter.cpp | 17 ++-- code/Common/Importer.cpp | 16 ++-- code/Common/ImporterRegistry.cpp | 94 +++++++++---------- code/Common/PostStepRegistry.cpp | 56 +++++------ code/Common/Subdivision.cpp | 7 +- code/DXF/DXFLoader.cpp | 10 +- code/HMP/HMPLoader.cpp | 8 +- code/HMP/HMPLoader.h | 5 +- code/Importer/IFC/IFCBoolean.cpp | 4 +- code/Importer/IFC/IFCGeometry.cpp | 8 +- code/Importer/IFC/IFCOpenings.cpp | 4 +- code/Importer/IFC/IFCReaderGen_2x3.h | 2 +- code/Importer/IFC/IFCUtil.cpp | 13 +-- code/Importer/IFC/IFCUtil.h | 2 +- code/Importer/STEPParser/STEPFileReader.h | 2 +- code/Importer/StepFile/StepReaderGen.h | 2 +- code/Irr/IRRLoader.cpp | 11 +-- code/Irr/IRRLoader.h | 33 ++----- code/LWO/LWOFileData.h | 4 +- code/LWO/LWOLoader.cpp | 8 +- code/LWS/LWSLoader.cpp | 9 +- code/LWS/LWSLoader.h | 3 +- code/MD3/MD3Loader.cpp | 8 +- code/MD5/MD5Parser.cpp | 7 +- code/MDC/MDCLoader.cpp | 9 +- code/MDL/MDLLoader.cpp | 7 +- code/MDL/MDLLoader.h | 2 +- code/MMD/MMDImporter.cpp | 12 ++- code/OpenGEX/OpenGEXImporter.cpp | 5 +- code/PostProcessing/CalcTangentsProcess.h | 4 +- code/PostProcessing/ComputeUVMappingProcess.h | 3 +- code/PostProcessing/ConvertToLHProcess.h | 3 +- code/PostProcessing/DeboneProcess.h | 17 ++-- code/PostProcessing/DropFaceNormalsProcess.h | 11 +-- code/PostProcessing/EmbedTexturesProcess.h | 2 +- code/PostProcessing/FindDegenerates.h | 3 +- code/PostProcessing/FindInstancesProcess.h | 4 +- code/PostProcessing/FindInvalidDataProcess.h | 3 +- code/PostProcessing/FixNormalsStep.h | 2 +- code/PostProcessing/GenFaceNormalsProcess.h | 2 +- code/PostProcessing/GenVertexNormalsProcess.h | 18 ++-- code/PostProcessing/ImproveCacheLocality.cpp | 65 ++++++------- code/PostProcessing/ImproveCacheLocality.h | 7 +- code/PostProcessing/JoinVerticesProcess.h | 10 +- code/PostProcessing/LimitBoneWeightsProcess.h | 34 +++---- code/PostProcessing/MakeVerboseFormat.h | 3 +- code/PostProcessing/OptimizeGraph.cpp | 2 - code/PostProcessing/OptimizeGraph.h | 27 +++--- code/PostProcessing/OptimizeMeshes.h | 10 +- code/PostProcessing/PretransformVertices.h | 15 +-- code/PostProcessing/ProcessHelper.h | 2 +- .../RemoveRedundantMaterials.cpp | 10 +- .../PostProcessing/RemoveRedundantMaterials.h | 18 ++-- code/PostProcessing/RemoveVCProcess.h | 3 +- code/PostProcessing/ScaleProcess.h | 2 +- code/PostProcessing/SortByPTypeProcess.cpp | 18 ++-- code/PostProcessing/SortByPTypeProcess.h | 11 +-- code/PostProcessing/SplitLargeMeshes.h | 2 +- code/PostProcessing/TextureTransform.h | 2 +- code/PostProcessing/TriangulateProcess.cpp | 10 +- code/PostProcessing/TriangulateProcess.h | 8 +- code/PostProcessing/ValidateDataStructure.h | 3 +- code/Step/STEPFile.h | 3 +- code/Step/StepExporter.cpp | 16 ++-- code/Unreal/UnrealLoader.cpp | 6 +- code/X/XFileExporter.cpp | 12 ++- code/X/XFileImporter.cpp | 7 +- code/glTF/glTFAsset.h | 2 + code/glTF/glTFExporter.cpp | 9 +- code/glTF/glTFImporter.cpp | 14 +-- code/glTF2/glTF2Asset.h | 2 + code/glTF2/glTF2Exporter.cpp | 9 +- code/glTF2/glTF2Importer.cpp | 14 ++- 89 files changed, 426 insertions(+), 466 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 520dd68d7..cf58d7fd0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,7 @@ # Open Asset Import Library (assimp) # ---------------------------------------------------------------------- # Copyright (c) 2006-2019, assimp team - +# # All rights reserved. # # Redistribution and use of this software in source and binary forms, @@ -203,6 +203,7 @@ CONFIGURE_FILE( INCLUDE_DIRECTORIES( BEFORE ./ + code/ include ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}/include diff --git a/code/3DS/3DSConverter.cpp b/code/3DS/3DSConverter.cpp index e6865a809..2176b75fc 100644 --- a/code/3DS/3DSConverter.cpp +++ b/code/3DS/3DSConverter.cpp @@ -48,7 +48,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // internal headers #include "3DSLoader.h" -#include "TargetAnimation.h" +#include "Common/TargetAnimation.h" #include #include #include diff --git a/code/3DS/3DSExporter.cpp b/code/3DS/3DSExporter.cpp index 2501d4049..1117a52ef 100644 --- a/code/3DS/3DSExporter.cpp +++ b/code/3DS/3DSExporter.cpp @@ -43,15 +43,17 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_EXPORT #ifndef ASSIMP_BUILD_NO_3DS_EXPORTER -#include "3DSExporter.h" -#include "3DSLoader.h" -#include "3DSHelper.h" +#include "3DS/3DSExporter.h" +#include "3DS/3DSLoader.h" +#include "3DS/3DSHelper.h" +#include "PostProcessing/SplitLargeMeshes.h" + #include -#include "SplitLargeMeshes.h" #include #include #include #include + #include using namespace Assimp; diff --git a/code/AC/ACLoader.cpp b/code/AC/ACLoader.cpp index 2eb839553..d4c4bd1a6 100644 --- a/code/AC/ACLoader.cpp +++ b/code/AC/ACLoader.cpp @@ -53,7 +53,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include #include -#include "Importer.h" +#include "Common/Importer.h" #include #include #include diff --git a/code/ASE/ASELoader.cpp b/code/ASE/ASELoader.cpp index 556e8ce66..8e99214a8 100644 --- a/code/ASE/ASELoader.cpp +++ b/code/ASE/ASELoader.cpp @@ -53,7 +53,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "ASELoader.h" #include #include -#include "TargetAnimation.h" +#include "Common/TargetAnimation.h" + #include #include #include @@ -88,23 +89,25 @@ ASEImporter::ASEImporter() , mBuffer() , pcScene() , configRecomputeNormals() -, noSkeletonMesh() -{} +, noSkeletonMesh() { + // empty +} // ------------------------------------------------------------------------------------------------ // Destructor, private as well -ASEImporter::~ASEImporter() -{} +ASEImporter::~ASEImporter() { + // empty +} // ------------------------------------------------------------------------------------------------ // Returns whether the class can handle the format of the given file. -bool ASEImporter::CanRead( const std::string& pFile, IOSystem* pIOHandler, bool cs) const -{ +bool ASEImporter::CanRead( const std::string& pFile, IOSystem* pIOHandler, bool cs) const { // check file extension const std::string extension = GetExtension(pFile); - if( extension == "ase" || extension == "ask") + if (extension == "ase" || extension == "ask") { return true; + } if ((!extension.length() || cs) && pIOHandler) { const char* tokens[] = {"*3dsmax_asciiexport"}; @@ -115,15 +118,13 @@ bool ASEImporter::CanRead( const std::string& pFile, IOSystem* pIOHandler, bool // ------------------------------------------------------------------------------------------------ // Loader meta information -const aiImporterDesc* ASEImporter::GetInfo () const -{ +const aiImporterDesc* ASEImporter::GetInfo () const { return &desc; } // ------------------------------------------------------------------------------------------------ // Setup configuration options -void ASEImporter::SetupProperties(const Importer* pImp) -{ +void ASEImporter::SetupProperties(const Importer* pImp) { configRecomputeNormals = (pImp->GetPropertyInteger( AI_CONFIG_IMPORT_ASE_RECONSTRUCT_NORMALS,1) ? true : false); @@ -133,12 +134,11 @@ void ASEImporter::SetupProperties(const Importer* pImp) // ------------------------------------------------------------------------------------------------ // Imports the given file into the given scene structure. void ASEImporter::InternReadFile( const std::string& pFile, - aiScene* pScene, IOSystem* pIOHandler) -{ + aiScene* pScene, IOSystem* pIOHandler) { std::unique_ptr file( pIOHandler->Open( pFile, "rb")); // Check whether we can read from the file - if( file.get() == NULL) { + if( file.get() == nullptr) { throw DeadlyImportError( "Failed to open ASE file " + pFile + "."); } diff --git a/code/ASE/ASELoader.h b/code/ASE/ASELoader.h index 33406e3e5..b497aa48b 100644 --- a/code/ASE/ASELoader.h +++ b/code/ASE/ASELoader.h @@ -4,7 +4,6 @@ Open Asset Import Library (assimp) Copyright (c) 2006-2019, assimp team - All rights reserved. Redistribution and use of this software in source and binary forms, diff --git a/code/ASE/ASEParser.cpp b/code/ASE/ASEParser.cpp index 14b962320..913e7b118 100644 --- a/code/ASE/ASEParser.cpp +++ b/code/ASE/ASEParser.cpp @@ -49,15 +49,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_3DS_IMPORTER // internal headers -#include "TextureTransform.h" +#include "PostProcessing/TextureTransform.h" #include "ASELoader.h" + #include #include using namespace Assimp; using namespace Assimp::ASE; - // ------------------------------------------------------------------------------------------------ // Begin an ASE parsing function diff --git a/code/ASE/ASEParser.h b/code/ASE/ASEParser.h index 0cfd5313c..988cbda8d 100644 --- a/code/ASE/ASEParser.h +++ b/code/ASE/ASEParser.h @@ -57,7 +57,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include // ASE is quite similar to 3ds. We can reuse some structures -#include "3DSLoader.h" +#include "3DS/3DSLoader.h" namespace Assimp { namespace ASE { diff --git a/code/Assbin/AssbinExporter.cpp b/code/Assbin/AssbinExporter.cpp index 03b0368ce..76c823f82 100644 --- a/code/Assbin/AssbinExporter.cpp +++ b/code/Assbin/AssbinExporter.cpp @@ -46,12 +46,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_EXPORT #ifndef ASSIMP_BUILD_NO_ASSBIN_EXPORTER -#include "assbin_chunks.h" +#include "Common/assbin_chunks.h" +#include "PostProcessing/ProcessHelper.h" + #include #include #include #include -#include "ProcessHelper.h" #include #ifdef ASSIMP_BUILD_NO_OWN_ZLIB diff --git a/code/Assbin/AssbinLoader.cpp b/code/Assbin/AssbinLoader.cpp index 249e29863..becc3f8fc 100644 --- a/code/Assbin/AssbinLoader.cpp +++ b/code/Assbin/AssbinLoader.cpp @@ -50,8 +50,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_ASSBIN_IMPORTER // internal headers -#include "AssbinLoader.h" -#include "assbin_chunks.h" +#include "Assbin/AssbinLoader.h" +#include "Common/assbin_chunks.h" #include #include #include diff --git a/code/Assxml/AssxmlExporter.cpp b/code/Assxml/AssxmlExporter.cpp index 937eebe92..afdecbaf6 100644 --- a/code/Assxml/AssxmlExporter.cpp +++ b/code/Assxml/AssxmlExporter.cpp @@ -46,13 +46,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_EXPORT #ifndef ASSIMP_BUILD_NO_ASSXML_EXPORTER -#include +#include "PostProcessing/ProcessHelper.h" + #include -#include "ProcessHelper.h" #include #include #include +#include + #ifdef ASSIMP_BUILD_NO_OWN_ZLIB # include #else diff --git a/code/B3D/B3DImporter.cpp b/code/B3D/B3DImporter.cpp index e48646de9..ba484ca00 100644 --- a/code/B3D/B3DImporter.cpp +++ b/code/B3D/B3DImporter.cpp @@ -49,17 +49,19 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_B3D_IMPORTER // internal headers -#include "B3DImporter.h" -#include "TextureTransform.h" -#include "ConvertToLHProcess.h" +#include "B3D/B3DImporter.h" +#include "PostProcessing/TextureTransform.h" +#include "PostProcessing/ConvertToLHProcess.h" + #include -#include #include #include #include #include #include +#include + using namespace Assimp; using namespace std; diff --git a/code/CApi/AssimpCExport.cpp b/code/CApi/AssimpCExport.cpp index beb3ec3c5..7557edcfc 100644 --- a/code/CApi/AssimpCExport.cpp +++ b/code/CApi/AssimpCExport.cpp @@ -49,7 +49,7 @@ Assimp C export interface. See Exporter.cpp for some notes. #include "CInterfaceIOWrapper.h" #include -#include "ScenePrivate.h" +#include "Common/ScenePrivate.h" #include using namespace Assimp; diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt index d3333c37e..e482807c7 100644 --- a/code/CMakeLists.txt +++ b/code/CMakeLists.txt @@ -2,8 +2,7 @@ # ---------------------------------------------------------------------- # # Copyright (c) 2006-2019, assimp team - - +# # All rights reserved. # # Redistribution and use of this software in source and binary forms, diff --git a/code/COB/COBLoader.cpp b/code/COB/COBLoader.cpp index b7e0f9728..b9eb5b7ea 100644 --- a/code/COB/COBLoader.cpp +++ b/code/COB/COBLoader.cpp @@ -45,20 +45,22 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_COB_IMPORTER -#include "COBLoader.h" -#include "COBScene.h" -#include "ConvertToLHProcess.h" +#include "COB/COBLoader.h" +#include "COB/COBScene.h" +#include "PostProcessing/ConvertToLHProcess.h" + #include #include #include #include #include -#include #include #include #include #include +#include + using namespace Assimp; using namespace Assimp::COB; using namespace Assimp::Formatter; diff --git a/code/Common/Assimp.cpp b/code/Common/Assimp.cpp index 41e1a4800..178b2c01d 100644 --- a/code/Common/Assimp.cpp +++ b/code/Common/Assimp.cpp @@ -54,7 +54,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include -#include "CInterfaceIOWrapper.h" +#include "CApi/CInterfaceIOWrapper.h" #include "Importer.h" #include "ScenePrivate.h" diff --git a/code/Common/Exporter.cpp b/code/Common/Exporter.cpp index 4ecb07081..b1caa4f96 100644 --- a/code/Common/Exporter.cpp +++ b/code/Common/Exporter.cpp @@ -61,15 +61,16 @@ Here we implement only the C++ interface (Assimp::Exporter). #include #include #include - -#include "DefaultProgressHandler.h" -#include "BaseProcess.h" -#include "JoinVerticesProcess.h" -#include "MakeVerboseFormat.h" -#include "ConvertToLHProcess.h" -#include "PretransformVertices.h" #include -#include "ScenePrivate.h" + +#include "Common/DefaultProgressHandler.h" +#include "Common/BaseProcess.h" +#include "Common/ScenePrivate.h" +#include "PostProcessing/CalcTangentsProcess.h" +#include "PostProcessing/MakeVerboseFormat.h" +#include "PostProcessing/JoinVerticesProcess.h" +#include "PostProcessing/ConvertToLHProcess.h" +#include "PostProcessing/PretransformVertices.h" #include diff --git a/code/Common/Importer.cpp b/code/Common/Importer.cpp index 65b16471c..8931bfa03 100644 --- a/code/Common/Importer.cpp +++ b/code/Common/Importer.cpp @@ -64,15 +64,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // ------------------------------------------------------------------------------------------------ // Internal headers // ------------------------------------------------------------------------------------------------ -#include "Importer.h" -#include -#include "BaseProcess.h" +#include "Common/Importer.h" +#include "Common/BaseProcess.h" +#include "Common/DefaultProgressHandler.h" +#include "PostProcessing/ProcessHelper.h" +#include "Common/ScenePreprocessor.h" +#include "Common/ScenePrivate.h" -#include "DefaultProgressHandler.h" +#include #include -#include "ProcessHelper.h" -#include "ScenePreprocessor.h" -#include "ScenePrivate.h" #include #include #include @@ -86,7 +86,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #ifndef ASSIMP_BUILD_NO_VALIDATEDS_PROCESS -# include "ValidateDataStructure.h" +# include "PostProcessing/ValidateDataStructure.h" #endif using namespace Assimp::Profiling; diff --git a/code/Common/ImporterRegistry.cpp b/code/Common/ImporterRegistry.cpp index 747815fa6..92f055850 100644 --- a/code/Common/ImporterRegistry.cpp +++ b/code/Common/ImporterRegistry.cpp @@ -56,146 +56,146 @@ corresponding preprocessor flag to selectively disable formats. // (include_new_importers_here) // ------------------------------------------------------------------------------------------------ #ifndef ASSIMP_BUILD_NO_X_IMPORTER -# include "XFileImporter.h" +# include "X/XFileImporter.h" #endif #ifndef ASSIMP_BUILD_NO_AMF_IMPORTER -# include "AMFImporter.hpp" +# include "AMF/AMFImporter.hpp" #endif #ifndef ASSIMP_BUILD_NO_3DS_IMPORTER -# include "3DSLoader.h" +# include "3DS/3DSLoader.h" #endif #ifndef ASSIMP_BUILD_NO_MD3_IMPORTER -# include "MD3Loader.h" +# include "MD3/MD3Loader.h" #endif #ifndef ASSIMP_BUILD_NO_MDL_IMPORTER -# include "MDLLoader.h" +# include "MDL/MDLLoader.h" #endif #ifndef ASSIMP_BUILD_NO_MD2_IMPORTER -# include "MD2Loader.h" +# include "MD2/MD2Loader.h" #endif #ifndef ASSIMP_BUILD_NO_PLY_IMPORTER -# include "PlyLoader.h" +# include "Ply/PlyLoader.h" #endif #ifndef ASSIMP_BUILD_NO_ASE_IMPORTER -# include "ASELoader.h" +# include "ASE/ASELoader.h" #endif #ifndef ASSIMP_BUILD_NO_OBJ_IMPORTER -# include "ObjFileImporter.h" +# include "Obj/ObjFileImporter.h" #endif #ifndef ASSIMP_BUILD_NO_HMP_IMPORTER -# include "HMPLoader.h" +# include "HMP/HMPLoader.h" #endif #ifndef ASSIMP_BUILD_NO_SMD_IMPORTER -# include "SMDLoader.h" +# include "SMD/SMDLoader.h" #endif #ifndef ASSIMP_BUILD_NO_MDC_IMPORTER -# include "MDCLoader.h" +# include "MDC/MDCLoader.h" #endif #ifndef ASSIMP_BUILD_NO_MD5_IMPORTER -# include "MD5Loader.h" +# include "MD5/MD5Loader.h" #endif #ifndef ASSIMP_BUILD_NO_STL_IMPORTER -# include "STLLoader.h" +# include "STL/STLLoader.h" #endif #ifndef ASSIMP_BUILD_NO_LWO_IMPORTER -# include "LWOLoader.h" +# include "LWO/LWOLoader.h" #endif #ifndef ASSIMP_BUILD_NO_DXF_IMPORTER -# include "DXFLoader.h" +# include "DXF/DXFLoader.h" #endif #ifndef ASSIMP_BUILD_NO_NFF_IMPORTER -# include "NFFLoader.h" +# include "NFF/NFFLoader.h" #endif #ifndef ASSIMP_BUILD_NO_RAW_IMPORTER -# include "RawLoader.h" +# include "Raw/RawLoader.h" #endif #ifndef ASSIMP_BUILD_NO_SIB_IMPORTER -# include "SIBImporter.h" +# include "SIB/SIBImporter.h" #endif #ifndef ASSIMP_BUILD_NO_OFF_IMPORTER -# include "OFFLoader.h" +# include "OFF/OFFLoader.h" #endif #ifndef ASSIMP_BUILD_NO_AC_IMPORTER -# include "ACLoader.h" +# include "AC/ACLoader.h" #endif #ifndef ASSIMP_BUILD_NO_BVH_IMPORTER -# include "BVHLoader.h" +# include "BVH/BVHLoader.h" #endif #ifndef ASSIMP_BUILD_NO_IRRMESH_IMPORTER -# include "IRRMeshLoader.h" +# include "IRR/IRRMeshLoader.h" #endif #ifndef ASSIMP_BUILD_NO_IRR_IMPORTER -# include "IRRLoader.h" +# include "IRR/IRRLoader.h" #endif #ifndef ASSIMP_BUILD_NO_Q3D_IMPORTER -# include "Q3DLoader.h" +# include "Q3D/Q3DLoader.h" #endif #ifndef ASSIMP_BUILD_NO_B3D_IMPORTER -# include "B3DImporter.h" +# include "B3D/B3DImporter.h" #endif #ifndef ASSIMP_BUILD_NO_COLLADA_IMPORTER -# include "ColladaLoader.h" +# include "Collada/ColladaLoader.h" #endif #ifndef ASSIMP_BUILD_NO_TERRAGEN_IMPORTER -# include "TerragenLoader.h" +# include "Terragen/TerragenLoader.h" #endif #ifndef ASSIMP_BUILD_NO_CSM_IMPORTER -# include "CSMLoader.h" +# include "CSM/CSMLoader.h" #endif #ifndef ASSIMP_BUILD_NO_3D_IMPORTER -# include "UnrealLoader.h" +# include "Unreal/UnrealLoader.h" #endif #ifndef ASSIMP_BUILD_NO_LWS_IMPORTER -# include "LWSLoader.h" +# include "LWS/LWSLoader.h" #endif #ifndef ASSIMP_BUILD_NO_OGRE_IMPORTER -# include "OgreImporter.h" +# include "Ogre/OgreImporter.h" #endif #ifndef ASSIMP_BUILD_NO_OPENGEX_IMPORTER -# include "OpenGEXImporter.h" +# include "OpenGEX/OpenGEXImporter.h" #endif #ifndef ASSIMP_BUILD_NO_MS3D_IMPORTER -# include "MS3DLoader.h" +# include "MS3D/MS3DLoader.h" #endif #ifndef ASSIMP_BUILD_NO_COB_IMPORTER -# include "COBLoader.h" +# include "COB/COBLoader.h" #endif #ifndef ASSIMP_BUILD_NO_BLEND_IMPORTER -# include "BlenderLoader.h" +# include "Blender/BlenderLoader.h" #endif #ifndef ASSIMP_BUILD_NO_Q3BSP_IMPORTER -# include "Q3BSPFileImporter.h" +# include "Q3BSP/Q3BSPFileImporter.h" #endif #ifndef ASSIMP_BUILD_NO_NDO_IMPORTER -# include "NDOLoader.h" +# include "NDO/NDOLoader.h" #endif #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER # include "Importer/IFC/IFCLoader.h" #endif #ifndef ASSIMP_BUILD_NO_XGL_IMPORTER -# include "XGLLoader.h" +# include "XGL/XGLLoader.h" #endif #ifndef ASSIMP_BUILD_NO_FBX_IMPORTER -# include "FBXImporter.h" +# include "FBX/FBXImporter.h" #endif #ifndef ASSIMP_BUILD_NO_ASSBIN_IMPORTER -# include "AssbinLoader.h" +# include "Assbin/AssbinLoader.h" #endif #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER -# include "glTFImporter.h" -# include "glTF2Importer.h" +# include "glTF/glTFImporter.h" +# include "glTF2/glTF2Importer.h" #endif #ifndef ASSIMP_BUILD_NO_C4D_IMPORTER -# include "C4DImporter.h" +# include "C4D/C4DImporter.h" #endif #ifndef ASSIMP_BUILD_NO_3MF_IMPORTER -# include "D3MFImporter.h" +# include "3MF/D3MFImporter.h" #endif #ifndef ASSIMP_BUILD_NO_X3D_IMPORTER -# include "X3DImporter.hpp" +# include "X3D/X3DImporter.hpp" #endif #ifndef ASSIMP_BUILD_NO_MMD_IMPORTER -# include "MMDImporter.h" +# include "MMD/MMDImporter.h" #endif #ifndef ASSIMP_BUILD_NO_STEP_IMPORTER # include "Importer/StepFile/StepFileImporter.h" diff --git a/code/Common/PostStepRegistry.cpp b/code/Common/PostStepRegistry.cpp index 15b4a2884..c08963817 100644 --- a/code/Common/PostStepRegistry.cpp +++ b/code/Common/PostStepRegistry.cpp @@ -48,88 +48,88 @@ directly (unless you are adding new steps), instead use the corresponding preprocessor flag to selectively disable steps. */ -#include "ProcessHelper.h" +#include "PostProcessing/ProcessHelper.h" #ifndef ASSIMP_BUILD_NO_CALCTANGENTS_PROCESS -# include "CalcTangentsProcess.h" +# include "PostProcessing/CalcTangentsProcess.h" #endif #ifndef ASSIMP_BUILD_NO_JOINVERTICES_PROCESS -# include "JoinVerticesProcess.h" +# include "PostProcessing/JoinVerticesProcess.h" #endif #if !(defined ASSIMP_BUILD_NO_MAKELEFTHANDED_PROCESS && defined ASSIMP_BUILD_NO_FLIPUVS_PROCESS && defined ASSIMP_BUILD_NO_FLIPWINDINGORDER_PROCESS) -# include "ConvertToLHProcess.h" +# include "PostProcessing/ConvertToLHProcess.h" #endif #ifndef ASSIMP_BUILD_NO_TRIANGULATE_PROCESS -# include "TriangulateProcess.h" +# include "PostProcessing/TriangulateProcess.h" #endif #ifndef ASSIMP_BUILD_NO_DROPFACENORMALS_PROCESS -# include "DropFaceNormalsProcess.h" +# include "PostProcessing/DropFaceNormalsProcess.h" #endif #ifndef ASSIMP_BUILD_NO_GENFACENORMALS_PROCESS -# include "GenFaceNormalsProcess.h" +# include "PostProcessing/GenFaceNormalsProcess.h" #endif #ifndef ASSIMP_BUILD_NO_GENVERTEXNORMALS_PROCESS -# include "GenVertexNormalsProcess.h" +# include "PostProcessing/GenVertexNormalsProcess.h" #endif #ifndef ASSIMP_BUILD_NO_REMOVEVC_PROCESS -# include "RemoveVCProcess.h" +# include "PostProcessing/RemoveVCProcess.h" #endif #ifndef ASSIMP_BUILD_NO_SPLITLARGEMESHES_PROCESS -# include "SplitLargeMeshes.h" +# include "PostProcessing/SplitLargeMeshes.h" #endif #ifndef ASSIMP_BUILD_NO_PRETRANSFORMVERTICES_PROCESS -# include "PretransformVertices.h" +# include "PostProcessing/PretransformVertices.h" #endif #ifndef ASSIMP_BUILD_NO_LIMITBONEWEIGHTS_PROCESS -# include "LimitBoneWeightsProcess.h" +# include "PostProcessing/LimitBoneWeightsProcess.h" #endif #ifndef ASSIMP_BUILD_NO_VALIDATEDS_PROCESS -# include "ValidateDataStructure.h" +# include "PostProcessing/ValidateDataStructure.h" #endif #ifndef ASSIMP_BUILD_NO_IMPROVECACHELOCALITY_PROCESS -# include "ImproveCacheLocality.h" +# include "PostProcessing/ImproveCacheLocality.h" #endif #ifndef ASSIMP_BUILD_NO_FIXINFACINGNORMALS_PROCESS -# include "FixNormalsStep.h" +# include "PostProcessing/FixNormalsStep.h" #endif #ifndef ASSIMP_BUILD_NO_REMOVE_REDUNDANTMATERIALS_PROCESS -# include "RemoveRedundantMaterials.h" +# include "PostProcessing/RemoveRedundantMaterials.h" #endif #if (!defined ASSIMP_BUILD_NO_EMBEDTEXTURES_PROCESS) -# include "EmbedTexturesProcess.h" +# include "PostProcessing/EmbedTexturesProcess.h" #endif #ifndef ASSIMP_BUILD_NO_FINDINVALIDDATA_PROCESS -# include "FindInvalidDataProcess.h" +# include "PostProcessing/FindInvalidDataProcess.h" #endif #ifndef ASSIMP_BUILD_NO_FINDDEGENERATES_PROCESS -# include "FindDegenerates.h" +# include "PostProcessing/FindDegenerates.h" #endif #ifndef ASSIMP_BUILD_NO_SORTBYPTYPE_PROCESS -# include "SortByPTypeProcess.h" +# include "PostProcessing/SortByPTypeProcess.h" #endif #ifndef ASSIMP_BUILD_NO_GENUVCOORDS_PROCESS -# include "ComputeUVMappingProcess.h" +# include "PostProcessing/ComputeUVMappingProcess.h" #endif #ifndef ASSIMP_BUILD_NO_TRANSFORMTEXCOORDS_PROCESS -# include "TextureTransform.h" +# include "PostProcessing/TextureTransform.h" #endif #ifndef ASSIMP_BUILD_NO_FINDINSTANCES_PROCESS -# include "FindInstancesProcess.h" +# include "PostProcessing/FindInstancesProcess.h" #endif #ifndef ASSIMP_BUILD_NO_OPTIMIZEMESHES_PROCESS -# include "OptimizeMeshes.h" +# include "PostProcessing/OptimizeMeshes.h" #endif #ifndef ASSIMP_BUILD_NO_OPTIMIZEGRAPH_PROCESS -# include "OptimizeGraph.h" +# include "PostProcessing/OptimizeGraph.h" #endif #ifndef ASSIMP_BUILD_NO_SPLITBYBONECOUNT_PROCESS -# include "SplitByBoneCountProcess.h" +# include "Common/SplitByBoneCountProcess.h" #endif #ifndef ASSIMP_BUILD_NO_DEBONE_PROCESS -# include "DeboneProcess.h" +# include "PostProcessing/DeboneProcess.h" #endif #if (!defined ASSIMP_BUILD_NO_GLOBALSCALE_PROCESS) -# include "ScaleProcess.h" +# include "PostProcessing/ScaleProcess.h" #endif namespace Assimp { diff --git a/code/Common/Subdivision.cpp b/code/Common/Subdivision.cpp index 19db223a5..60c54939f 100644 --- a/code/Common/Subdivision.cpp +++ b/code/Common/Subdivision.cpp @@ -43,9 +43,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include #include -#include "ProcessHelper.h" #include #include + +#include "PostProcessing/ProcessHelper.h" + #include using namespace Assimp; @@ -56,8 +58,7 @@ void mydummy() {} * implementation is basing on recursive refinement. Directly evaluating the result is also * possible and much quicker, but it depends on lengthy matrix lookup tables. */ // ------------------------------------------------------------------------------------------------ -class CatmullClarkSubdivider : public Subdivider -{ +class CatmullClarkSubdivider : public Subdivider { public: void Subdivide (aiMesh* mesh, aiMesh*& out, unsigned int num, bool discard_input); void Subdivide (aiMesh** smesh, size_t nmesh, diff --git a/code/DXF/DXFLoader.cpp b/code/DXF/DXFLoader.cpp index ab86f89ae..baf315485 100644 --- a/code/DXF/DXFLoader.cpp +++ b/code/DXF/DXFLoader.cpp @@ -48,12 +48,12 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_DXF_IMPORTER -#include "DXFLoader.h" -#include -#include "ConvertToLHProcess.h" -#include +#include "DXF/DXFLoader.h" +#include "DXF/DXFHelper.h" +#include "PostProcessing/ConvertToLHProcess.h" -#include "DXFHelper.h" +#include +#include #include #include #include diff --git a/code/HMP/HMPLoader.cpp b/code/HMP/HMPLoader.cpp index 7c1d0b65f..d5469181e 100644 --- a/code/HMP/HMPLoader.cpp +++ b/code/HMP/HMPLoader.cpp @@ -47,14 +47,16 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_HMP_IMPORTER // internal headers -#include "HMPLoader.h" -#include "MD2FileData.h" -#include +#include "HMP/HMPLoader.h" +#include "MD2/MD2FileData.h" + #include #include #include #include +#include + using namespace Assimp; static const aiImporterDesc desc = { diff --git a/code/HMP/HMPLoader.h b/code/HMP/HMPLoader.h index d0a34bfb7..421826c91 100644 --- a/code/HMP/HMPLoader.h +++ b/code/HMP/HMPLoader.h @@ -48,8 +48,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // internal headers #include -#include "MDLLoader.h" -#include "HMPFileData.h" + +#include "MDL/MDLLoader.h" +#include "HMP/HMPFileData.h" namespace Assimp { using namespace HMP; diff --git a/code/Importer/IFC/IFCBoolean.cpp b/code/Importer/IFC/IFCBoolean.cpp index d30a87f62..10e7bf3af 100644 --- a/code/Importer/IFC/IFCBoolean.cpp +++ b/code/Importer/IFC/IFCBoolean.cpp @@ -44,8 +44,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER #include "code/Importer/IFC/IFCUtil.h" -#include "code/PolyTools.h" -#include "code/ProcessHelper.h" +#include "code/Common/PolyTools.h" +#include "code/PostProcessing/ProcessHelper.h" #include #include diff --git a/code/Importer/IFC/IFCGeometry.cpp b/code/Importer/IFC/IFCGeometry.cpp index 548de4e27..69523bedd 100644 --- a/code/Importer/IFC/IFCGeometry.cpp +++ b/code/Importer/IFC/IFCGeometry.cpp @@ -46,17 +46,17 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER #include "IFCUtil.h" -#include "code/PolyTools.h" -#include "code/ProcessHelper.h" +#include "Common/PolyTools.h" +#include "PostProcessing/ProcessHelper.h" #include "../contrib/poly2tri/poly2tri/poly2tri.h" #include "../contrib/clipper/clipper.hpp" -#include +#include #include namespace Assimp { - namespace IFC { +namespace IFC { // ------------------------------------------------------------------------------------------------ bool ProcessPolyloop(const Schema_2x3::IfcPolyLoop& loop, TempMesh& meshout, ConversionData& /*conv*/) diff --git a/code/Importer/IFC/IFCOpenings.cpp b/code/Importer/IFC/IFCOpenings.cpp index c5720e943..ce94c1801 100644 --- a/code/Importer/IFC/IFCOpenings.cpp +++ b/code/Importer/IFC/IFCOpenings.cpp @@ -46,8 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER #include "IFCUtil.h" -#include "code/PolyTools.h" -#include "code/ProcessHelper.h" +#include "Common/PolyTools.h" +#include "PostProcessing/ProcessHelper.h" #include "../contrib/poly2tri/poly2tri/poly2tri.h" #include "../contrib/clipper/clipper.hpp" diff --git a/code/Importer/IFC/IFCReaderGen_2x3.h b/code/Importer/IFC/IFCReaderGen_2x3.h index 0362d90b2..8b39ccdc2 100644 --- a/code/Importer/IFC/IFCReaderGen_2x3.h +++ b/code/Importer/IFC/IFCReaderGen_2x3.h @@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef INCLUDED_IFC_READER_GEN_H #define INCLUDED_IFC_READER_GEN_H -#include "code/STEPFile.h" +#include "code/Step/STEPFile.h" namespace Assimp { namespace IFC { diff --git a/code/Importer/IFC/IFCUtil.cpp b/code/Importer/IFC/IFCUtil.cpp index b9a8538b0..f6bca91f5 100644 --- a/code/Importer/IFC/IFCUtil.cpp +++ b/code/Importer/IFC/IFCUtil.cpp @@ -44,21 +44,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * @brief Implementation of conversion routines for some common Ifc helper entities. */ - - #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER -#include "code/Importer/IFC/IFCUtil.h" -#include "code/PolyTools.h" -#include "code/ProcessHelper.h" +#include "Importer/IFC/IFCUtil.h" +#include "Common/PolyTools.h" +#include "PostProcessing/ProcessHelper.h" #include namespace Assimp { - namespace IFC { +namespace IFC { // ------------------------------------------------------------------------------------------------ -void TempOpening::Transform(const IfcMatrix4& mat) -{ +void TempOpening::Transform(const IfcMatrix4& mat) { if(profileMesh) { profileMesh->Transform(mat); } diff --git a/code/Importer/IFC/IFCUtil.h b/code/Importer/IFC/IFCUtil.h index 17051210e..32ae1e07f 100644 --- a/code/Importer/IFC/IFCUtil.h +++ b/code/Importer/IFC/IFCUtil.h @@ -49,7 +49,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "IFCReaderGen_2x3.h" #include "IFCLoader.h" -#include "code/STEPFile.h" +#include "code/Step/STEPFile.h" #include #include diff --git a/code/Importer/STEPParser/STEPFileReader.h b/code/Importer/STEPParser/STEPFileReader.h index 8fc462749..9c4b77241 100644 --- a/code/Importer/STEPParser/STEPFileReader.h +++ b/code/Importer/STEPParser/STEPFileReader.h @@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef INCLUDED_AI_STEPFILEREADER_H #define INCLUDED_AI_STEPFILEREADER_H -#include "code/STEPFile.h" +#include "code/Step/STEPFile.h" namespace Assimp { namespace STEP { diff --git a/code/Importer/StepFile/StepReaderGen.h b/code/Importer/StepFile/StepReaderGen.h index 21f2518df..9eb86c332 100644 --- a/code/Importer/StepFile/StepReaderGen.h +++ b/code/Importer/StepFile/StepReaderGen.h @@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef INCLUDED_STEPFILE_READER_GEN_H #define INCLUDED_STEPFILE_READER_GEN_H -#include "code/STEPFile.h" +#include "code/Step/STEPFile.h" namespace Assimp { namespace StepFile { diff --git a/code/Irr/IRRLoader.cpp b/code/Irr/IRRLoader.cpp index 796b73164..728276ec6 100644 --- a/code/Irr/IRRLoader.cpp +++ b/code/Irr/IRRLoader.cpp @@ -49,18 +49,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_IRR_IMPORTER -#include "IRRLoader.h" +#include "IRR/IRRLoader.h" +#include "Common/Importer.h" + #include #include #include - #include #include -#include "Importer.h" - -// We need MathFunctions.h to compute the lcm/gcd of a number #include -#include #include #include #include @@ -69,6 +66,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include +#include + using namespace Assimp; using namespace irr; using namespace irr::io; diff --git a/code/Irr/IRRLoader.h b/code/Irr/IRRLoader.h index e245a0a6f..1eecb71ed 100644 --- a/code/Irr/IRRLoader.h +++ b/code/Irr/IRRLoader.h @@ -48,15 +48,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_IRRLOADER_H_INCLUDED #define AI_IRRLOADER_H_INCLUDED -#include "IRRShared.h" +#include "IRR/IRRShared.h" +#include "Common/Importer.h" + #include -#include "Importer.h" #include #include namespace Assimp { - // --------------------------------------------------------------------------- /** Irr importer class. * @@ -64,15 +64,11 @@ namespace Assimp { * irrEdit. As IrrEdit itself is capable of importing quite many file formats, * it might be a good file format for data exchange. */ -class IRRImporter : public BaseImporter, public IrrlichtBase -{ +class IRRImporter : public BaseImporter, public IrrlichtBase { public: IRRImporter(); ~IRRImporter(); - -public: - // ------------------------------------------------------------------- /** Returns whether the class can handle the format of the given file. * See BaseImporter::CanRead() for details. @@ -81,32 +77,17 @@ public: bool checkSig) const; protected: - - // ------------------------------------------------------------------- - /** - */ const aiImporterDesc* GetInfo () const; - - // ------------------------------------------------------------------- - /** - */ - void InternReadFile( const std::string& pFile, aiScene* pScene, - IOSystem* pIOHandler); - - // ------------------------------------------------------------------- - /** - */ + void InternReadFile( const std::string& pFile, aiScene* pScene, IOSystem* pIOHandler); void SetupProperties(const Importer* pImp); private: /** Data structure for a scenegraph node animator */ - struct Animator - { + struct Animator { // Type of the animator - enum AT - { + enum AT { UNKNOWN = 0x0, ROTATION = 0x1, FLY_CIRCLE = 0x2, diff --git a/code/LWO/LWOFileData.h b/code/LWO/LWOFileData.h index a702d9363..7d1f6b1df 100644 --- a/code/LWO/LWOFileData.h +++ b/code/LWO/LWOFileData.h @@ -57,8 +57,8 @@ The chunks are taken from the official LightWave SDK headers. #include // internal headers -#include "IFF.h" -#include "LWOAnimation.h" +#include "Common/IFF.h" +#include "LWO/LWOAnimation.h" namespace Assimp { namespace LWO { diff --git a/code/LWO/LWOLoader.cpp b/code/LWO/LWOLoader.cpp index d1c2641e8..d3c3b5ca0 100644 --- a/code/LWO/LWOLoader.cpp +++ b/code/LWO/LWOLoader.cpp @@ -49,14 +49,16 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_LWO_IMPORTER // internal headers -#include "LWOLoader.h" +#include "LWO/LWOLoader.h" +#include "PostProcessing/ProcessHelper.h" +#include "PostProcessing/ConvertToLHProcess.h" + #include #include #include -#include "ProcessHelper.h" -#include "ConvertToLHProcess.h" #include #include + #include #include #include diff --git a/code/LWS/LWSLoader.cpp b/code/LWS/LWSLoader.cpp index d0811625c..b52cafa6d 100644 --- a/code/LWS/LWSLoader.cpp +++ b/code/LWS/LWSLoader.cpp @@ -48,19 +48,20 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_LWS_IMPORTER -#include "LWSLoader.h" +#include "LWS/LWSLoader.h" +#include "PostProcessing/ConvertToLHProcess.h" +#include "Common/Importer.h" + #include #include - #include #include #include -#include "ConvertToLHProcess.h" -#include "Importer.h" #include #include #include #include + #include using namespace Assimp; diff --git a/code/LWS/LWSLoader.h b/code/LWS/LWSLoader.h index 3c24b59ea..eed0491f3 100644 --- a/code/LWS/LWSLoader.h +++ b/code/LWS/LWSLoader.h @@ -46,7 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_LWSLOADER_H_INCLUDED #define AI_LWSLOADER_H_INCLUDED -#include "LWOFileData.h" +#include "LWO/LWOFileData.h" + #include #include diff --git a/code/MD3/MD3Loader.cpp b/code/MD3/MD3Loader.cpp index cd58931f8..1e78b6e05 100644 --- a/code/MD3/MD3Loader.cpp +++ b/code/MD3/MD3Loader.cpp @@ -53,19 +53,21 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_MD3_IMPORTER -#include "MD3Loader.h" +#include "MD3/MD3Loader.h" +#include "Common/Importer.h" + #include #include #include #include -#include "Importer.h" #include -#include #include #include #include #include + #include +#include using namespace Assimp; diff --git a/code/MD5/MD5Parser.cpp b/code/MD5/MD5Parser.cpp index 2770226a9..b955e9cbc 100644 --- a/code/MD5/MD5Parser.cpp +++ b/code/MD5/MD5Parser.cpp @@ -47,16 +47,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. // internal headers -#include "MD5Loader.h" -#include "MaterialSystem.h" +#include "MD5/MD5Loader.h" +#include "Material/MaterialSystem.h" + #include #include #include #include #include - - using namespace Assimp; using namespace Assimp::MD5; diff --git a/code/MDC/MDCLoader.cpp b/code/MDC/MDCLoader.cpp index 42947f123..084ec6024 100644 --- a/code/MDC/MDCLoader.cpp +++ b/code/MDC/MDCLoader.cpp @@ -47,16 +47,17 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_MDC_IMPORTER // internal headers -#include "MDCLoader.h" -#include "MD3FileData.h" -#include "MDCNormalTable.h" // shouldn't be included by other units +#include "MDC/MDCLoader.h" +#include "MD3/MD3FileData.h" +#include "MDC/MDCNormalTable.h" // shouldn't be included by other units + #include #include #include #include #include -#include +#include using namespace Assimp; using namespace Assimp::MDC; diff --git a/code/MDL/MDLLoader.cpp b/code/MDL/MDLLoader.cpp index 256d79a2c..9ca36c079 100644 --- a/code/MDL/MDLLoader.cpp +++ b/code/MDL/MDLLoader.cpp @@ -50,11 +50,12 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_MDL_IMPORTER -#include "MDLLoader.h" +#include "MDL/MDLLoader.h" +#include "MDL/MDLDefaultColorMap.h" +#include "MD2/MD2FileData.h" + #include #include -#include "MDLDefaultColorMap.h" -#include "MD2FileData.h" #include #include #include diff --git a/code/MDL/MDLLoader.h b/code/MDL/MDLLoader.h index 7009d5ba4..bbe945529 100644 --- a/code/MDL/MDLLoader.h +++ b/code/MDL/MDLLoader.h @@ -50,7 +50,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include "MDLFileData.h" -#include "HalfLifeFileData.h" +#include "HMP/HalfLifeFileData.h" struct aiNode; struct aiTexture; diff --git a/code/MMD/MMDImporter.cpp b/code/MMD/MMDImporter.cpp index 84b9e35a6..e7744e4cd 100644 --- a/code/MMD/MMDImporter.cpp +++ b/code/MMD/MMDImporter.cpp @@ -41,15 +41,17 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_MMD_IMPORTER -#include "MMDImporter.h" -#include "MMDPmdParser.h" -#include "MMDPmxParser.h" -#include "MMDVmdParser.h" -#include "ConvertToLHProcess.h" +#include "MMD/MMDImporter.h" +#include "MMD/MMDPmdParser.h" +#include "MMD/MMDPmxParser.h" +#include "MMD/MMDVmdParser.h" +#include "PostProcessing/ConvertToLHProcess.h" + #include #include #include #include + #include #include #include diff --git a/code/OpenGEX/OpenGEXImporter.cpp b/code/OpenGEX/OpenGEXImporter.cpp index a7a143035..2de9bd85e 100644 --- a/code/OpenGEX/OpenGEXImporter.cpp +++ b/code/OpenGEX/OpenGEXImporter.cpp @@ -41,10 +41,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #ifndef ASSIMP_BUILD_NO_OPENGEX_IMPORTER -#include "OpenGEXImporter.h" +#include "OpenGEX/OpenGEXImporter.h" +#include "PostProcessing/MakeVerboseFormat.h" + #include #include -#include "MakeVerboseFormat.h" #include #include diff --git a/code/PostProcessing/CalcTangentsProcess.h b/code/PostProcessing/CalcTangentsProcess.h index 18775abcc..3568a624f 100644 --- a/code/PostProcessing/CalcTangentsProcess.h +++ b/code/PostProcessing/CalcTangentsProcess.h @@ -42,11 +42,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. /** @file Defines a post processing step to calculate tangents and - bitangents on all imported meshes.*/ + bi-tangents on all imported meshes.*/ #ifndef AI_CALCTANGENTSPROCESS_H_INC #define AI_CALCTANGENTSPROCESS_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" struct aiMesh; diff --git a/code/PostProcessing/ComputeUVMappingProcess.h b/code/PostProcessing/ComputeUVMappingProcess.h index 24f6bb721..a6d36e06e 100644 --- a/code/PostProcessing/ComputeUVMappingProcess.h +++ b/code/PostProcessing/ComputeUVMappingProcess.h @@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_COMPUTEUVMAPPING_H_INC #define AI_COMPUTEUVMAPPING_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" + #include #include #include diff --git a/code/PostProcessing/ConvertToLHProcess.h b/code/PostProcessing/ConvertToLHProcess.h index 63351568d..f32b91fc3 100644 --- a/code/PostProcessing/ConvertToLHProcess.h +++ b/code/PostProcessing/ConvertToLHProcess.h @@ -52,7 +52,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define AI_CONVERTTOLHPROCESS_H_INC #include -#include "BaseProcess.h" + +#include "Common/BaseProcess.h" struct aiMesh; struct aiNodeAnim; diff --git a/code/PostProcessing/DeboneProcess.h b/code/PostProcessing/DeboneProcess.h index ba77aba70..8b64c2acc 100644 --- a/code/PostProcessing/DeboneProcess.h +++ b/code/PostProcessing/DeboneProcess.h @@ -44,17 +44,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_DEBONEPROCESS_H_INC #define AI_DEBONEPROCESS_H_INC -#include -#include -#include "BaseProcess.h" +#include "Common/BaseProcess.h" #include #include +#include +#include + +#// Forward declarations class DeboneTest; -namespace Assimp -{ +namespace Assimp { #if (!defined AI_DEBONE_THRESHOLD) # define AI_DEBONE_THRESHOLD 1.0f @@ -66,14 +67,11 @@ namespace Assimp * the bone are split from the mesh. The split off (new) mesh is boneless. At any * point in time, bones without affect upon a given mesh are to be removed. */ -class DeboneProcess : public BaseProcess -{ +class DeboneProcess : public BaseProcess { public: - DeboneProcess(); ~DeboneProcess(); -public: // ------------------------------------------------------------------- /** Returns whether the processing step is present in the given flag. * @param pFlags The processing flags the importer was called with. @@ -91,7 +89,6 @@ public: void SetupProperties(const Importer* pImp); protected: - // ------------------------------------------------------------------- /** Executes the post processing step on the given imported data. * At the moment a process is not supposed to fail. diff --git a/code/PostProcessing/DropFaceNormalsProcess.h b/code/PostProcessing/DropFaceNormalsProcess.h index 0d116663b..c710c5a5e 100644 --- a/code/PostProcessing/DropFaceNormalsProcess.h +++ b/code/PostProcessing/DropFaceNormalsProcess.h @@ -44,23 +44,20 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_DROPFACENORMALPROCESS_H_INC #define AI_DROPFACENORMALPROCESS_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" + #include -namespace Assimp -{ +namespace Assimp { // --------------------------------------------------------------------------- /** The DropFaceNormalsProcess computes face normals for all faces of all meshes */ -class ASSIMP_API_WINONLY DropFaceNormalsProcess : public BaseProcess -{ +class ASSIMP_API_WINONLY DropFaceNormalsProcess : public BaseProcess { public: - DropFaceNormalsProcess(); ~DropFaceNormalsProcess(); -public: // ------------------------------------------------------------------- /** Returns whether the processing step is present in the given flag field. * @param pFlags The processing flags the importer was called with. A bitwise diff --git a/code/PostProcessing/EmbedTexturesProcess.h b/code/PostProcessing/EmbedTexturesProcess.h index cdf40bef7..3c4b2eab4 100644 --- a/code/PostProcessing/EmbedTexturesProcess.h +++ b/code/PostProcessing/EmbedTexturesProcess.h @@ -42,7 +42,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #pragma once -#include "BaseProcess.h" +#include "Common/BaseProcess.h" #include diff --git a/code/PostProcessing/FindDegenerates.h b/code/PostProcessing/FindDegenerates.h index 880f5f16a..7a15e77cf 100644 --- a/code/PostProcessing/FindDegenerates.h +++ b/code/PostProcessing/FindDegenerates.h @@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_FINDDEGENERATESPROCESS_H_INC #define AI_FINDDEGENERATESPROCESS_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" + #include class FindDegeneratesProcessTest; diff --git a/code/PostProcessing/FindInstancesProcess.h b/code/PostProcessing/FindInstancesProcess.h index ab4a371c7..64b838d7c 100644 --- a/code/PostProcessing/FindInstancesProcess.h +++ b/code/PostProcessing/FindInstancesProcess.h @@ -46,8 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_FINDINSTANCES_H_INC #define AI_FINDINSTANCES_H_INC -#include "BaseProcess.h" -#include "ProcessHelper.h" +#include "Common/BaseProcess.h" +#include "PostProcessing/ProcessHelper.h" class FindInstancesProcessTest; namespace Assimp { diff --git a/code/PostProcessing/FindInvalidDataProcess.h b/code/PostProcessing/FindInvalidDataProcess.h index 8504fb7b1..ce7375f34 100644 --- a/code/PostProcessing/FindInvalidDataProcess.h +++ b/code/PostProcessing/FindInvalidDataProcess.h @@ -46,7 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_FINDINVALIDDATA_H_INC #define AI_FINDINVALIDDATA_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" + #include #include diff --git a/code/PostProcessing/FixNormalsStep.h b/code/PostProcessing/FixNormalsStep.h index 6be27faef..f60ce596a 100644 --- a/code/PostProcessing/FixNormalsStep.h +++ b/code/PostProcessing/FixNormalsStep.h @@ -45,7 +45,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_FIXNORMALSPROCESS_H_INC #define AI_FIXNORMALSPROCESS_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" struct aiMesh; diff --git a/code/PostProcessing/GenFaceNormalsProcess.h b/code/PostProcessing/GenFaceNormalsProcess.h index c80ec9fdd..c641fd635 100644 --- a/code/PostProcessing/GenFaceNormalsProcess.h +++ b/code/PostProcessing/GenFaceNormalsProcess.h @@ -44,7 +44,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_GENFACENORMALPROCESS_H_INC #define AI_GENFACENORMALPROCESS_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" #include namespace Assimp diff --git a/code/PostProcessing/GenVertexNormalsProcess.h b/code/PostProcessing/GenVertexNormalsProcess.h index 9142ad26f..2ceee17e8 100644 --- a/code/PostProcessing/GenVertexNormalsProcess.h +++ b/code/PostProcessing/GenVertexNormalsProcess.h @@ -45,24 +45,24 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_GENVERTEXNORMALPROCESS_H_INC #define AI_GENVERTEXNORMALPROCESS_H_INC -#include "BaseProcess.h" +#include "Common/assbin_chunks.h" +#include "Common/BaseProcess.h" + #include +// Forward declarations class GenNormalsTest; namespace Assimp { // --------------------------------------------------------------------------- -/** The GenFaceNormalsProcess computes vertex normals for all vertizes +/** The GenFaceNormalsProcess computes vertex normals for all vertices */ -class ASSIMP_API GenVertexNormalsProcess : public BaseProcess -{ +class ASSIMP_API GenVertexNormalsProcess : public BaseProcess { public: - GenVertexNormalsProcess(); ~GenVertexNormalsProcess(); -public: // ------------------------------------------------------------------- /** Returns whether the processing step is present in the given flag. * @param pFlags The processing flags the importer was called with. @@ -88,13 +88,10 @@ public: // setter for configMaxAngle - inline void SetMaxSmoothAngle(ai_real f) - { + inline void SetMaxSmoothAngle(ai_real f) { configMaxAngle =f; } -public: - // ------------------------------------------------------------------- /** Computes normals for a specific mesh * @param pcMesh Mesh @@ -104,7 +101,6 @@ public: bool GenMeshVertexNormals (aiMesh* pcMesh, unsigned int meshIndex); private: - /** Configuration option: maximum smoothing angle, in radians*/ ai_real configMaxAngle; mutable bool force_ = false; diff --git a/code/PostProcessing/ImproveCacheLocality.cpp b/code/PostProcessing/ImproveCacheLocality.cpp index ace9d95ff..d0a016fa4 100644 --- a/code/PostProcessing/ImproveCacheLocality.cpp +++ b/code/PostProcessing/ImproveCacheLocality.cpp @@ -45,14 +45,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
* The algorithm is roughly basing on this paper: * http://www.cs.princeton.edu/gfx/pubs/Sander_2007_%3ETR/tipsy.pdf - * .. although overdraw rduction isn't implemented yet ... + * .. although overdraw reduction isn't implemented yet ... */ - - // internal headers -#include "ImproveCacheLocality.h" -#include "VertexTriangleAdjacency.h" +#include "PostProcessing/ImproveCacheLocality.h" +#include "Common/VertexTriangleAdjacency.h" + #include #include #include @@ -64,36 +63,33 @@ using namespace Assimp; // ------------------------------------------------------------------------------------------------ // Constructor to be privately used by Importer -ImproveCacheLocalityProcess::ImproveCacheLocalityProcess() { - configCacheDepth = PP_ICL_PTCACHE_SIZE; +ImproveCacheLocalityProcess::ImproveCacheLocalityProcess() +: mConfigCacheDepth(PP_ICL_PTCACHE_SIZE) { + // empty } // ------------------------------------------------------------------------------------------------ // Destructor, private as well -ImproveCacheLocalityProcess::~ImproveCacheLocalityProcess() -{ +ImproveCacheLocalityProcess::~ImproveCacheLocalityProcess() { // nothing to do here } // ------------------------------------------------------------------------------------------------ // Returns whether the processing step is present in the given flag field. -bool ImproveCacheLocalityProcess::IsActive( unsigned int pFlags) const -{ +bool ImproveCacheLocalityProcess::IsActive( unsigned int pFlags) const { return (pFlags & aiProcess_ImproveCacheLocality) != 0; } // ------------------------------------------------------------------------------------------------ // Setup configuration -void ImproveCacheLocalityProcess::SetupProperties(const Importer* pImp) -{ +void ImproveCacheLocalityProcess::SetupProperties(const Importer* pImp) { // AI_CONFIG_PP_ICL_PTCACHE_SIZE controls the target cache size for the optimizer - configCacheDepth = pImp->GetPropertyInteger(AI_CONFIG_PP_ICL_PTCACHE_SIZE,PP_ICL_PTCACHE_SIZE); + mConfigCacheDepth = pImp->GetPropertyInteger(AI_CONFIG_PP_ICL_PTCACHE_SIZE,PP_ICL_PTCACHE_SIZE); } // ------------------------------------------------------------------------------------------------ // Executes the post processing step on the given imported data. -void ImproveCacheLocalityProcess::Execute( aiScene* pScene) -{ +void ImproveCacheLocalityProcess::Execute( aiScene* pScene) { if (!pScene->mNumMeshes) { ASSIMP_LOG_DEBUG("ImproveCacheLocalityProcess skipped; there are no meshes"); return; @@ -103,7 +99,7 @@ void ImproveCacheLocalityProcess::Execute( aiScene* pScene) float out = 0.f; unsigned int numf = 0, numm = 0; - for( unsigned int a = 0; a < pScene->mNumMeshes; a++){ + for( unsigned int a = 0; a < pScene->mNumMeshes; ++a ){ const float res = ProcessMesh( pScene->mMeshes[a],a); if (res) { numf += pScene->mMeshes[a]->mNumFaces; @@ -121,44 +117,41 @@ void ImproveCacheLocalityProcess::Execute( aiScene* pScene) // ------------------------------------------------------------------------------------------------ // Improves the cache coherency of a specific mesh -float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int meshNum) -{ +ai_real ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int meshNum) { // TODO: rewrite this to use std::vector or boost::shared_array - ai_assert(NULL != pMesh); + ai_assert(nullptr != pMesh); // Check whether the input data is valid // - there must be vertices and faces // - all faces must be triangulated or we can't operate on them if (!pMesh->HasFaces() || !pMesh->HasPositions()) - return 0.f; + return static_cast(0.f); if (pMesh->mPrimitiveTypes != aiPrimitiveType_TRIANGLE) { ASSIMP_LOG_ERROR("This algorithm works on triangle meshes only"); - return 0.f; + return static_cast(0.f); } - if(pMesh->mNumVertices <= configCacheDepth) { - return 0.f; + if(pMesh->mNumVertices <= mConfigCacheDepth) { + return static_cast(0.f); } - float fACMR = 3.f; + ai_real fACMR = 3.f; const aiFace* const pcEnd = pMesh->mFaces+pMesh->mNumFaces; // Input ACMR is for logging purposes only if (!DefaultLogger::isNullLogger()) { - unsigned int* piFIFOStack = new unsigned int[configCacheDepth]; - memset(piFIFOStack,0xff,configCacheDepth*sizeof(unsigned int)); + unsigned int* piFIFOStack = new unsigned int[mConfigCacheDepth]; + memset(piFIFOStack,0xff,mConfigCacheDepth*sizeof(unsigned int)); unsigned int* piCur = piFIFOStack; - const unsigned int* const piCurEnd = piFIFOStack + configCacheDepth; + const unsigned int* const piCurEnd = piFIFOStack + mConfigCacheDepth; // count the number of cache misses unsigned int iCacheMisses = 0; for (const aiFace* pcFace = pMesh->mFaces;pcFace != pcEnd;++pcFace) { - for (unsigned int qq = 0; qq < 3;++qq) { bool bInCache = false; - for (unsigned int* pp = piFIFOStack;pp < piCurEnd;++pp) { if (*pp == pcFace->mIndices[qq]) { // the vertex is in cache @@ -176,7 +169,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh } } delete[] piFIFOStack; - fACMR = (float)iCacheMisses / pMesh->mNumFaces; + fACMR = (ai_real) iCacheMisses / pMesh->mNumFaces; if (3.0 == fACMR) { char szBuff[128]; // should be sufficiently large in every case @@ -185,7 +178,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh // smaller than 3.0 ... ai_snprintf(szBuff,128,"Mesh %u: Not suitable for vcache optimization",meshNum); ASSIMP_LOG_WARN(szBuff); - return 0.f; + return static_cast(0.f); } } @@ -258,7 +251,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh int ivdx = 0; int ics = 1; - int iStampCnt = configCacheDepth+1; + int iStampCnt = mConfigCacheDepth+1; while (ivdx >= 0) { unsigned int icnt = piNumTriPtrNoModify[ivdx]; @@ -294,7 +287,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh *piCSIter++ = dp; // if the vertex is not yet in cache, set its cache count - if (iStampCnt-piCachingStamps[dp] > configCacheDepth) { + if (iStampCnt-piCachingStamps[dp] > mConfigCacheDepth) { piCachingStamps[dp] = iStampCnt++; ++iCacheMisses; } @@ -319,7 +312,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh // will the vertex be in cache, even after fanning occurs? unsigned int tmp; - if ((tmp = iStampCnt-piCachingStamps[dp]) + 2*piNumTriPtr[dp] <= configCacheDepth) { + if ((tmp = iStampCnt-piCachingStamps[dp]) + 2*piNumTriPtr[dp] <= mConfigCacheDepth) { priority = tmp; } @@ -356,7 +349,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh } } } - float fACMR2 = 0.0f; + ai_real fACMR2 = 0.0f; if (!DefaultLogger::isNullLogger()) { fACMR2 = (float)iCacheMisses / pMesh->mNumFaces; diff --git a/code/PostProcessing/ImproveCacheLocality.h b/code/PostProcessing/ImproveCacheLocality.h index 1b29ee0d6..de25ecd9f 100644 --- a/code/PostProcessing/ImproveCacheLocality.h +++ b/code/PostProcessing/ImproveCacheLocality.h @@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_IMPROVECACHELOCALITY_H_INC #define AI_IMPROVECACHELOCALITY_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" + #include struct aiMesh; @@ -87,12 +88,12 @@ protected: * @param pMesh The mesh to process. * @param meshNum Index of the mesh to process */ - float ProcessMesh( aiMesh* pMesh, unsigned int meshNum); + ai_real ProcessMesh( aiMesh* pMesh, unsigned int meshNum); private: //! Configuration parameter: specifies the size of the cache to //! optimize the vertex data for. - unsigned int configCacheDepth; + unsigned int mConfigCacheDepth; }; } // end of namespace Assimp diff --git a/code/PostProcessing/JoinVerticesProcess.h b/code/PostProcessing/JoinVerticesProcess.h index 66fa362de..e017ae62d 100644 --- a/code/PostProcessing/JoinVerticesProcess.h +++ b/code/PostProcessing/JoinVerticesProcess.h @@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_JOINVERTICESPROCESS_H_INC #define AI_JOINVERTICESPROCESS_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" + #include struct aiMesh; @@ -61,13 +62,11 @@ namespace Assimp * erases all but one of the copies. This usually reduces the number of vertices * in a mesh by a serious amount and is the standard form to render a mesh. */ -class ASSIMP_API JoinVerticesProcess : public BaseProcess -{ +class ASSIMP_API JoinVerticesProcess : public BaseProcess { public: JoinVerticesProcess(); ~JoinVerticesProcess(); -public: // ------------------------------------------------------------------- /** Returns whether the processing step is present in the given flag field. * @param pFlags The processing flags the importer was called with. A bitwise @@ -83,15 +82,12 @@ public: */ void Execute( aiScene* pScene); -public: // ------------------------------------------------------------------- /** Unites identical vertices in the given mesh. * @param pMesh The mesh to process. * @param meshIndex Index of the mesh to process */ int ProcessMesh( aiMesh* pMesh, unsigned int meshIndex); - -private: }; } // end of namespace Assimp diff --git a/code/PostProcessing/LimitBoneWeightsProcess.h b/code/PostProcessing/LimitBoneWeightsProcess.h index 3602fd8ed..73c2a68d5 100644 --- a/code/PostProcessing/LimitBoneWeightsProcess.h +++ b/code/PostProcessing/LimitBoneWeightsProcess.h @@ -44,14 +44,14 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_LIMITBONEWEIGHTSPROCESS_H_INC #define AI_LIMITBONEWEIGHTSPROCESS_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" +// Forward declarations struct aiMesh; class LimitBoneWeightsTest; -namespace Assimp -{ +namespace Assimp { // NOTE: If you change these limits, don't forget to change the // corresponding values in all Assimp ports @@ -72,14 +72,11 @@ namespace Assimp * The other weights on this bone are then renormalized to assure the sum weight * to be 1. */ -class ASSIMP_API LimitBoneWeightsProcess : public BaseProcess -{ +class ASSIMP_API LimitBoneWeightsProcess : public BaseProcess { public: - LimitBoneWeightsProcess(); ~LimitBoneWeightsProcess(); -public: // ------------------------------------------------------------------- /** Returns whether the processing step is present in the given flag. * @param pFlags The processing flags the importer was called with. @@ -96,8 +93,6 @@ public: */ void SetupProperties(const Importer* pImp); -public: - // ------------------------------------------------------------------- /** Limits the bone weight count for all vertices in the given mesh. * @param pMesh The mesh to process. @@ -111,34 +106,29 @@ public: */ void Execute( aiScene* pScene); - -public: - // ------------------------------------------------------------------- /** Describes a bone weight on a vertex */ - struct Weight - { + struct Weight { unsigned int mBone; ///< Index of the bone float mWeight; ///< Weight of that bone on this vertex Weight() AI_NO_EXCEPT : mBone(0) - , mWeight(0.0f) - { } + , mWeight(0.0f) { + // empty + } Weight( unsigned int pBone, float pWeight) - { - mBone = pBone; - mWeight = pWeight; + : mBone(pBone) + , mWeight(pWeight) { + // empty } /** Comparison operator to sort bone weights by descending weight */ - bool operator < (const Weight& pWeight) const - { + bool operator < (const Weight& pWeight) const { return mWeight > pWeight.mWeight; } }; -public: /** Maximum number of bones influencing any single vertex. */ unsigned int mMaxWeights; }; diff --git a/code/PostProcessing/MakeVerboseFormat.h b/code/PostProcessing/MakeVerboseFormat.h index d12db63ae..1adf8e2f6 100644 --- a/code/PostProcessing/MakeVerboseFormat.h +++ b/code/PostProcessing/MakeVerboseFormat.h @@ -46,7 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_MAKEVERBOSEFORMAT_H_INC #define AI_MAKEVERBOSEFORMAT_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" + struct aiMesh; namespace Assimp { diff --git a/code/PostProcessing/OptimizeGraph.cpp b/code/PostProcessing/OptimizeGraph.cpp index add9ab79e..5db51f58b 100644 --- a/code/PostProcessing/OptimizeGraph.cpp +++ b/code/PostProcessing/OptimizeGraph.cpp @@ -5,8 +5,6 @@ Open Asset Import Library (assimp) Copyright (c) 2006-2019, assimp team - - All rights reserved. Redistribution and use of this software in source and binary forms, diff --git a/code/PostProcessing/OptimizeGraph.h b/code/PostProcessing/OptimizeGraph.h index e5bbed767..82cc5db3f 100644 --- a/code/PostProcessing/OptimizeGraph.h +++ b/code/PostProcessing/OptimizeGraph.h @@ -46,13 +46,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_OPTIMIZEGRAPHPROCESS_H_INC #define AI_OPTIMIZEGRAPHPROCESS_H_INC -#include "BaseProcess.h" -#include "ProcessHelper.h" +#include "Common/BaseProcess.h" +#include "PostProcessing/ProcessHelper.h" + #include + #include +// Forward declarations struct aiMesh; + class OptimizeGraphProcessTest; + namespace Assimp { // ----------------------------------------------------------------------------- @@ -64,14 +69,11 @@ namespace Assimp { * @see aiProcess_OptimizeGraph for a detailed description of the * algorithm being applied. */ -class OptimizeGraphProcess : public BaseProcess -{ +class OptimizeGraphProcess : public BaseProcess { public: - OptimizeGraphProcess(); ~OptimizeGraphProcess(); -public: // ------------------------------------------------------------------- bool IsActive( unsigned int pFlags) const; @@ -81,14 +83,12 @@ public: // ------------------------------------------------------------------- void SetupProperties(const Importer* pImp); - // ------------------------------------------------------------------- /** @brief Add a list of node names to be locked and not modified. * @param in List of nodes. See #AI_CONFIG_PP_OG_EXCLUDE_LIST for * format explanations. */ - inline void AddLockedNodeList(std::string& in) - { + inline void AddLockedNodeList(std::string& in) { ConvertListToStrings (in,locked_nodes); } @@ -96,8 +96,7 @@ public: /** @brief Add another node to be locked and not modified. * @param name Name to be locked */ - inline void AddLockedNode(std::string& name) - { + inline void AddLockedNode(std::string& name) { locked_nodes.push_back(name); } @@ -105,25 +104,21 @@ public: /** @brief Remove a node from the list of locked nodes. * @param name Name to be unlocked */ - inline void RemoveLockedNode(std::string& name) - { + inline void RemoveLockedNode(std::string& name) { locked_nodes.remove(name); } protected: - void CollectNewChildren(aiNode* nd, std::list& nodes); void FindInstancedMeshes (aiNode* pNode); private: - #ifdef AI_OG_USE_HASHING typedef std::set LockedSetType; #else typedef std::set LockedSetType; #endif - //! Scene we're working with aiScene* mScene; diff --git a/code/PostProcessing/OptimizeMeshes.h b/code/PostProcessing/OptimizeMeshes.h index 9f46f349b..dec4ab52d 100644 --- a/code/PostProcessing/OptimizeMeshes.h +++ b/code/PostProcessing/OptimizeMeshes.h @@ -46,8 +46,10 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_OPTIMIZEMESHESPROCESS_H_INC #define AI_OPTIMIZEMESHESPROCESS_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" + #include + #include struct aiMesh; @@ -64,16 +66,14 @@ namespace Assimp { * * @note Instanced meshes are currently not processed. */ -class OptimizeMeshesProcess : public BaseProcess -{ +class OptimizeMeshesProcess : public BaseProcess { public: /// @brief The class constructor. OptimizeMeshesProcess(); - /// @brief The class destcructor, + /// @brief The class destructor. ~OptimizeMeshesProcess(); - /** @brief Internal utility to store additional mesh info */ struct MeshInfo { diff --git a/code/PostProcessing/PretransformVertices.h b/code/PostProcessing/PretransformVertices.h index b7329af13..b2982951e 100644 --- a/code/PostProcessing/PretransformVertices.h +++ b/code/PostProcessing/PretransformVertices.h @@ -47,13 +47,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_PRETRANSFORMVERTICES_H_INC #define AI_PRETRANSFORMVERTICES_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" + #include + #include #include +// Forward declarations struct aiNode; + class PretransformVerticesTest; + namespace Assimp { // --------------------------------------------------------------------------- @@ -80,10 +85,10 @@ public: // ------------------------------------------------------------------- /** @brief Toggle the 'keep hierarchy' option - * @param d hm ... difficult to guess what this means, hu!? + * @param keep true for keep configuration. */ - void KeepHierarchy(bool d) { - configKeepHierarchy = d; + void KeepHierarchy(bool keep) { + configKeepHierarchy = keep; } // ------------------------------------------------------------------- @@ -148,8 +153,6 @@ private: // Build reference counters for all meshes void BuildMeshRefCountArray(aiNode* nd, unsigned int * refs); - - //! Configuration option: keep scene hierarchy as long as possible bool configKeepHierarchy; bool configNormalize; diff --git a/code/PostProcessing/ProcessHelper.h b/code/PostProcessing/ProcessHelper.h index c59f3217b..0afcc4142 100644 --- a/code/PostProcessing/ProcessHelper.h +++ b/code/PostProcessing/ProcessHelper.h @@ -51,7 +51,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include -#include "BaseProcess.h" +#include "Common/BaseProcess.h" #include #include diff --git a/code/PostProcessing/RemoveRedundantMaterials.cpp b/code/PostProcessing/RemoveRedundantMaterials.cpp index 632bdca3f..49ec8f5c4 100644 --- a/code/PostProcessing/RemoveRedundantMaterials.cpp +++ b/code/PostProcessing/RemoveRedundantMaterials.cpp @@ -49,7 +49,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "RemoveRedundantMaterials.h" #include #include "ProcessHelper.h" -#include "MaterialSystem.h" +#include "Material/MaterialSystem.h" #include using namespace Assimp; @@ -57,7 +57,7 @@ using namespace Assimp; // ------------------------------------------------------------------------------------------------ // Constructor to be privately used by Importer RemoveRedundantMatsProcess::RemoveRedundantMatsProcess() -: configFixedMaterials() { +: mConfigFixedMaterials() { // nothing to do here } @@ -80,7 +80,7 @@ bool RemoveRedundantMatsProcess::IsActive( unsigned int pFlags) const void RemoveRedundantMatsProcess::SetupProperties(const Importer* pImp) { // Get value of AI_CONFIG_PP_RRM_EXCLUDE_LIST - configFixedMaterials = pImp->GetPropertyString(AI_CONFIG_PP_RRM_EXCLUDE_LIST,""); + mConfigFixedMaterials = pImp->GetPropertyString(AI_CONFIG_PP_RRM_EXCLUDE_LIST,""); } // ------------------------------------------------------------------------------------------------ @@ -100,10 +100,10 @@ void RemoveRedundantMatsProcess::Execute( aiScene* pScene) // If a list of materials to be excluded was given, match the list with // our imported materials and 'salt' all positive matches to ensure that // we get unique hashes later. - if (configFixedMaterials.length()) { + if (mConfigFixedMaterials.length()) { std::list strings; - ConvertListToStrings(configFixedMaterials,strings); + ConvertListToStrings(mConfigFixedMaterials,strings); for (unsigned int i = 0; i < pScene->mNumMaterials;++i) { aiMaterial* mat = pScene->mMaterials[i]; diff --git a/code/PostProcessing/RemoveRedundantMaterials.h b/code/PostProcessing/RemoveRedundantMaterials.h index dbd4d44cc..1f32a0abf 100644 --- a/code/PostProcessing/RemoveRedundantMaterials.h +++ b/code/PostProcessing/RemoveRedundantMaterials.h @@ -46,7 +46,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_REMOVEREDUNDANTMATERIALS_H_INC #define AI_REMOVEREDUNDANTMATERIALS_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" #include class RemoveRedundantMatsTest; @@ -57,8 +57,7 @@ namespace Assimp { /** RemoveRedundantMatsProcess: Post-processing step to remove redundant * materials from the imported scene. */ -class ASSIMP_API RemoveRedundantMatsProcess : public BaseProcess -{ +class ASSIMP_API RemoveRedundantMatsProcess : public BaseProcess { public: /// The default class constructor. RemoveRedundantMatsProcess(); @@ -66,7 +65,6 @@ public: /// The class destructor. ~RemoveRedundantMatsProcess(); -public: // ------------------------------------------------------------------- // Check whether step is active bool IsActive( unsigned int pFlags) const; @@ -79,27 +77,25 @@ public: // Setup import settings void SetupProperties(const Importer* pImp); - // ------------------------------------------------------------------- - /** @brief Set list of fixed (unmutable) materials + /** @brief Set list of fixed (inmutable) materials * @param fixed See #AI_CONFIG_PP_RRM_EXCLUDE_LIST */ void SetFixedMaterialsString(const std::string& fixed = "") { - configFixedMaterials = fixed; + mConfigFixedMaterials = fixed; } // ------------------------------------------------------------------- - /** @brief Get list of fixed (unmutable) materials + /** @brief Get list of fixed (inmutable) materials * @return See #AI_CONFIG_PP_RRM_EXCLUDE_LIST */ const std::string& GetFixedMaterialsString() const { - return configFixedMaterials; + return mConfigFixedMaterials; } private: - //! Configuration option: list of all fixed materials - std::string configFixedMaterials; + std::string mConfigFixedMaterials; }; } // end of namespace Assimp diff --git a/code/PostProcessing/RemoveVCProcess.h b/code/PostProcessing/RemoveVCProcess.h index 617d7b9b2..7bb21a833 100644 --- a/code/PostProcessing/RemoveVCProcess.h +++ b/code/PostProcessing/RemoveVCProcess.h @@ -44,7 +44,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_REMOVEVCPROCESS_H_INCLUDED #define AI_REMOVEVCPROCESS_H_INCLUDED -#include "BaseProcess.h" +#include "Common/BaseProcess.h" + #include class RemoveVCProcessTest; diff --git a/code/PostProcessing/ScaleProcess.h b/code/PostProcessing/ScaleProcess.h index 55146ae06..256737875 100644 --- a/code/PostProcessing/ScaleProcess.h +++ b/code/PostProcessing/ScaleProcess.h @@ -41,7 +41,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #pragma once -#include "BaseProcess.h" +#include "Common/BaseProcess.h" struct aiNode; diff --git a/code/PostProcessing/SortByPTypeProcess.cpp b/code/PostProcessing/SortByPTypeProcess.cpp index 2e0cc5400..be8405a17 100644 --- a/code/PostProcessing/SortByPTypeProcess.cpp +++ b/code/PostProcessing/SortByPTypeProcess.cpp @@ -57,8 +57,8 @@ using namespace Assimp; // ------------------------------------------------------------------------------------------------ // Constructor to be privately used by Importer SortByPTypeProcess::SortByPTypeProcess() -{ - configRemoveMeshes = 0; +: mConfigRemoveMeshes( 0 ) { + // empty } // ------------------------------------------------------------------------------------------------ @@ -78,7 +78,7 @@ bool SortByPTypeProcess::IsActive( unsigned int pFlags) const // ------------------------------------------------------------------------------------------------ void SortByPTypeProcess::SetupProperties(const Importer* pImp) { - configRemoveMeshes = pImp->GetPropertyInteger(AI_CONFIG_PP_SBP_REMOVE,0); + mConfigRemoveMeshes = pImp->GetPropertyInteger(AI_CONFIG_PP_SBP_REMOVE,0); } // ------------------------------------------------------------------------------------------------ @@ -172,7 +172,7 @@ void SortByPTypeProcess::Execute( aiScene* pScene) { } if (1 == num) { - if (!(configRemoveMeshes & mesh->mPrimitiveTypes)) { + if (!(mConfigRemoveMeshes & mesh->mPrimitiveTypes)) { *meshIdx = static_cast( outMeshes.size() ); outMeshes.push_back(mesh); } else { @@ -206,7 +206,7 @@ void SortByPTypeProcess::Execute( aiScene* pScene) { VertexWeightTable* avw = ComputeVertexBoneWeightTable(mesh); for (unsigned int real = 0; real < 4; ++real,++meshIdx) { - if ( !aiNumPerPType[real] || configRemoveMeshes & (1u << real)) + if ( !aiNumPerPType[real] || mConfigRemoveMeshes & (1u << real)) { continue; } @@ -392,10 +392,10 @@ void SortByPTypeProcess::Execute( aiScene* pScene) { { char buffer[1024]; ::ai_snprintf(buffer,1024,"Points: %u%s, Lines: %u%s, Triangles: %u%s, Polygons: %u%s (Meshes, X = removed)", - aiNumMeshesPerPType[0], ((configRemoveMeshes & aiPrimitiveType_POINT) ? "X" : ""), - aiNumMeshesPerPType[1], ((configRemoveMeshes & aiPrimitiveType_LINE) ? "X" : ""), - aiNumMeshesPerPType[2], ((configRemoveMeshes & aiPrimitiveType_TRIANGLE) ? "X" : ""), - aiNumMeshesPerPType[3], ((configRemoveMeshes & aiPrimitiveType_POLYGON) ? "X" : "")); + aiNumMeshesPerPType[0], ((mConfigRemoveMeshes & aiPrimitiveType_POINT) ? "X" : ""), + aiNumMeshesPerPType[1], ((mConfigRemoveMeshes & aiPrimitiveType_LINE) ? "X" : ""), + aiNumMeshesPerPType[2], ((mConfigRemoveMeshes & aiPrimitiveType_TRIANGLE) ? "X" : ""), + aiNumMeshesPerPType[3], ((mConfigRemoveMeshes & aiPrimitiveType_POLYGON) ? "X" : "")); ASSIMP_LOG_INFO(buffer); ASSIMP_LOG_DEBUG("SortByPTypeProcess finished"); } diff --git a/code/PostProcessing/SortByPTypeProcess.h b/code/PostProcessing/SortByPTypeProcess.h index c9d9924d8..1d7ccfc15 100644 --- a/code/PostProcessing/SortByPTypeProcess.h +++ b/code/PostProcessing/SortByPTypeProcess.h @@ -45,10 +45,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_SORTBYPTYPEPROCESS_H_INC #define AI_SORTBYPTYPEPROCESS_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" #include class SortByPTypeProcessTest; + namespace Assimp { @@ -57,14 +58,11 @@ namespace Assimp { * A mesh with 5 lines, 3 points and 145 triangles would be split in 3 * submeshes. */ -class ASSIMP_API SortByPTypeProcess : public BaseProcess -{ +class ASSIMP_API SortByPTypeProcess : public BaseProcess { public: - SortByPTypeProcess(); ~SortByPTypeProcess(); -public: // ------------------------------------------------------------------- bool IsActive( unsigned int pFlags) const; @@ -75,8 +73,7 @@ public: void SetupProperties(const Importer* pImp); private: - - int configRemoveMeshes; + int mConfigRemoveMeshes; }; diff --git a/code/PostProcessing/SplitLargeMeshes.h b/code/PostProcessing/SplitLargeMeshes.h index 77f089ce7..f683663b8 100644 --- a/code/PostProcessing/SplitLargeMeshes.h +++ b/code/PostProcessing/SplitLargeMeshes.h @@ -46,7 +46,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define AI_SPLITLARGEMESHES_H_INC #include -#include "BaseProcess.h" +#include "Common/BaseProcess.h" #include #include diff --git a/code/PostProcessing/TextureTransform.h b/code/PostProcessing/TextureTransform.h index c556ff5d8..2a5d623d7 100644 --- a/code/PostProcessing/TextureTransform.h +++ b/code/PostProcessing/TextureTransform.h @@ -45,7 +45,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define AI_TEXTURE_TRANSFORM_H_INCLUDED #include -#include "BaseProcess.h" +#include "Common/BaseProcess.h" #include #include diff --git a/code/PostProcessing/TriangulateProcess.cpp b/code/PostProcessing/TriangulateProcess.cpp index 0f68f47dd..1040836bb 100644 --- a/code/PostProcessing/TriangulateProcess.cpp +++ b/code/PostProcessing/TriangulateProcess.cpp @@ -5,8 +5,6 @@ Open Asset Import Library (assimp) Copyright (c) 2006-2019, assimp team - - All rights reserved. Redistribution and use of this software in source and binary forms, @@ -60,9 +58,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * a file */ #ifndef ASSIMP_BUILD_NO_TRIANGULATE_PROCESS -#include "TriangulateProcess.h" -#include "ProcessHelper.h" -#include "PolyTools.h" + +#include "PostProcessing/TriangulateProcess.h" +#include "PostProcessing/ProcessHelper.h" +#include "Common/PolyTools.h" + #include //#define AI_BUILD_TRIANGULATE_COLOR_FACE_WINDING diff --git a/code/PostProcessing/TriangulateProcess.h b/code/PostProcessing/TriangulateProcess.h index 47bd2115a..916b5103d 100644 --- a/code/PostProcessing/TriangulateProcess.h +++ b/code/PostProcessing/TriangulateProcess.h @@ -46,7 +46,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_TRIANGULATEPROCESS_H_INC #define AI_TRIANGULATEPROCESS_H_INC -#include "BaseProcess.h" +#include "Common/BaseProcess.h" struct aiMesh; @@ -59,14 +59,11 @@ namespace Assimp { * into triangles. You usually want this to happen because the graphics cards * need their data as triangles. */ -class ASSIMP_API TriangulateProcess : public BaseProcess -{ +class ASSIMP_API TriangulateProcess : public BaseProcess { public: - TriangulateProcess(); ~TriangulateProcess(); -public: // ------------------------------------------------------------------- /** Returns whether the processing step is present in the given flag field. * @param pFlags The processing flags the importer was called with. A bitwise @@ -82,7 +79,6 @@ public: */ void Execute( aiScene* pScene); -public: // ------------------------------------------------------------------- /** Triangulates the given mesh. * @param pMesh The mesh to triangulate. diff --git a/code/PostProcessing/ValidateDataStructure.h b/code/PostProcessing/ValidateDataStructure.h index bd21e8854..0b891ef41 100644 --- a/code/PostProcessing/ValidateDataStructure.h +++ b/code/PostProcessing/ValidateDataStructure.h @@ -48,7 +48,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include -#include "BaseProcess.h" + +#include "Common/BaseProcess.h" struct aiBone; struct aiMesh; diff --git a/code/Step/STEPFile.h b/code/Step/STEPFile.h index ac3280c21..d99b34b3c 100644 --- a/code/Step/STEPFile.h +++ b/code/Step/STEPFile.h @@ -50,7 +50,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include -#include "FBXDocument.h" //ObjectMap::value_type +#include "FBX/FBXDocument.h" //ObjectMap::value_type + #include // diff --git a/code/Step/StepExporter.cpp b/code/Step/StepExporter.cpp index 02e521247..2b4dbdbac 100644 --- a/code/Step/StepExporter.cpp +++ b/code/Step/StepExporter.cpp @@ -45,23 +45,25 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_EXPORT #ifndef ASSIMP_BUILD_NO_STEP_EXPORTER -#include "StepExporter.h" -#include "ConvertToLHProcess.h" +#include "Step/StepExporter.h" +#include "PostProcessing/ConvertToLHProcess.h" + #include #include #include #include +#include +#include +#include +#include +#include + #include #include #include #include #include #include -#include -#include -#include -#include -#include // #if _MSC_VER > 1500 || (defined __GNUC___) diff --git a/code/Unreal/UnrealLoader.cpp b/code/Unreal/UnrealLoader.cpp index 778aef59d..0bd4650d0 100644 --- a/code/Unreal/UnrealLoader.cpp +++ b/code/Unreal/UnrealLoader.cpp @@ -52,12 +52,12 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_3D_IMPORTER -#include "UnrealLoader.h" +#include "Unreal/UnrealLoader.h" +#include "PostProcessing/ConvertToLHProcess.h" + #include #include #include -#include "ConvertToLHProcess.h" - #include #include #include diff --git a/code/X/XFileExporter.cpp b/code/X/XFileExporter.cpp index baa478226..b2cc51852 100644 --- a/code/X/XFileExporter.cpp +++ b/code/X/XFileExporter.cpp @@ -45,21 +45,23 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_EXPORT #ifndef ASSIMP_BUILD_NO_X_EXPORTER -#include "XFileExporter.h" -#include "ConvertToLHProcess.h" +#include "X/XFileExporter.h" +#include "PostProcessing/ConvertToLHProcess.h" + #include #include #include #include #include -#include -#include -#include #include #include #include #include +#include +#include +#include + using namespace Assimp; namespace Assimp diff --git a/code/X/XFileImporter.cpp b/code/X/XFileImporter.cpp index e9335cfaa..10547bb8a 100644 --- a/code/X/XFileImporter.cpp +++ b/code/X/XFileImporter.cpp @@ -44,10 +44,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_X_IMPORTER -#include "XFileImporter.h" -#include "XFileParser.h" +#include "X/XFileImporter.h" +#include "X/XFileParser.h" +#include "PostProcessing/ConvertToLHProcess.h" + #include -#include "ConvertToLHProcess.h" #include #include #include diff --git a/code/glTF/glTFAsset.h b/code/glTF/glTFAsset.h index 92b7dd9d1..359917b95 100644 --- a/code/glTF/glTFAsset.h +++ b/code/glTF/glTFAsset.h @@ -52,6 +52,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER +#include + #include #include #include diff --git a/code/glTF/glTFExporter.cpp b/code/glTF/glTFExporter.cpp index 6bf7415d3..3bd944bb6 100644 --- a/code/glTF/glTFExporter.cpp +++ b/code/glTF/glTFExporter.cpp @@ -42,14 +42,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_EXPORT #ifndef ASSIMP_BUILD_NO_GLTF_EXPORTER -#include "glTFExporter.h" +#include "glTF/glTFExporter.h" +#include "glTF/glTFAssetWriter.h" +#include "PostProcessing/SplitLargeMeshes.h" #include #include #include - -#include "SplitLargeMeshes.h" - #include #include #include @@ -61,8 +60,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include -#include "glTFAssetWriter.h" - #ifdef ASSIMP_IMPORTER_GLTF_USE_OPEN3DGC // Header files, Open3DGC. # include diff --git a/code/glTF/glTFImporter.cpp b/code/glTF/glTFImporter.cpp index 57566b463..9e31bdccd 100755 --- a/code/glTF/glTFImporter.cpp +++ b/code/glTF/glTFImporter.cpp @@ -42,10 +42,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER -#include "glTFImporter.h" +#include "glTF/glTFImporter.h" +#include "glTF/glTFAsset.h" +#include "glTF/glTFAssetWriter.h" +#include "PostProcessing/MakeVerboseFormat.h" + #include #include - #include #include #include @@ -54,16 +57,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include -#include "MakeVerboseFormat.h" - -#include "glTFAsset.h" -// This is included here so WriteLazyDict's definition is found. -#include "glTFAssetWriter.h" - using namespace Assimp; using namespace glTF; - // // glTFImporter // diff --git a/code/glTF2/glTF2Asset.h b/code/glTF2/glTF2Asset.h index 2937c0ce9..70f92df5b 100644 --- a/code/glTF2/glTF2Asset.h +++ b/code/glTF2/glTF2Asset.h @@ -52,6 +52,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER +#include + #include #include #include diff --git a/code/glTF2/glTF2Exporter.cpp b/code/glTF2/glTF2Exporter.cpp index 655b4fc7d..4724c2ef4 100644 --- a/code/glTF2/glTF2Exporter.cpp +++ b/code/glTF2/glTF2Exporter.cpp @@ -42,14 +42,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_EXPORT #ifndef ASSIMP_BUILD_NO_GLTF_EXPORTER -#include "glTF2Exporter.h" +#include "glTF2/glTF2Exporter.h" +#include "glTF2/glTF2AssetWriter.h" +#include "PostProcessing/SplitLargeMeshes.h" #include #include #include - -#include "SplitLargeMeshes.h" - #include #include #include @@ -61,8 +60,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include -#include "glTF2AssetWriter.h" - using namespace rapidjson; using namespace Assimp; diff --git a/code/glTF2/glTF2Importer.cpp b/code/glTF2/glTF2Importer.cpp index bb0f7ad8d..cf9625b9c 100755 --- a/code/glTF2/glTF2Importer.cpp +++ b/code/glTF2/glTF2Importer.cpp @@ -42,10 +42,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER -#include "glTF2Importer.h" +#include "glTF2/glTF2Importer.h" +#include "glTF2/glTF2Asset.h" +#include "glTF2/glTF2AssetWriter.h" +#include "PostProcessing/MakeVerboseFormat.h" + #include #include - #include #include #include @@ -56,11 +59,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include -#include "MakeVerboseFormat.h" - -#include "glTF2Asset.h" -// This is included here so WriteLazyDict's definition is found. -#include "glTF2AssetWriter.h" #include #include @@ -68,7 +66,7 @@ using namespace Assimp; using namespace glTF2; namespace { - // generate bitangents from normals and tangents according to spec + // generate bi-tangents from normals and tangents according to spec struct Tangent { aiVector3D xyz; ai_real w; From d448b49ae14c2c6e3885951278990a83eb1db210 Mon Sep 17 00:00:00 2001 From: PK Date: Tue, 11 Jun 2019 15:16:53 +0200 Subject: [PATCH 07/24] fixed MSVC toolset versions >140 according to https://cmake.org/cmake/help/latest/variable/MSVC14.html the use of the MSVC** flags is deprecated, this change uses the encouraged MSVC_VERSION variable. --- code/CMakeLists.txt | 41 ++++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt index 83209ca03..b64cd5aa6 100644 --- a/code/CMakeLists.txt +++ b/code/CMakeLists.txt @@ -1053,25 +1053,28 @@ if( MSVC ) if(MSVC_TOOLSET_VERSION) set(MSVC_PREFIX "vc${MSVC_TOOLSET_VERSION}") else() - if( MSVC70 OR MSVC71 ) - set(MSVC_PREFIX "vc70") - elseif( MSVC80 ) - set(MSVC_PREFIX "vc80") - elseif( MSVC90 ) - set(MSVC_PREFIX "vc90") - elseif( MSVC10 ) - set(MSVC_PREFIX "vc100") - elseif( MSVC11 ) - set(MSVC_PREFIX "vc110") - elseif( MSVC12 ) - set(MSVC_PREFIX "vc120") - elseif( MSVC14 ) - set(MSVC_PREFIX "vc140") - elseif( MSVC15 ) - set(MSVC_PREFIX "vc141") - else() - set(MSVC_PREFIX "vc150") - endif() + if( MSVC70 OR MSVC71 ) + set(MSVC_PREFIX "vc70") + elseif( MSVC80 ) + set(MSVC_PREFIX "vc80") + elseif( MSVC90 ) + set(MSVC_PREFIX "vc90") + elseif( MSVC10 ) + set(MSVC_PREFIX "vc100") + elseif( MSVC11 ) + set(MSVC_PREFIX "vc110") + elseif( MSVC12 ) + set(MSVC_PREFIX "vc120") + elseif( MSVC_VERSION LESS 1910) + set(MSVC_PREFIX "vc140") + elseif( MSVC_VERSION LESS 1920) + set(MSVC_PREFIX "vc141") + elseif( MSVC_VERSION LESS 1930) + set(MSVC_PREFIX "vc142") + else() + MESSAGE(WARNING "unknown msvc version ${MSVC_VERSION}") + set(MSVC_PREFIX "vc150") + endif() endif() set(LIBRARY_SUFFIX "${ASSIMP_LIBRARY_SUFFIX}-${MSVC_PREFIX}-mt" CACHE STRING "the suffix for the assimp windows library") endif() From 03c01004c5cf531292fdc18451cf2a6e4f338bfa Mon Sep 17 00:00:00 2001 From: PK Date: Tue, 11 Jun 2019 15:23:05 +0200 Subject: [PATCH 08/24] toolset also in cmake release template --- assimpTargets-release.cmake.in | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/assimpTargets-release.cmake.in b/assimpTargets-release.cmake.in index 56bfc3602..b09b881f7 100644 --- a/assimpTargets-release.cmake.in +++ b/assimpTargets-release.cmake.in @@ -23,8 +23,12 @@ if(MSVC) set(MSVC_PREFIX "vc110") elseif( MSVC12 ) set(MSVC_PREFIX "vc120") - elseif( MSVC14 ) + elseif( MSVC_VERSION LESS 1910) set(MSVC_PREFIX "vc140") + elseif( MSVC_VERSION LESS 1920) + set(MSVC_PREFIX "vc141") + elseif( MSVC_VERSION LESS 1930) + set(MSVC_PREFIX "vc142") else() set(MSVC_PREFIX "vc150") endif() From d24b6e220b4251caf565d1da5447a09043ce56a5 Mon Sep 17 00:00:00 2001 From: PK Date: Tue, 11 Jun 2019 15:24:39 +0200 Subject: [PATCH 09/24] toolset changes in debug cmake template --- assimpTargets-debug.cmake.in | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/assimpTargets-debug.cmake.in b/assimpTargets-debug.cmake.in index 6ee6b2886..1ebe2a608 100644 --- a/assimpTargets-debug.cmake.in +++ b/assimpTargets-debug.cmake.in @@ -23,8 +23,12 @@ if(MSVC) set(MSVC_PREFIX "vc110") elseif( MSVC12 ) set(MSVC_PREFIX "vc120") - elseif( MSVC14 ) + elseif( MSVC_VERSION LESS 1910) set(MSVC_PREFIX "vc140") + elseif( MSVC_VERSION LESS 1920) + set(MSVC_PREFIX "vc141") + elseif( MSVC_VERSION LESS 1930) + set(MSVC_PREFIX "vc142") else() set(MSVC_PREFIX "vc150") endif() From cc109679138527ba79300dab54b197defe080467 Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Tue, 11 Jun 2019 20:17:50 +0200 Subject: [PATCH 10/24] Fix the build. --- code/CMakeLists.txt | 1 + test/models/PLY/cube_test.ply | 2 +- test/unit/utBatchLoader.cpp | 2 +- test/unit/utBlenderIntermediate.cpp | 10 +++++----- test/unit/utD3MFImportExport.cpp | 2 +- test/unit/utFindDegenerates.cpp | 3 +-- test/unit/utFindInvalidData.cpp | 8 +++----- test/unit/utGenNormals.cpp | 3 ++- test/unit/utJoinVertices.cpp | 5 ++--- test/unit/utLimitBoneWeights.cpp | 2 +- test/unit/utMaterialSystem.cpp | 5 ++--- test/unit/utObjTools.cpp | 4 ++-- test/unit/utPMXImporter.cpp | 2 +- test/unit/utPretransformVertices.cpp | 2 +- test/unit/utRemoveComponent.cpp | 10 +++------- test/unit/utRemoveRedundantMaterials.cpp | 11 +++-------- test/unit/utRemoveVCProcess.cpp | 3 ++- test/unit/utSIBImporter.cpp | 4 +++- test/unit/utSMDImportExport.cpp | 2 +- test/unit/utScaleProcess.cpp | 2 +- test/unit/utScenePreprocessor.cpp | 2 +- test/unit/utSharedPPData.cpp | 7 ++----- test/unit/utSimd.cpp | 2 +- test/unit/utSortByPType.cpp | 12 ++++-------- test/unit/utSplitLargeMeshes.cpp | 7 ++----- test/unit/utTriangulate.cpp | 3 ++- test/unit/utVertexTriangleAdjacency.cpp | 11 ++++------- tools/assimp_cmd/CompareDump.cpp | 4 ++-- tools/assimp_cmd/WriteDumb.cpp | 4 ++-- tools/assimp_view/Normals.cpp | 10 +++++----- tools/assimp_view/assimp_view.h | 5 ++--- 31 files changed, 64 insertions(+), 86 deletions(-) diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt index e482807c7..e81e06233 100644 --- a/code/CMakeLists.txt +++ b/code/CMakeLists.txt @@ -990,6 +990,7 @@ MESSAGE(STATUS "Disabled exporter formats:${ASSIMP_EXPORTERS_DISABLED}") SET( assimp_src # Assimp Files ${Core_SRCS} + ${CApi_SRCS} ${Common_SRCS} ${Logging_SRCS} ${Exporter_SRCS} diff --git a/test/models/PLY/cube_test.ply b/test/models/PLY/cube_test.ply index a86d022a5..068514afe 100644 --- a/test/models/PLY/cube_test.ply +++ b/test/models/PLY/cube_test.ply @@ -1,6 +1,6 @@ ply format ascii 1.0 -comment Created by Open Asset Import Library - http://assimp.sf.net (v4.1.3297435427) +comment Created by Open Asset Import Library - http://assimp.sf.net (v4.1.4151146389) element vertex 8 property float x property float y diff --git a/test/unit/utBatchLoader.cpp b/test/unit/utBatchLoader.cpp index d38f83b35..36dcbf288 100644 --- a/test/unit/utBatchLoader.cpp +++ b/test/unit/utBatchLoader.cpp @@ -41,7 +41,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --------------------------------------------------------------------------- */ #include "UnitTestPCH.h" -#include "Importer.h" +#include "Common/Importer.h" #include "TestIOSystem.h" using namespace ::Assimp; diff --git a/test/unit/utBlenderIntermediate.cpp b/test/unit/utBlenderIntermediate.cpp index c1b53bbfd..30f29017d 100644 --- a/test/unit/utBlenderIntermediate.cpp +++ b/test/unit/utBlenderIntermediate.cpp @@ -41,11 +41,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --------------------------------------------------------------------------- */ #include "UnitTestPCH.h" -#include "BlenderIntermediate.h" -#include "./../include/assimp/camera.h" -#include "./../include/assimp/light.h" -#include "./../include/assimp/mesh.h" -#include "./../include/assimp/texture.h" +#include "Blender/BlenderIntermediate.h" +#include +#include +#include +#include using namespace ::Assimp; using namespace ::Assimp::Blender; diff --git a/test/unit/utD3MFImportExport.cpp b/test/unit/utD3MFImportExport.cpp index 9d97f0f19..c9b17d898 100644 --- a/test/unit/utD3MFImportExport.cpp +++ b/test/unit/utD3MFImportExport.cpp @@ -48,7 +48,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include -#include "D3MFExporter.h" +#include "3MF/D3MFExporter.h" class utD3MFImporterExporter : public AbstractImportExportBase { public: diff --git a/test/unit/utFindDegenerates.cpp b/test/unit/utFindDegenerates.cpp index d6ef803fa..ea539df27 100644 --- a/test/unit/utFindDegenerates.cpp +++ b/test/unit/utFindDegenerates.cpp @@ -42,8 +42,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "UnitTestPCH.h" -#include - +#include "PostProcessing/FindDegenerates.h" using namespace std; using namespace Assimp; diff --git a/test/unit/utFindInvalidData.cpp b/test/unit/utFindInvalidData.cpp index 953c6728c..5b874a2a4 100644 --- a/test/unit/utFindInvalidData.cpp +++ b/test/unit/utFindInvalidData.cpp @@ -42,9 +42,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "UnitTestPCH.h" -#include -#include "../../include/assimp/mesh.h" - +#include "PostProcessing/FindInvalidDataProcess.h" +#include using namespace std; using namespace Assimp; @@ -61,8 +60,7 @@ protected: }; // ------------------------------------------------------------------------------------------------ -void FindInvalidDataProcessTest::SetUp() -{ +void FindInvalidDataProcessTest::SetUp() { ASSERT_TRUE( AI_MAX_NUMBER_OF_TEXTURECOORDS >= 3); piProcess = new FindInvalidDataProcess(); diff --git a/test/unit/utGenNormals.cpp b/test/unit/utGenNormals.cpp index 65ab7c833..36f0b18bc 100644 --- a/test/unit/utGenNormals.cpp +++ b/test/unit/utGenNormals.cpp @@ -41,7 +41,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --------------------------------------------------------------------------- */ #include "UnitTestPCH.h" -#include + +#include "PostProcessing/GenVertexNormalsProcess.h" using namespace ::std; using namespace ::Assimp; diff --git a/test/unit/utJoinVertices.cpp b/test/unit/utJoinVertices.cpp index 067c0558c..6b832b73d 100644 --- a/test/unit/utJoinVertices.cpp +++ b/test/unit/utJoinVertices.cpp @@ -43,14 +43,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" #include -#include +#include "PostProcessing/JoinVerticesProcess.h" using namespace std; using namespace Assimp; -class JoinVerticesTest : public ::testing::Test -{ +class JoinVerticesTest : public ::testing::Test { public: virtual void SetUp(); virtual void TearDown(); diff --git a/test/unit/utLimitBoneWeights.cpp b/test/unit/utLimitBoneWeights.cpp index 48da66df0..5172976b4 100644 --- a/test/unit/utLimitBoneWeights.cpp +++ b/test/unit/utLimitBoneWeights.cpp @@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" #include -#include +#include "PostProcessing/LimitBoneWeightsProcess.h" using namespace std; using namespace Assimp; diff --git a/test/unit/utMaterialSystem.cpp b/test/unit/utMaterialSystem.cpp index c2a9b520b..701b933e7 100644 --- a/test/unit/utMaterialSystem.cpp +++ b/test/unit/utMaterialSystem.cpp @@ -43,13 +43,12 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" #include -#include +#include "Material/MaterialSystem.h" using namespace ::std; using namespace ::Assimp; -class MaterialSystemTest : public ::testing::Test -{ +class MaterialSystemTest : public ::testing::Test { public: virtual void SetUp() { this->pcMat = new aiMaterial(); } virtual void TearDown() { delete this->pcMat; } diff --git a/test/unit/utObjTools.cpp b/test/unit/utObjTools.cpp index e08b5de79..2de45d962 100644 --- a/test/unit/utObjTools.cpp +++ b/test/unit/utObjTools.cpp @@ -41,8 +41,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --------------------------------------------------------------------------- */ #include "UnitTestPCH.h" -#include "ObjTools.h" -#include "ObjFileParser.h" +#include "Obj/ObjTools.h" +#include "Obj/ObjFileParser.h" using namespace ::Assimp; diff --git a/test/unit/utPMXImporter.cpp b/test/unit/utPMXImporter.cpp index 3a1ce1f6a..62d3b0707 100644 --- a/test/unit/utPMXImporter.cpp +++ b/test/unit/utPMXImporter.cpp @@ -42,7 +42,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" #include "SceneDiffer.h" #include "AbstractImportExportBase.h" -#include "MMDImporter.h" +#include "MMD/MMDImporter.h" #include diff --git a/test/unit/utPretransformVertices.cpp b/test/unit/utPretransformVertices.cpp index 0bf6245c6..22d1b28b4 100644 --- a/test/unit/utPretransformVertices.cpp +++ b/test/unit/utPretransformVertices.cpp @@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" #include -#include +#include "PostProcessing/PretransformVertices.h" using namespace std; diff --git a/test/unit/utRemoveComponent.cpp b/test/unit/utRemoveComponent.cpp index 1b13989dd..a1ae7ef47 100644 --- a/test/unit/utRemoveComponent.cpp +++ b/test/unit/utRemoveComponent.cpp @@ -43,22 +43,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" #include -#include -#include - +#include "PostProcessing/RemoveVCProcess.h" +#include "Material/MaterialSystem.h" using namespace std; using namespace Assimp; -class RemoveVCProcessTest : public ::testing::Test -{ +class RemoveVCProcessTest : public ::testing::Test { public: - virtual void SetUp(); virtual void TearDown(); protected: - RemoveVCProcess* piProcess; aiScene* pScene; }; diff --git a/test/unit/utRemoveRedundantMaterials.cpp b/test/unit/utRemoveRedundantMaterials.cpp index c3497595b..7810afbef 100644 --- a/test/unit/utRemoveRedundantMaterials.cpp +++ b/test/unit/utRemoveRedundantMaterials.cpp @@ -43,24 +43,19 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" #include -#include -#include - +#include "PostProcessing/RemoveRedundantMaterials.h" +#include "Material/MaterialSystem.h" using namespace std; using namespace Assimp; -class RemoveRedundantMatsTest : public ::testing::Test -{ +class RemoveRedundantMatsTest : public ::testing::Test { public: - virtual void SetUp(); virtual void TearDown(); protected: - RemoveRedundantMatsProcess* piProcess; - aiScene* pcScene1; }; diff --git a/test/unit/utRemoveVCProcess.cpp b/test/unit/utRemoveVCProcess.cpp index 1eedf9842..8db5941d0 100644 --- a/test/unit/utRemoveVCProcess.cpp +++ b/test/unit/utRemoveVCProcess.cpp @@ -41,7 +41,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --------------------------------------------------------------------------- */ #include "UnitTestPCH.h" -#include "code/RemoveVCProcess.h" +#include "PostProcessing/RemoveVCProcess.h" + #include #include diff --git a/test/unit/utSIBImporter.cpp b/test/unit/utSIBImporter.cpp index 4d6a09783..582baef64 100644 --- a/test/unit/utSIBImporter.cpp +++ b/test/unit/utSIBImporter.cpp @@ -42,9 +42,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "UnitTestPCH.h" -#include "SIBImporter.h" +#include "SIB/SIBImporter.h" + #include #include + #include "AbstractImportExportBase.h" using namespace ::Assimp; diff --git a/test/unit/utSMDImportExport.cpp b/test/unit/utSMDImportExport.cpp index 500277099..dae490508 100644 --- a/test/unit/utSMDImportExport.cpp +++ b/test/unit/utSMDImportExport.cpp @@ -42,7 +42,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "UnitTestPCH.h" -#include "SMDLoader.h" +#include "SMD/SMDLoader.h" #include #include #include "AbstractImportExportBase.h" diff --git a/test/unit/utScaleProcess.cpp b/test/unit/utScaleProcess.cpp index 13a184249..fe87daa8d 100644 --- a/test/unit/utScaleProcess.cpp +++ b/test/unit/utScaleProcess.cpp @@ -41,7 +41,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. --------------------------------------------------------------------------- */ #include "UnitTestPCH.h" -#include "ScaleProcess.h" +#include "PostProcessing/ScaleProcess.h" #include "TestModelFactory.h" namespace Assimp { diff --git a/test/unit/utScenePreprocessor.cpp b/test/unit/utScenePreprocessor.cpp index 5e1af334c..2c181a90f 100644 --- a/test/unit/utScenePreprocessor.cpp +++ b/test/unit/utScenePreprocessor.cpp @@ -45,7 +45,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include #include -#include +#include "Common/ScenePreprocessor.h" using namespace std; using namespace Assimp; diff --git a/test/unit/utSharedPPData.cpp b/test/unit/utSharedPPData.cpp index 380235c58..53008a27a 100644 --- a/test/unit/utSharedPPData.cpp +++ b/test/unit/utSharedPPData.cpp @@ -43,21 +43,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" #include -#include +#include "Common/BaseProcess.h" using namespace std; using namespace Assimp; -class SharedPPDataTest : public ::testing::Test -{ +class SharedPPDataTest : public ::testing::Test { public: - virtual void SetUp(); virtual void TearDown(); protected: - SharedPostProcessInfo* shared; }; diff --git a/test/unit/utSimd.cpp b/test/unit/utSimd.cpp index e7779a0ee..d6bd9fe90 100644 --- a/test/unit/utSimd.cpp +++ b/test/unit/utSimd.cpp @@ -41,7 +41,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" -#include "simd.h" +#include "Common/simd.h" using namespace ::Assimp; diff --git a/test/unit/utSortByPType.cpp b/test/unit/utSortByPType.cpp index 4d9240c93..1aa9dad0a 100644 --- a/test/unit/utSortByPType.cpp +++ b/test/unit/utSortByPType.cpp @@ -43,29 +43,25 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" #include -#include -#include +#include "Common/ScenePreprocessor.h" +#include "PostProcessing/SortByPTypeProcess.h" using namespace std; using namespace Assimp; -class SortByPTypeProcessTest : public ::testing::Test -{ +class SortByPTypeProcessTest : public ::testing::Test { public: - virtual void SetUp(); virtual void TearDown(); protected: - SortByPTypeProcess* process1; aiScene* scene; }; // ------------------------------------------------------------------------------------------------ -static unsigned int num[10][4] = - { +static unsigned int num[10][4] = { {0,0,0,1000}, {0,0,1000,0}, {0,1000,0,0}, diff --git a/test/unit/utSplitLargeMeshes.cpp b/test/unit/utSplitLargeMeshes.cpp index fced5df4b..fb3f2a037 100644 --- a/test/unit/utSplitLargeMeshes.cpp +++ b/test/unit/utSplitLargeMeshes.cpp @@ -43,16 +43,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" #include -#include - +#include "PostProcessing/SplitLargeMeshes.h" using namespace std; using namespace Assimp; -class SplitLargeMeshesTest : public ::testing::Test -{ +class SplitLargeMeshesTest : public ::testing::Test { public: - virtual void SetUp(); virtual void TearDown(); diff --git a/test/unit/utTriangulate.cpp b/test/unit/utTriangulate.cpp index 8c42000cd..c65e24a95 100644 --- a/test/unit/utTriangulate.cpp +++ b/test/unit/utTriangulate.cpp @@ -43,7 +43,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "UnitTestPCH.h" #include -#include + +#include "PostProcessing/TriangulateProcess.h" using namespace std; diff --git a/test/unit/utVertexTriangleAdjacency.cpp b/test/unit/utVertexTriangleAdjacency.cpp index f15b0d21f..e48d3521e 100644 --- a/test/unit/utVertexTriangleAdjacency.cpp +++ b/test/unit/utVertexTriangleAdjacency.cpp @@ -42,19 +42,16 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "UnitTestPCH.h" -#include "assimp/types.h" -#include "assimp/mesh.h" - -#include +#include +#include +#include "Common/VertexTriangleAdjacency.h" using namespace std; using namespace Assimp; -class VTAdjacencyTest : public ::testing::Test -{ +class VTAdjacencyTest : public ::testing::Test { protected: - void checkMesh(const aiMesh& mesh); }; diff --git a/tools/assimp_cmd/CompareDump.cpp b/tools/assimp_cmd/CompareDump.cpp index 0ea0893f9..db7e3aada 100644 --- a/tools/assimp_cmd/CompareDump.cpp +++ b/tools/assimp_cmd/CompareDump.cpp @@ -53,7 +53,7 @@ const char* AICMD_MSG_CMPDUMP_HELP = "\tCompare two short dumps produced with \'assimp dump <..> -s\' for equality.\n" ; -#include "../../code/assbin_chunks.h" +#include "Common/assbin_chunks.h" //////////////////////////////////////////////////////////////////////////////////////////////////// #include "generic_inserter.hpp" @@ -62,7 +62,7 @@ const char* AICMD_MSG_CMPDUMP_HELP = #include #include #include -#include "../../include/assimp/ai_assert.h" +#include // get << for aiString template diff --git a/tools/assimp_cmd/WriteDumb.cpp b/tools/assimp_cmd/WriteDumb.cpp index 0d6f58c60..559bf08c6 100644 --- a/tools/assimp_cmd/WriteDumb.cpp +++ b/tools/assimp_cmd/WriteDumb.cpp @@ -46,7 +46,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "Main.h" -#include "../code/ProcessHelper.h" +#include "PostProcessing/ProcessHelper.h" const char* AICMD_MSG_DUMP_HELP = "assimp dump [] [-b] [-s] [-z] [common parameters]\n" @@ -59,7 +59,7 @@ const char* AICMD_MSG_DUMP_HELP = "\t -cfull Fires almost all post processing steps \n" ; -#include "../../code/assbin_chunks.h" +#include "Common/assbin_chunks.h" FILE* out = NULL; bool shortened = false; diff --git a/tools/assimp_view/Normals.cpp b/tools/assimp_view/Normals.cpp index 4ce706c6a..0ebd3dd5b 100644 --- a/tools/assimp_view/Normals.cpp +++ b/tools/assimp_view/Normals.cpp @@ -41,11 +41,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "assimp_view.h" -#include "GenFaceNormalsProcess.h" -#include "GenVertexNormalsProcess.h" -#include "JoinVerticesProcess.h" -#include "CalcTangentsProcess.h" -#include "MakeVerboseFormat.h" +#include "PostProcessing/GenFaceNormalsProcess.h" +#include "PostProcessing/GenVertexNormalsProcess.h" +#include "PostProcessing/JoinVerticesProcess.h" +#include "PostProcessing/CalcTangentsProcess.h" +#include "PostProcessing/MakeVerboseFormat.h" namespace AssimpView { diff --git a/tools/assimp_view/assimp_view.h b/tools/assimp_view/assimp_view.h index bed4c64c3..a32a62d04 100644 --- a/tools/assimp_view/assimp_view.h +++ b/tools/assimp_view/assimp_view.h @@ -72,9 +72,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include - -#include "../../code/MaterialSystem.h" // aiMaterial class -#include // ASSIMP_stricmp and ASSIMP_strincmp +#include "Material/MaterialSystem.h" // aiMaterial class +#include // ASSIMP_stricmp and ASSIMP_strincmp #include From a6e3fc3fd9a0dfbd1bc087c3f600c3cff86d61c6 Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Tue, 11 Jun 2019 20:54:01 +0200 Subject: [PATCH 11/24] Fix case-sensitive folder name for unix platforms. --- code/CMakeLists.txt | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt index e81e06233..b4a22e7d7 100644 --- a/code/CMakeLists.txt +++ b/code/CMakeLists.txt @@ -377,17 +377,17 @@ ADD_ASSIMP_IMPORTER( HMP ) ADD_ASSIMP_IMPORTER( IRRMESH - IRR/IRRMeshLoader.cpp - IRR/IRRMeshLoader.h - IRR/IRRShared.cpp - IRR/IRRShared.h + Irr/IRRMeshLoader.cpp + Irr/IRRMeshLoader.h + Irr/IRRShared.cpp + Irr/IRRShared.h ) ADD_ASSIMP_IMPORTER( IRR - IRR/IRRLoader.cpp - IRR/IRRLoader.h - IRR/IRRShared.cpp - IRR/IRRShared.h + Irr/IRRLoader.cpp + Irr/IRRLoader.h + Irr/IRRShared.cpp + Irr/IRRShared.h ) ADD_ASSIMP_IMPORTER( LWO From 4dcb3c9235458fd01b050a2a2f87967bbf3771a4 Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Tue, 11 Jun 2019 21:55:21 +0200 Subject: [PATCH 12/24] Update ImporterRegistry.cpp fix case-sensiive folder bug. --- code/Common/ImporterRegistry.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/Common/ImporterRegistry.cpp b/code/Common/ImporterRegistry.cpp index 92f055850..abcaf9130 100644 --- a/code/Common/ImporterRegistry.cpp +++ b/code/Common/ImporterRegistry.cpp @@ -122,10 +122,10 @@ corresponding preprocessor flag to selectively disable formats. # include "BVH/BVHLoader.h" #endif #ifndef ASSIMP_BUILD_NO_IRRMESH_IMPORTER -# include "IRR/IRRMeshLoader.h" +# include "Irr/IRRMeshLoader.h" #endif #ifndef ASSIMP_BUILD_NO_IRR_IMPORTER -# include "IRR/IRRLoader.h" +# include "Irr/IRRLoader.h" #endif #ifndef ASSIMP_BUILD_NO_Q3D_IMPORTER # include "Q3D/Q3DLoader.h" From e914b9531bc0832d62e2dbf1560f3bab0e3dcda6 Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Wed, 12 Jun 2019 00:55:06 +0200 Subject: [PATCH 13/24] Update IRRLoader.h fix case-sensity typo. --- code/Irr/IRRLoader.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/Irr/IRRLoader.h b/code/Irr/IRRLoader.h index 1eecb71ed..b3ad81a7d 100644 --- a/code/Irr/IRRLoader.h +++ b/code/Irr/IRRLoader.h @@ -48,7 +48,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_IRRLOADER_H_INCLUDED #define AI_IRRLOADER_H_INCLUDED -#include "IRR/IRRShared.h" +#include "Irr/IRRShared.h" #include "Common/Importer.h" #include From 66f693a6a48895320db0d4221715df255f132b39 Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Wed, 12 Jun 2019 10:25:11 +0200 Subject: [PATCH 14/24] Update IRRLoader.cpp fix case-sensitive typo. --- code/Irr/IRRLoader.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/Irr/IRRLoader.cpp b/code/Irr/IRRLoader.cpp index 728276ec6..e94fd85a4 100644 --- a/code/Irr/IRRLoader.cpp +++ b/code/Irr/IRRLoader.cpp @@ -49,7 +49,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef ASSIMP_BUILD_NO_IRR_IMPORTER -#include "IRR/IRRLoader.h" +#include "Irr/IRRLoader.h" #include "Common/Importer.h" #include From fc06de82c6f9035ad3f01aec80ad41a55bb8914b Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Wed, 12 Jun 2019 20:44:02 +0200 Subject: [PATCH 15/24] Update Readme.md Add more detailed information about the source code structure --- Readme.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Readme.md b/Readme.md index 51d394236..52a195a64 100644 --- a/Readme.md +++ b/Readme.md @@ -136,7 +136,7 @@ Take a look into the https://github.com/assimp/assimp/blob/master/Build.md file. [open3mod](https://github.com/acgessler/open3mod) is a powerful 3D model viewer based on Assimp's import and export abilities. #### Repository structure #### -Open Asset Import Library is implemented in C++. The directory structure is: +Open Asset Import Library is implemented in C++. The directory structure looks like: /code Source code /contrib Third-party libraries @@ -149,6 +149,11 @@ Open Asset Import Library is implemented in C++. The directory structure is: /samples A small number of samples to illustrate possible use cases for Assimp +The source code is organized in the following way: + + code/Common The base implementation for importers and the infrastructure + code/PostProcessing The post-processing steps + code/ Implementation for import and export for the format ### Where to get help ### For more information, visit [our website](http://assimp.org/). Or check out the `./doc`- folder, which contains the official documentation in HTML format. From 0021c93892bfafbe555fa7b74792060b61fd1006 Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Wed, 12 Jun 2019 22:12:38 +0200 Subject: [PATCH 16/24] closes https://github.com/assimp/assimp/issues/2431: use irrXml directly for mingw compiler. --- code/Material/MaterialSystem.cpp | 12 +++++++----- test/models/PLY/cube_test.ply | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/code/Material/MaterialSystem.cpp b/code/Material/MaterialSystem.cpp index 03d5a18a3..d0b39093b 100644 --- a/code/Material/MaterialSystem.cpp +++ b/code/Material/MaterialSystem.cpp @@ -96,12 +96,12 @@ aiReturn aiGetMaterialFloatArray(const aiMaterial* pMat, ai_real* pOut, unsigned int* pMax) { - ai_assert( pOut != NULL ); - ai_assert( pMat != NULL ); + ai_assert( pOut != nullptr ); + ai_assert( pMat != nullptr ); const aiMaterialProperty* prop; aiGetMaterialProperty(pMat,pKey,type,index, (const aiMaterialProperty**) &prop); - if (!prop) { + if ( nullptr == prop) { return AI_FAILURE; } @@ -112,9 +112,11 @@ aiReturn aiGetMaterialFloatArray(const aiMaterial* pMat, if (pMax) { iWrite = std::min(*pMax,iWrite); ; } - for (unsigned int a = 0; a < iWrite;++a) { - pOut[a] = static_cast ( reinterpret_cast(prop->mData)[a] ); + + for (unsigned int a = 0; a < iWrite; ++a) { + pOut[ a ] = static_cast ( reinterpret_cast(prop->mData)[a] ); } + if (pMax) { *pMax = iWrite; } diff --git a/test/models/PLY/cube_test.ply b/test/models/PLY/cube_test.ply index 068514afe..bb0839286 100644 --- a/test/models/PLY/cube_test.ply +++ b/test/models/PLY/cube_test.ply @@ -1,6 +1,6 @@ ply format ascii 1.0 -comment Created by Open Asset Import Library - http://assimp.sf.net (v4.1.4151146389) +comment Created by Open Asset Import Library - http://assimp.sf.net (v4.1.2760932948) element vertex 8 property float x property float y From 34fa64faf98a8818cf4a4c40d10bc41a11004260 Mon Sep 17 00:00:00 2001 From: Rahul Sheth Date: Wed, 22 May 2019 15:35:39 -0400 Subject: [PATCH 17/24] Add HunterGate --- cmake/HunterGate.cmake | 540 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 540 insertions(+) create mode 100644 cmake/HunterGate.cmake diff --git a/cmake/HunterGate.cmake b/cmake/HunterGate.cmake new file mode 100644 index 000000000..887557a58 --- /dev/null +++ b/cmake/HunterGate.cmake @@ -0,0 +1,540 @@ +# Copyright (c) 2013-2018, Ruslan Baratov +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are met: +# +# * Redistributions of source code must retain the above copyright notice, this +# list of conditions and the following disclaimer. +# +# * Redistributions in binary form must reproduce the above copyright notice, +# this list of conditions and the following disclaimer in the documentation +# and/or other materials provided with the distribution. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +# DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +# This is a gate file to Hunter package manager. +# Include this file using `include` command and add package you need, example: +# +# cmake_minimum_required(VERSION 3.2) +# +# include("cmake/HunterGate.cmake") +# HunterGate( +# URL "https://github.com/path/to/hunter/archive.tar.gz" +# SHA1 "798501e983f14b28b10cda16afa4de69eee1da1d" +# ) +# +# project(MyProject) +# +# hunter_add_package(Foo) +# hunter_add_package(Boo COMPONENTS Bar Baz) +# +# Projects: +# * https://github.com/hunter-packages/gate/ +# * https://github.com/ruslo/hunter + +option(HUNTER_ENABLED "Enable Hunter package manager support" ON) + +if(HUNTER_ENABLED) + if(CMAKE_VERSION VERSION_LESS "3.2") + message( + FATAL_ERROR + "At least CMake version 3.2 required for Hunter dependency management." + " Update CMake or set HUNTER_ENABLED to OFF." + ) + endif() +endif() + +include(CMakeParseArguments) # cmake_parse_arguments + +option(HUNTER_STATUS_PRINT "Print working status" ON) +option(HUNTER_STATUS_DEBUG "Print a lot info" OFF) +option(HUNTER_TLS_VERIFY "Enable/disable TLS certificate checking on downloads" ON) + +set(HUNTER_WIKI "https://github.com/ruslo/hunter/wiki") + +function(hunter_gate_status_print) + if(HUNTER_STATUS_PRINT OR HUNTER_STATUS_DEBUG) + foreach(print_message ${ARGV}) + message(STATUS "[hunter] ${print_message}") + endforeach() + endif() +endfunction() + +function(hunter_gate_status_debug) + if(HUNTER_STATUS_DEBUG) + foreach(print_message ${ARGV}) + string(TIMESTAMP timestamp) + message(STATUS "[hunter *** DEBUG *** ${timestamp}] ${print_message}") + endforeach() + endif() +endfunction() + +function(hunter_gate_wiki wiki_page) + message("------------------------------ WIKI -------------------------------") + message(" ${HUNTER_WIKI}/${wiki_page}") + message("-------------------------------------------------------------------") + message("") + message(FATAL_ERROR "") +endfunction() + +function(hunter_gate_internal_error) + message("") + foreach(print_message ${ARGV}) + message("[hunter ** INTERNAL **] ${print_message}") + endforeach() + message("[hunter ** INTERNAL **] [Directory:${CMAKE_CURRENT_LIST_DIR}]") + message("") + hunter_gate_wiki("error.internal") +endfunction() + +function(hunter_gate_fatal_error) + cmake_parse_arguments(hunter "" "WIKI" "" "${ARGV}") + string(COMPARE EQUAL "${hunter_WIKI}" "" have_no_wiki) + if(have_no_wiki) + hunter_gate_internal_error("Expected wiki") + endif() + message("") + foreach(x ${hunter_UNPARSED_ARGUMENTS}) + message("[hunter ** FATAL ERROR **] ${x}") + endforeach() + message("[hunter ** FATAL ERROR **] [Directory:${CMAKE_CURRENT_LIST_DIR}]") + message("") + hunter_gate_wiki("${hunter_WIKI}") +endfunction() + +function(hunter_gate_user_error) + hunter_gate_fatal_error(${ARGV} WIKI "error.incorrect.input.data") +endfunction() + +function(hunter_gate_self root version sha1 result) + string(COMPARE EQUAL "${root}" "" is_bad) + if(is_bad) + hunter_gate_internal_error("root is empty") + endif() + + string(COMPARE EQUAL "${version}" "" is_bad) + if(is_bad) + hunter_gate_internal_error("version is empty") + endif() + + string(COMPARE EQUAL "${sha1}" "" is_bad) + if(is_bad) + hunter_gate_internal_error("sha1 is empty") + endif() + + string(SUBSTRING "${sha1}" 0 7 archive_id) + + if(EXISTS "${root}/cmake/Hunter") + set(hunter_self "${root}") + else() + set( + hunter_self + "${root}/_Base/Download/Hunter/${version}/${archive_id}/Unpacked" + ) + endif() + + set("${result}" "${hunter_self}" PARENT_SCOPE) +endfunction() + +# Set HUNTER_GATE_ROOT cmake variable to suitable value. +function(hunter_gate_detect_root) + # Check CMake variable + string(COMPARE NOTEQUAL "${HUNTER_ROOT}" "" not_empty) + if(not_empty) + set(HUNTER_GATE_ROOT "${HUNTER_ROOT}" PARENT_SCOPE) + hunter_gate_status_debug("HUNTER_ROOT detected by cmake variable") + return() + endif() + + # Check environment variable + string(COMPARE NOTEQUAL "$ENV{HUNTER_ROOT}" "" not_empty) + if(not_empty) + set(HUNTER_GATE_ROOT "$ENV{HUNTER_ROOT}" PARENT_SCOPE) + hunter_gate_status_debug("HUNTER_ROOT detected by environment variable") + return() + endif() + + # Check HOME environment variable + string(COMPARE NOTEQUAL "$ENV{HOME}" "" result) + if(result) + set(HUNTER_GATE_ROOT "$ENV{HOME}/.hunter" PARENT_SCOPE) + hunter_gate_status_debug("HUNTER_ROOT set using HOME environment variable") + return() + endif() + + # Check SYSTEMDRIVE and USERPROFILE environment variable (windows only) + if(WIN32) + string(COMPARE NOTEQUAL "$ENV{SYSTEMDRIVE}" "" result) + if(result) + set(HUNTER_GATE_ROOT "$ENV{SYSTEMDRIVE}/.hunter" PARENT_SCOPE) + hunter_gate_status_debug( + "HUNTER_ROOT set using SYSTEMDRIVE environment variable" + ) + return() + endif() + + string(COMPARE NOTEQUAL "$ENV{USERPROFILE}" "" result) + if(result) + set(HUNTER_GATE_ROOT "$ENV{USERPROFILE}/.hunter" PARENT_SCOPE) + hunter_gate_status_debug( + "HUNTER_ROOT set using USERPROFILE environment variable" + ) + return() + endif() + endif() + + hunter_gate_fatal_error( + "Can't detect HUNTER_ROOT" + WIKI "error.detect.hunter.root" + ) +endfunction() + +function(hunter_gate_download dir) + string( + COMPARE + NOTEQUAL + "$ENV{HUNTER_DISABLE_AUTOINSTALL}" + "" + disable_autoinstall + ) + if(disable_autoinstall AND NOT HUNTER_RUN_INSTALL) + hunter_gate_fatal_error( + "Hunter not found in '${dir}'" + "Set HUNTER_RUN_INSTALL=ON to auto-install it from '${HUNTER_GATE_URL}'" + "Settings:" + " HUNTER_ROOT: ${HUNTER_GATE_ROOT}" + " HUNTER_SHA1: ${HUNTER_GATE_SHA1}" + WIKI "error.run.install" + ) + endif() + string(COMPARE EQUAL "${dir}" "" is_bad) + if(is_bad) + hunter_gate_internal_error("Empty 'dir' argument") + endif() + + string(COMPARE EQUAL "${HUNTER_GATE_SHA1}" "" is_bad) + if(is_bad) + hunter_gate_internal_error("HUNTER_GATE_SHA1 empty") + endif() + + string(COMPARE EQUAL "${HUNTER_GATE_URL}" "" is_bad) + if(is_bad) + hunter_gate_internal_error("HUNTER_GATE_URL empty") + endif() + + set(done_location "${dir}/DONE") + set(sha1_location "${dir}/SHA1") + + set(build_dir "${dir}/Build") + set(cmakelists "${dir}/CMakeLists.txt") + + hunter_gate_status_debug("Locking directory: ${dir}") + file(LOCK "${dir}" DIRECTORY GUARD FUNCTION) + hunter_gate_status_debug("Lock done") + + if(EXISTS "${done_location}") + # while waiting for lock other instance can do all the job + hunter_gate_status_debug("File '${done_location}' found, skip install") + return() + endif() + + file(REMOVE_RECURSE "${build_dir}") + file(REMOVE_RECURSE "${cmakelists}") + + file(MAKE_DIRECTORY "${build_dir}") # check directory permissions + + # Disabling languages speeds up a little bit, reduces noise in the output + # and avoids path too long windows error + file( + WRITE + "${cmakelists}" + "cmake_minimum_required(VERSION 3.2)\n" + "project(HunterDownload LANGUAGES NONE)\n" + "include(ExternalProject)\n" + "ExternalProject_Add(\n" + " Hunter\n" + " URL\n" + " \"${HUNTER_GATE_URL}\"\n" + " URL_HASH\n" + " SHA1=${HUNTER_GATE_SHA1}\n" + " DOWNLOAD_DIR\n" + " \"${dir}\"\n" + " TLS_VERIFY\n" + " ${HUNTER_TLS_VERIFY}\n" + " SOURCE_DIR\n" + " \"${dir}/Unpacked\"\n" + " CONFIGURE_COMMAND\n" + " \"\"\n" + " BUILD_COMMAND\n" + " \"\"\n" + " INSTALL_COMMAND\n" + " \"\"\n" + ")\n" + ) + + if(HUNTER_STATUS_DEBUG) + set(logging_params "") + else() + set(logging_params OUTPUT_QUIET) + endif() + + hunter_gate_status_debug("Run generate") + + # Need to add toolchain file too. + # Otherwise on Visual Studio + MDD this will fail with error: + # "Could not find an appropriate version of the Windows 10 SDK installed on this machine" + if(EXISTS "${CMAKE_TOOLCHAIN_FILE}") + get_filename_component(absolute_CMAKE_TOOLCHAIN_FILE "${CMAKE_TOOLCHAIN_FILE}" ABSOLUTE) + set(toolchain_arg "-DCMAKE_TOOLCHAIN_FILE=${absolute_CMAKE_TOOLCHAIN_FILE}") + else() + # 'toolchain_arg' can't be empty + set(toolchain_arg "-DCMAKE_TOOLCHAIN_FILE=") + endif() + + string(COMPARE EQUAL "${CMAKE_MAKE_PROGRAM}" "" no_make) + if(no_make) + set(make_arg "") + else() + # Test case: remove Ninja from PATH but set it via CMAKE_MAKE_PROGRAM + set(make_arg "-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}") + endif() + + execute_process( + COMMAND + "${CMAKE_COMMAND}" + "-H${dir}" + "-B${build_dir}" + "-G${CMAKE_GENERATOR}" + "${toolchain_arg}" + ${make_arg} + WORKING_DIRECTORY "${dir}" + RESULT_VARIABLE download_result + ${logging_params} + ) + + if(NOT download_result EQUAL 0) + hunter_gate_internal_error( + "Configure project failed." + "To reproduce the error run: ${CMAKE_COMMAND} -H${dir} -B${build_dir} -G${CMAKE_GENERATOR} ${toolchain_arg} ${make_arg}" + "In directory ${dir}" + ) + endif() + + hunter_gate_status_print( + "Initializing Hunter workspace (${HUNTER_GATE_SHA1})" + " ${HUNTER_GATE_URL}" + " -> ${dir}" + ) + execute_process( + COMMAND "${CMAKE_COMMAND}" --build "${build_dir}" + WORKING_DIRECTORY "${dir}" + RESULT_VARIABLE download_result + ${logging_params} + ) + + if(NOT download_result EQUAL 0) + hunter_gate_internal_error("Build project failed") + endif() + + file(REMOVE_RECURSE "${build_dir}") + file(REMOVE_RECURSE "${cmakelists}") + + file(WRITE "${sha1_location}" "${HUNTER_GATE_SHA1}") + file(WRITE "${done_location}" "DONE") + + hunter_gate_status_debug("Finished") +endfunction() + +# Must be a macro so master file 'cmake/Hunter' can +# apply all variables easily just by 'include' command +# (otherwise PARENT_SCOPE magic needed) +macro(HunterGate) + if(HUNTER_GATE_DONE) + # variable HUNTER_GATE_DONE set explicitly for external project + # (see `hunter_download`) + set_property(GLOBAL PROPERTY HUNTER_GATE_DONE YES) + endif() + + # First HunterGate command will init Hunter, others will be ignored + get_property(_hunter_gate_done GLOBAL PROPERTY HUNTER_GATE_DONE SET) + + if(NOT HUNTER_ENABLED) + # Empty function to avoid error "unknown function" + function(hunter_add_package) + endfunction() + + set( + _hunter_gate_disabled_mode_dir + "${CMAKE_CURRENT_LIST_DIR}/cmake/Hunter/disabled-mode" + ) + if(EXISTS "${_hunter_gate_disabled_mode_dir}") + hunter_gate_status_debug( + "Adding \"disabled-mode\" modules: ${_hunter_gate_disabled_mode_dir}" + ) + list(APPEND CMAKE_PREFIX_PATH "${_hunter_gate_disabled_mode_dir}") + endif() + elseif(_hunter_gate_done) + hunter_gate_status_debug("Secondary HunterGate (use old settings)") + hunter_gate_self( + "${HUNTER_CACHED_ROOT}" + "${HUNTER_VERSION}" + "${HUNTER_SHA1}" + _hunter_self + ) + include("${_hunter_self}/cmake/Hunter") + else() + set(HUNTER_GATE_LOCATION "${CMAKE_CURRENT_SOURCE_DIR}") + + string(COMPARE NOTEQUAL "${PROJECT_NAME}" "" _have_project_name) + if(_have_project_name) + hunter_gate_fatal_error( + "Please set HunterGate *before* 'project' command. " + "Detected project: ${PROJECT_NAME}" + WIKI "error.huntergate.before.project" + ) + endif() + + cmake_parse_arguments( + HUNTER_GATE "LOCAL" "URL;SHA1;GLOBAL;FILEPATH" "" ${ARGV} + ) + + string(COMPARE EQUAL "${HUNTER_GATE_SHA1}" "" _empty_sha1) + string(COMPARE EQUAL "${HUNTER_GATE_URL}" "" _empty_url) + string( + COMPARE + NOTEQUAL + "${HUNTER_GATE_UNPARSED_ARGUMENTS}" + "" + _have_unparsed + ) + string(COMPARE NOTEQUAL "${HUNTER_GATE_GLOBAL}" "" _have_global) + string(COMPARE NOTEQUAL "${HUNTER_GATE_FILEPATH}" "" _have_filepath) + + if(_have_unparsed) + hunter_gate_user_error( + "HunterGate unparsed arguments: ${HUNTER_GATE_UNPARSED_ARGUMENTS}" + ) + endif() + if(_empty_sha1) + hunter_gate_user_error("SHA1 suboption of HunterGate is mandatory") + endif() + if(_empty_url) + hunter_gate_user_error("URL suboption of HunterGate is mandatory") + endif() + if(_have_global) + if(HUNTER_GATE_LOCAL) + hunter_gate_user_error("Unexpected LOCAL (already has GLOBAL)") + endif() + if(_have_filepath) + hunter_gate_user_error("Unexpected FILEPATH (already has GLOBAL)") + endif() + endif() + if(HUNTER_GATE_LOCAL) + if(_have_global) + hunter_gate_user_error("Unexpected GLOBAL (already has LOCAL)") + endif() + if(_have_filepath) + hunter_gate_user_error("Unexpected FILEPATH (already has LOCAL)") + endif() + endif() + if(_have_filepath) + if(_have_global) + hunter_gate_user_error("Unexpected GLOBAL (already has FILEPATH)") + endif() + if(HUNTER_GATE_LOCAL) + hunter_gate_user_error("Unexpected LOCAL (already has FILEPATH)") + endif() + endif() + + hunter_gate_detect_root() # set HUNTER_GATE_ROOT + + # Beautify path, fix probable problems with windows path slashes + get_filename_component( + HUNTER_GATE_ROOT "${HUNTER_GATE_ROOT}" ABSOLUTE + ) + hunter_gate_status_debug("HUNTER_ROOT: ${HUNTER_GATE_ROOT}") + if(NOT HUNTER_ALLOW_SPACES_IN_PATH) + string(FIND "${HUNTER_GATE_ROOT}" " " _contain_spaces) + if(NOT _contain_spaces EQUAL -1) + hunter_gate_fatal_error( + "HUNTER_ROOT (${HUNTER_GATE_ROOT}) contains spaces." + "Set HUNTER_ALLOW_SPACES_IN_PATH=ON to skip this error" + "(Use at your own risk!)" + WIKI "error.spaces.in.hunter.root" + ) + endif() + endif() + + string( + REGEX + MATCH + "[0-9]+\\.[0-9]+\\.[0-9]+[-_a-z0-9]*" + HUNTER_GATE_VERSION + "${HUNTER_GATE_URL}" + ) + string(COMPARE EQUAL "${HUNTER_GATE_VERSION}" "" _is_empty) + if(_is_empty) + set(HUNTER_GATE_VERSION "unknown") + endif() + + hunter_gate_self( + "${HUNTER_GATE_ROOT}" + "${HUNTER_GATE_VERSION}" + "${HUNTER_GATE_SHA1}" + _hunter_self + ) + + set(_master_location "${_hunter_self}/cmake/Hunter") + if(EXISTS "${HUNTER_GATE_ROOT}/cmake/Hunter") + # Hunter downloaded manually (e.g. by 'git clone') + set(_unused "xxxxxxxxxx") + set(HUNTER_GATE_SHA1 "${_unused}") + set(HUNTER_GATE_VERSION "${_unused}") + else() + get_filename_component(_archive_id_location "${_hunter_self}/.." ABSOLUTE) + set(_done_location "${_archive_id_location}/DONE") + set(_sha1_location "${_archive_id_location}/SHA1") + + # Check Hunter already downloaded by HunterGate + if(NOT EXISTS "${_done_location}") + hunter_gate_download("${_archive_id_location}") + endif() + + if(NOT EXISTS "${_done_location}") + hunter_gate_internal_error("hunter_gate_download failed") + endif() + + if(NOT EXISTS "${_sha1_location}") + hunter_gate_internal_error("${_sha1_location} not found") + endif() + file(READ "${_sha1_location}" _sha1_value) + string(COMPARE EQUAL "${_sha1_value}" "${HUNTER_GATE_SHA1}" _is_equal) + if(NOT _is_equal) + hunter_gate_internal_error( + "Short SHA1 collision:" + " ${_sha1_value} (from ${_sha1_location})" + " ${HUNTER_GATE_SHA1} (HunterGate)" + ) + endif() + if(NOT EXISTS "${_master_location}") + hunter_gate_user_error( + "Master file not found:" + " ${_master_location}" + "try to update Hunter/HunterGate" + ) + endif() + endif() + include("${_master_location}") + set_property(GLOBAL PROPERTY HUNTER_GATE_DONE YES) + endif() +endmacro() From dd9511aaef16c5fb351d0754ecc3cf4f264603c3 Mon Sep 17 00:00:00 2001 From: Rahul Sheth Date: Fri, 24 May 2019 12:44:47 -0400 Subject: [PATCH 18/24] Add HunterGate URL/SHA1 --- CMakeLists.txt | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index cf58d7fd0..f8bbda527 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -36,6 +36,16 @@ #---------------------------------------------------------------------- SET(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required CMAKE_MINIMUM_REQUIRED( VERSION 2.8 ) + +# Toggles the use of the hunter package manager +option(HUNTER_ENABLED "Enable Hunter package manager support" OFF) + +include("cmake/HunterGate.cmake") +HunterGate( + URL "https://github.com/ruslo/hunter/archive/v0.23.176.tar.gz" + SHA1 "2e9ae973d028660b735ac4c6142725ca36a0048a" +) + PROJECT( Assimp ) # All supported options ############################################### From 1db3e1e11f2cf6ae0d94a33d24cc3fed13bc0d07 Mon Sep 17 00:00:00 2001 From: Rahul Sheth Date: Fri, 24 May 2019 12:57:23 -0400 Subject: [PATCH 19/24] Allow CXX_STANDARD and other relevant compiler definitions to be set by Hunter user --- CMakeLists.txt | 38 ++++++++++++++++++++++++++------------ 1 file changed, 26 insertions(+), 12 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index f8bbda527..d75d7692d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -125,12 +125,12 @@ OPTION ( IGNORE_GIT_HASH OFF ) -IF (IOS) +IF (IOS AND NOT HUNTER_ENABLED) IF (NOT CMAKE_BUILD_TYPE) SET(CMAKE_BUILD_TYPE "Release") ENDIF (NOT CMAKE_BUILD_TYPE) ADD_DEFINITIONS(-DENABLE_BITCODE) -ENDIF (IOS) +ENDIF (IOS AND NOT HUNTER_ENABLED) # Use subset of Windows.h if (WIN32) @@ -170,8 +170,10 @@ SET (PROJECT_VERSION "${ASSIMP_VERSION}") SET( ASSIMP_PACKAGE_VERSION "0" CACHE STRING "the package-specific version used for uploading the sources" ) -# Enable C++11 support globally -set_property( GLOBAL PROPERTY CXX_STANDARD 11 ) +if(NOT HUNTER_ENABLED) + # Enable C++11 support globally + set_property( GLOBAL PROPERTY CXX_STANDARD 11 ) +endif() IF(NOT IGNORE_GIT_HASH) # Get the current working branch @@ -232,9 +234,13 @@ ENDIF( UNIX ) # Grouped compiler settings IF ((CMAKE_C_COMPILER_ID MATCHES "GNU") AND NOT CMAKE_COMPILER_IS_MINGW) + IF(NOT HUNTER_ENABLED) + SET(CMAKE_CXX_FLAGS "-fPIC -std=c++0x ${CMAKE_CXX_FLAGS}") + SET(CMAKE_C_FLAGS "-fPIC ${CMAKE_C_FLAGS}") + ENDIF() # hide all not-exported symbols - SET(CMAKE_CXX_FLAGS "-g -fvisibility=hidden -fPIC -fno-strict-aliasing -Wall -std=c++0x ${CMAKE_CXX_FLAGS}") - SET(CMAKE_C_FLAGS "-fPIC -fno-strict-aliasing ${CMAKE_C_FLAGS}") + SET(CMAKE_CXX_FLAGS "-g -fvisibility=hidden -fno-strict-aliasing -Wall ${CMAKE_CXX_FLAGS}") + SET(CMAKE_C_FLAGS "-fno-strict-aliasing ${CMAKE_C_FLAGS}") SET(LIBSTDC++_LIBRARIES -lstdc++) ELSEIF(MSVC) # enable multi-core compilation with MSVC @@ -245,20 +251,28 @@ ELSEIF(MSVC) ADD_COMPILE_OPTIONS(/wd4351) ENDIF() ELSEIF ( "${CMAKE_CXX_COMPILER_ID}" MATCHES "Clang" ) - SET(CMAKE_CXX_FLAGS "-g -fvisibility=hidden -fPIC -fno-strict-aliasing -Wall -Wno-long-long -std=c++11 ${CMAKE_CXX_FLAGS}" ) - SET(CMAKE_C_FLAGS "-fPIC -fno-strict-aliasing ${CMAKE_C_FLAGS}") + IF(NOT HUNTER_ENABLED) + SET(CMAKE_CXX_FLAGS "-fPIC -std=c++11 ${CMAKE_CXX_FLAGS}") + SET(CMAKE_C_FLAGS "-fPIC ${CMAKE_C_FLAGS}") + ENDIF() + SET(CMAKE_CXX_FLAGS "-g -fvisibility=hidden -fno-strict-aliasing -Wall -Wno-long-long ${CMAKE_CXX_FLAGS}" ) + SET(CMAKE_C_FLAGS "-fno-strict-aliasing ${CMAKE_C_FLAGS}") ELSEIF( CMAKE_COMPILER_IS_MINGW ) IF (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.0) message(FATAL_ERROR "MinGW is too old to be supported. Please update MinGW and try again.") ELSEIF(CMAKE_CXX_COMPILER_VERSION VERSION_LESS 7.3) message(WARNING "MinGW is old, if you experience errors, update MinGW.") ENDIF() - SET( CMAKE_CXX_FLAGS "-fvisibility=hidden -fno-strict-aliasing -Wall -Wno-long-long -std=c++11 -Wa,-mbig-obj ${CMAKE_CXX_FLAGS}" ) - SET(CMAKE_C_FLAGS "-fPIC -fno-strict-aliasing ${CMAKE_C_FLAGS} ") + IF(NOT HUNTER_ENABLED) + SET(CMAKE_CXX_FLAGS "-std=c++11 ${CMAKE_CXX_FLAGS}") + SET(CMAKE_C_FLAGS "-fPIC ${CMAKE_C_FLAGS}") + ENDIF() + SET(CMAKE_CXX_FLAGS "-fvisibility=hidden -fno-strict-aliasing -Wall -Wno-long-long -Wa,-mbig-obj ${CMAKE_CXX_FLAGS}") + SET(CMAKE_C_FLAGS "-fno-strict-aliasing ${CMAKE_C_FLAGS}") ADD_DEFINITIONS( -U__STRICT_ANSI__ ) ENDIF() -IF ( IOS ) +IF ( IOS AND NOT HUNTER_ENABLED) IF (CMAKE_BUILD_TYPE STREQUAL "Debug") SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fembed-bitcode -Og") @@ -269,7 +283,7 @@ ELSE() # Experimental for pdb generation ENDIF() -ENDIF( IOS ) +ENDIF( IOS AND NOT HUNTER_ENABLED) IF (ASSIMP_COVERALLS) MESSAGE(STATUS "Coveralls enabled") From a4587e86092ce6695051d9baef65d5bd89d345a9 Mon Sep 17 00:00:00 2001 From: Rahul Sheth Date: Fri, 24 May 2019 16:13:55 -0400 Subject: [PATCH 20/24] Use hunter to download dependencies if HUNTER_ENABLED is ON --- CMakeLists.txt | 86 +++++++------ code/CMakeLists.txt | 298 ++++++++++++++++++++++++++++---------------- test/CMakeLists.txt | 2 +- 3 files changed, 237 insertions(+), 149 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index d75d7692d..2fc589477 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,8 +34,7 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #---------------------------------------------------------------------- -SET(CMAKE_LEGACY_CYGWIN_WIN32 0) # Remove when CMake >= 2.8.4 is required -CMAKE_MINIMUM_REQUIRED( VERSION 2.8 ) +CMAKE_MINIMUM_REQUIRED( VERSION 3.0 ) # Toggles the use of the hunter package manager option(HUNTER_ENABLED "Enable Hunter package manager support" OFF) @@ -77,7 +76,7 @@ OPTION( ASSIMP_NO_EXPORT ) OPTION( ASSIMP_BUILD_ZLIB "Build your own zlib" - OFF + OFF ) OPTION( ASSIMP_BUILD_ASSIMP_TOOLS "If the supplementary tools for Assimp are built in addition to the library." @@ -366,7 +365,7 @@ ELSE() ENDIF() CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimp-config-version.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimp-config-version.cmake" @ONLY IMMEDIATE) #we should generated these scripts after CMake VERSION 3.0.2 using export(EXPORT ...) and write_basic_package_version_file(...) -INSTALL(FILES +INSTALL(FILES "${CMAKE_CURRENT_BINARY_DIR}/assimp-config.cmake" "${CMAKE_CURRENT_BINARY_DIR}/assimp-config-version.cmake" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets.cmake" @@ -386,48 +385,57 @@ ENDIF( SYSTEM_IRRXML ) # Search for external dependencies, and build them from source if not found # Search for zlib -IF ( NOT ASSIMP_BUILD_ZLIB ) - FIND_PACKAGE(ZLIB) -ENDIF( NOT ASSIMP_BUILD_ZLIB ) +IF(HUNTER_ENABLED) + hunter_add_package(ZLIB) + find_package(ZLIB CONFIG REQUIRED) -IF( NOT ZLIB_FOUND ) - MESSAGE(STATUS "compiling zlib from sources") - INCLUDE(CheckIncludeFile) - INCLUDE(CheckTypeSize) - INCLUDE(CheckFunctionExists) + add_definitions(-DASSIMP_BUILD_NO_OWN_ZLIB) + set(ZLIB_FOUND TRUE) + set(ZLIB_LIBRARIES ZLIB::zlib) + set(ASSIMP_BUILD_MINIZIP TRUE) +ELSE(HUNTER_ENABLED) + IF ( NOT ASSIMP_BUILD_ZLIB ) + FIND_PACKAGE(ZLIB) + ENDIF( NOT ASSIMP_BUILD_ZLIB ) - # Explicitly turn off ASM686 and AMD64 cmake options. - # The AMD64 option causes a build failure on MSVC and the ASM builds seem to have problems: - # https://github.com/madler/zlib/issues/41#issuecomment-125848075 - # Also prevents these options from "polluting" the cmake options if assimp is being - # included as a submodule. - set( ASM686 FALSE CACHE INTERNAL "Override ZLIB flag to turn off assembly" FORCE ) - set( AMD64 FALSE CACHE INTERNAL "Override ZLIB flag to turn off assembly" FORCE ) + IF( NOT ZLIB_FOUND ) + MESSAGE(STATUS "compiling zlib from sources") + INCLUDE(CheckIncludeFile) + INCLUDE(CheckTypeSize) + INCLUDE(CheckFunctionExists) - # compile from sources - ADD_SUBDIRECTORY(contrib/zlib) - SET(ZLIB_FOUND 1) - SET(ZLIB_LIBRARIES zlibstatic) - SET(ZLIB_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/contrib/zlib ${CMAKE_CURRENT_BINARY_DIR}/contrib/zlib) - # need to ensure we don't link with system zlib or minizip as well. - SET(ASSIMP_BUILD_MINIZIP 1) -ELSE(NOT ZLIB_FOUND) - ADD_DEFINITIONS(-DASSIMP_BUILD_NO_OWN_ZLIB) - SET(ZLIB_LIBRARIES_LINKED -lz) -ENDIF(NOT ZLIB_FOUND) -INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR}) + # Explicitly turn off ASM686 and AMD64 cmake options. + # The AMD64 option causes a build failure on MSVC and the ASM builds seem to have problems: + # https://github.com/madler/zlib/issues/41#issuecomment-125848075 + # Also prevents these options from "polluting" the cmake options if assimp is being + # included as a submodule. + set( ASM686 FALSE CACHE INTERNAL "Override ZLIB flag to turn off assembly" FORCE ) + set( AMD64 FALSE CACHE INTERNAL "Override ZLIB flag to turn off assembly" FORCE ) -# Search for unzip -IF ( NOT IOS ) + # compile from sources + ADD_SUBDIRECTORY(contrib/zlib) + SET(ZLIB_FOUND 1) + SET(ZLIB_LIBRARIES zlibstatic) + SET(ZLIB_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/contrib/zlib ${CMAKE_CURRENT_BINARY_DIR}/contrib/zlib) + # need to ensure we don't link with system zlib or minizip as well. + SET(ASSIMP_BUILD_MINIZIP 1) + ELSE(NOT ZLIB_FOUND) + ADD_DEFINITIONS(-DASSIMP_BUILD_NO_OWN_ZLIB) + SET(ZLIB_LIBRARIES_LINKED -lz) + ENDIF(NOT ZLIB_FOUND) + INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR}) +ENDIF(HUNTER_ENABLED) + +IF( NOT IOS ) IF( NOT ASSIMP_BUILD_MINIZIP ) - use_pkgconfig(UNZIP minizip) + use_pkgconfig(UNZIP minizip) ENDIF( NOT ASSIMP_BUILD_MINIZIP ) ELSE ( NOT IOS ) - IF(NOT BUILD_SHARED_LIBS) + IF( NOT BUILD_SHARED_LIBS ) IF( NOT ASSIMP_BUILD_MINIZIP ) - use_pkgconfig(UNZIP minizip) + use_pkgconfig(UNZIP minizip) ENDIF( NOT ASSIMP_BUILD_MINIZIP ) - ENDIF (NOT BUILD_SHARED_LIBS) + ENDIF ( NOT BUILD_SHARED_LIBS ) ENDIF ( NOT IOS ) IF ( ASSIMP_NO_EXPORT ) @@ -501,7 +509,9 @@ ELSE (ASSIMP_BUILD_NONFREE_C4D_IMPORTER) ADD_DEFINITIONS( -DASSIMP_BUILD_NO_C4D_IMPORTER ) ENDIF (ASSIMP_BUILD_NONFREE_C4D_IMPORTER) -ADD_SUBDIRECTORY(contrib) +IF(NOT HUNTER_ENABLED) + ADD_SUBDIRECTORY(contrib) +ENDIF(NOT HUNTER_ENABLED) ADD_SUBDIRECTORY( code/ ) IF ( ASSIMP_BUILD_ASSIMP_TOOLS ) diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt index f8ce3a166..ef2845c7a 100644 --- a/code/CMakeLists.txt +++ b/code/CMakeLists.txt @@ -43,7 +43,7 @@ # 3) Add libassimp using the file lists (eliminates duplication of file names between # source groups and library command) # -cmake_minimum_required( VERSION 2.6 ) +cmake_minimum_required( VERSION 3.0 ) SET( HEADER_PATH ../include/assimp ) if(NOT ANDROID AND ASSIMP_ANDROID_JNIIOSYSTEM) @@ -267,7 +267,7 @@ MACRO(ADD_ASSIMP_EXPORTER name) ELSE () set(ASSIMP_EXPORTER_ENABLED ${ASSIMP_BUILD_${name}_EXPORTER}) ENDIF () - + IF (ASSIMP_EXPORTER_ENABLED) SET(ASSIMP_EXPORTERS_ENABLED "${ASSIMP_EXPORTERS_ENABLED} ${name}") LIST(APPEND ASSIMP_EXPORTER_SRCS ${ARGN}) @@ -848,116 +848,173 @@ SET( Extra_SRCS ) SOURCE_GROUP( Extra FILES ${Extra_SRCS}) -SET( Clipper_SRCS - ../contrib/clipper/clipper.hpp - ../contrib/clipper/clipper.cpp -) -SOURCE_GROUP( Contrib\\Clipper FILES ${Clipper_SRCS}) +# irrXML +IF(HUNTER_ENABLED) + hunter_add_package(irrXML) + find_package(irrXML CONFIG REQUIRED) +ELSE(HUNTER_ENABLED) + # irrXML already included in contrib directory by parent CMakeLists.txt. +ENDIF(HUNTER_ENABLED) -SET( Poly2Tri_SRCS - ../contrib/poly2tri/poly2tri/common/shapes.cc - ../contrib/poly2tri/poly2tri/common/shapes.h - ../contrib/poly2tri/poly2tri/common/utils.h - ../contrib/poly2tri/poly2tri/sweep/advancing_front.h - ../contrib/poly2tri/poly2tri/sweep/advancing_front.cc - ../contrib/poly2tri/poly2tri/sweep/cdt.cc - ../contrib/poly2tri/poly2tri/sweep/cdt.h - ../contrib/poly2tri/poly2tri/sweep/sweep.cc - ../contrib/poly2tri/poly2tri/sweep/sweep.h - ../contrib/poly2tri/poly2tri/sweep/sweep_context.cc - ../contrib/poly2tri/poly2tri/sweep/sweep_context.h -) -SOURCE_GROUP( Contrib\\Poly2Tri FILES ${Poly2Tri_SRCS}) +# utf8 +IF(HUNTER_ENABLED) + hunter_add_package(utf8) + find_package(utf8 CONFIG REQUIRED) +ELSE(HUNTER_ENABLED) + # utf8 is header-only, so Assimp doesn't need to do anything. +ENDIF(HUNTER_ENABLED) -SET( unzip_SRCS - ../contrib/unzip/crypt.h - ../contrib/unzip/ioapi.c - ../contrib/unzip/ioapi.h - ../contrib/unzip/unzip.c - ../contrib/unzip/unzip.h -) -SOURCE_GROUP(Contrib\\unzip FILES ${unzip_SRCS}) +# polyclipping +IF(HUNTER_ENABLED) + hunter_add_package(polyclipping) + find_package(polyclipping CONFIG REQUIRED) +ELSE(HUNTER_ENABLED) + SET( Clipper_SRCS + ../contrib/clipper/clipper.hpp + ../contrib/clipper/clipper.cpp + ) + SOURCE_GROUP( Contrib\\Clipper FILES ${Clipper_SRCS}) +ENDIF(HUNTER_ENABLED) -SET( ziplib_SRCS - ../contrib/zip/src/miniz.h - ../contrib/zip/src/zip.c - ../contrib/zip/src/zip.h -) +# poly2tri +IF(HUNTER_ENABLED) + hunter_add_package(poly2tri) + find_package(poly2tri CONFIG REQUIRED) +ELSE(HUNTER_ENABLED) + SET( Poly2Tri_SRCS + ../contrib/poly2tri/poly2tri/common/shapes.cc + ../contrib/poly2tri/poly2tri/common/shapes.h + ../contrib/poly2tri/poly2tri/common/utils.h + ../contrib/poly2tri/poly2tri/sweep/advancing_front.h + ../contrib/poly2tri/poly2tri/sweep/advancing_front.cc + ../contrib/poly2tri/poly2tri/sweep/cdt.cc + ../contrib/poly2tri/poly2tri/sweep/cdt.h + ../contrib/poly2tri/poly2tri/sweep/sweep.cc + ../contrib/poly2tri/poly2tri/sweep/sweep.h + ../contrib/poly2tri/poly2tri/sweep/sweep_context.cc + ../contrib/poly2tri/poly2tri/sweep/sweep_context.h + ) + SOURCE_GROUP( Contrib\\Poly2Tri FILES ${Poly2Tri_SRCS}) +ENDIF(HUNTER_ENABLED) -# TODO if cmake required version has been updated to >3.12.0, collapse this to the second case only -if(${CMAKE_VERSION} VERSION_LESS "3.12.0") - add_definitions(-DMINIZ_USE_UNALIGNED_LOADS_AND_STORES=0) -else() - add_compile_definitions(MINIZ_USE_UNALIGNED_LOADS_AND_STORES=0) -endif() +# minizip/unzip +IF(HUNTER_ENABLED) + hunter_add_package(minizip) + find_package(minizip CONFIG REQUIRED) +ELSE(HUNTER_ENABLED) + SET( unzip_SRCS + ../contrib/unzip/crypt.h + ../contrib/unzip/ioapi.c + ../contrib/unzip/ioapi.h + ../contrib/unzip/unzip.c + ../contrib/unzip/unzip.h + ) + SOURCE_GROUP(Contrib\\unzip FILES ${unzip_SRCS}) +ENDIF(HUNTER_ENABLED) -SOURCE_GROUP( ziplib FILES ${ziplib_SRCS} ) +# zip (https://github.com/kuba--/zip) +IF(HUNTER_ENABLED) + hunter_add_package(zip) + find_package(zip CONFIG REQUIRED) +ELSE(HUNTER_ENABLED) + SET( ziplib_SRCS + ../contrib/zip/src/miniz.h + ../contrib/zip/src/zip.c + ../contrib/zip/src/zip.h + ) -SET ( openddl_parser_SRCS - ../contrib/openddlparser/code/OpenDDLParser.cpp - ../contrib/openddlparser/code/DDLNode.cpp - ../contrib/openddlparser/code/OpenDDLCommon.cpp - ../contrib/openddlparser/code/OpenDDLExport.cpp - ../contrib/openddlparser/code/Value.cpp - ../contrib/openddlparser/code/OpenDDLStream.cpp - ../contrib/openddlparser/include/openddlparser/OpenDDLParser.h - ../contrib/openddlparser/include/openddlparser/OpenDDLParserUtils.h - ../contrib/openddlparser/include/openddlparser/OpenDDLCommon.h - ../contrib/openddlparser/include/openddlparser/OpenDDLExport.h - ../contrib/openddlparser/include/openddlparser/OpenDDLStream.h - ../contrib/openddlparser/include/openddlparser/DDLNode.h - ../contrib/openddlparser/include/openddlparser/Value.h -) -SOURCE_GROUP( Contrib\\openddl_parser FILES ${openddl_parser_SRCS}) + # TODO if cmake required version has been updated to >3.12.0, collapse this to the second case only + if(${CMAKE_VERSION} VERSION_LESS "3.12.0") + add_definitions(-DMINIZ_USE_UNALIGNED_LOADS_AND_STORES=0) + else() + add_compile_definitions(MINIZ_USE_UNALIGNED_LOADS_AND_STORES=0) + endif() -SET ( open3dgc_SRCS - ../contrib/Open3DGC/o3dgcAdjacencyInfo.h - ../contrib/Open3DGC/o3dgcArithmeticCodec.cpp - ../contrib/Open3DGC/o3dgcArithmeticCodec.h - ../contrib/Open3DGC/o3dgcBinaryStream.h - ../contrib/Open3DGC/o3dgcCommon.h - ../contrib/Open3DGC/o3dgcDVEncodeParams.h - ../contrib/Open3DGC/o3dgcDynamicVectorDecoder.cpp - ../contrib/Open3DGC/o3dgcDynamicVectorDecoder.h - ../contrib/Open3DGC/o3dgcDynamicVectorEncoder.cpp - ../contrib/Open3DGC/o3dgcDynamicVectorEncoder.h - ../contrib/Open3DGC/o3dgcDynamicVector.h - ../contrib/Open3DGC/o3dgcFIFO.h - ../contrib/Open3DGC/o3dgcIndexedFaceSet.h - ../contrib/Open3DGC/o3dgcIndexedFaceSet.inl - ../contrib/Open3DGC/o3dgcSC3DMCDecoder.h - ../contrib/Open3DGC/o3dgcSC3DMCDecoder.inl - ../contrib/Open3DGC/o3dgcSC3DMCEncodeParams.h - ../contrib/Open3DGC/o3dgcSC3DMCEncoder.h - ../contrib/Open3DGC/o3dgcSC3DMCEncoder.inl - ../contrib/Open3DGC/o3dgcTimer.h - ../contrib/Open3DGC/o3dgcTools.cpp - ../contrib/Open3DGC/o3dgcTriangleFans.cpp - ../contrib/Open3DGC/o3dgcTriangleFans.h - ../contrib/Open3DGC/o3dgcTriangleListDecoder.h - ../contrib/Open3DGC/o3dgcTriangleListDecoder.inl - ../contrib/Open3DGC/o3dgcTriangleListEncoder.h - ../contrib/Open3DGC/o3dgcTriangleListEncoder.inl - ../contrib/Open3DGC/o3dgcVector.h - ../contrib/Open3DGC/o3dgcVector.inl -) -SOURCE_GROUP( Contrib\\open3dgc FILES ${open3dgc_SRCS}) + SOURCE_GROUP( ziplib FILES ${ziplib_SRCS} ) +ENDIF(HUNTER_ENABLED) + +# openddlparser +IF(HUNTER_ENABLED) + hunter_add_package(openddlparser) + find_package(openddlparser CONFIG REQUIRED) +ELSE(HUNTER_ENABLED) + SET ( openddl_parser_SRCS + ../contrib/openddlparser/code/OpenDDLParser.cpp + ../contrib/openddlparser/code/DDLNode.cpp + ../contrib/openddlparser/code/OpenDDLCommon.cpp + ../contrib/openddlparser/code/OpenDDLExport.cpp + ../contrib/openddlparser/code/Value.cpp + ../contrib/openddlparser/code/OpenDDLStream.cpp + ../contrib/openddlparser/include/openddlparser/OpenDDLParser.h + ../contrib/openddlparser/include/openddlparser/OpenDDLParserUtils.h + ../contrib/openddlparser/include/openddlparser/OpenDDLCommon.h + ../contrib/openddlparser/include/openddlparser/OpenDDLExport.h + ../contrib/openddlparser/include/openddlparser/OpenDDLStream.h + ../contrib/openddlparser/include/openddlparser/DDLNode.h + ../contrib/openddlparser/include/openddlparser/Value.h + ) + SOURCE_GROUP( Contrib\\openddl_parser FILES ${openddl_parser_SRCS}) +ENDIF(HUNTER_ENABLED) + +# Open3DGC +IF(HUNTER_ENABLED) + # Nothing to do, not available in Hunter yet. +ELSE(HUNTER_ENABLED) + SET ( open3dgc_SRCS + ../contrib/Open3DGC/o3dgcAdjacencyInfo.h + ../contrib/Open3DGC/o3dgcArithmeticCodec.cpp + ../contrib/Open3DGC/o3dgcArithmeticCodec.h + ../contrib/Open3DGC/o3dgcBinaryStream.h + ../contrib/Open3DGC/o3dgcCommon.h + ../contrib/Open3DGC/o3dgcDVEncodeParams.h + ../contrib/Open3DGC/o3dgcDynamicVectorDecoder.cpp + ../contrib/Open3DGC/o3dgcDynamicVectorDecoder.h + ../contrib/Open3DGC/o3dgcDynamicVectorEncoder.cpp + ../contrib/Open3DGC/o3dgcDynamicVectorEncoder.h + ../contrib/Open3DGC/o3dgcDynamicVector.h + ../contrib/Open3DGC/o3dgcFIFO.h + ../contrib/Open3DGC/o3dgcIndexedFaceSet.h + ../contrib/Open3DGC/o3dgcIndexedFaceSet.inl + ../contrib/Open3DGC/o3dgcSC3DMCDecoder.h + ../contrib/Open3DGC/o3dgcSC3DMCDecoder.inl + ../contrib/Open3DGC/o3dgcSC3DMCEncodeParams.h + ../contrib/Open3DGC/o3dgcSC3DMCEncoder.h + ../contrib/Open3DGC/o3dgcSC3DMCEncoder.inl + ../contrib/Open3DGC/o3dgcTimer.h + ../contrib/Open3DGC/o3dgcTools.cpp + ../contrib/Open3DGC/o3dgcTriangleFans.cpp + ../contrib/Open3DGC/o3dgcTriangleFans.h + ../contrib/Open3DGC/o3dgcTriangleListDecoder.h + ../contrib/Open3DGC/o3dgcTriangleListDecoder.inl + ../contrib/Open3DGC/o3dgcTriangleListEncoder.h + ../contrib/Open3DGC/o3dgcTriangleListEncoder.inl + ../contrib/Open3DGC/o3dgcVector.h + ../contrib/Open3DGC/o3dgcVector.inl + ) + SOURCE_GROUP( Contrib\\open3dgc FILES ${open3dgc_SRCS}) +ENDIF(HUNTER_ENABLED) # Check dependencies for glTF importer with Open3DGC-compression. # RT-extensions is used in "contrib/Open3DGC/o3dgcTimer.h" for collecting statistics. Pointed file # has implementation for different platforms: WIN32, __MACH__ and other ("else" block). FIND_PACKAGE(RT QUIET) -IF (RT_FOUND OR MSVC) +IF (NOT HUNTER_ENABLED AND (RT_FOUND OR MSVC)) SET( ASSIMP_IMPORTER_GLTF_USE_OPEN3DGC 1 ) ADD_DEFINITIONS( -DASSIMP_IMPORTER_GLTF_USE_OPEN3DGC=1 ) ELSE () SET (open3dgc_SRCS "") - MESSAGE (INFO " RT-extension not found. glTF import/export will be built without Open3DGC-compression.") + MESSAGE (INFO " Hunter enabled or RT-extension not found. glTF import/export will be built without Open3DGC-compression.") #!TODO: off course is better to remove statistics timers from o3dgc codec. Or propose to choose what to use. ENDIF () -INCLUDE_DIRECTORIES( "../contrib/rapidjson/include" ) -INCLUDE_DIRECTORIES( "../contrib" ) +# RapidJSON +IF(HUNTER_ENABLED) + hunter_add_package(RapidJSON) + find_package(RapidJSON CONFIG REQUIRED) +ELSE(HUNTER_ENABLED) + INCLUDE_DIRECTORIES( "../contrib/rapidjson/include" ) + INCLUDE_DIRECTORIES( "../contrib" ) +ENDIF(HUNTER_ENABLED) # VC2010 fixes if(MSVC10) @@ -974,12 +1031,14 @@ if ( MSVC ) ADD_DEFINITIONS( -D_CRT_SECURE_NO_WARNINGS ) endif ( MSVC ) -if (UNZIP_FOUND) - SET (unzip_compile_SRCS "") -else (UNZIP_FOUND) - SET (unzip_compile_SRCS ${unzip_SRCS}) - INCLUDE_DIRECTORIES( "../contrib/unzip/" ) -endif (UNZIP_FOUND) +IF(NOT HUNTER_ENABLED) + if (UNZIP_FOUND) + SET (unzip_compile_SRCS "") + else (UNZIP_FOUND) + SET (unzip_compile_SRCS ${unzip_SRCS}) + INCLUDE_DIRECTORIES( "../contrib/unzip/" ) + endif (UNZIP_FOUND) +ENDIF(NOT HUNTER_ENABLED) MESSAGE(STATUS "Enabled importer formats:${ASSIMP_IMPORTERS_ENABLED}") MESSAGE(STATUS "Disabled importer formats:${ASSIMP_IMPORTERS_DISABLED}") @@ -1018,10 +1077,12 @@ SET( assimp_src ) ADD_DEFINITIONS( -DOPENDDLPARSER_BUILD ) -INCLUDE_DIRECTORIES( - ${IRRXML_INCLUDE_DIR} - ../contrib/openddlparser/include -) +IF(NOT HUNTER_ENABLED) + INCLUDE_DIRECTORIES( + ${IRRXML_INCLUDE_DIR} + ../contrib/openddlparser/include + ) +ENDIF(NOT HUNTER_ENABLED) IF (ASSIMP_BUILD_NONFREE_C4D_IMPORTER) SET( assimp_src ${assimp_src} ${C4D_SRCS}) @@ -1037,7 +1098,22 @@ TARGET_INCLUDE_DIRECTORIES ( assimp PUBLIC $ ) -TARGET_LINK_LIBRARIES(assimp ${ZLIB_LIBRARIES} ${OPENDDL_PARSER_LIBRARIES} ${IRRXML_LIBRARY} ) +IF(HUNTER_ENABLED) + TARGET_LINK_LIBRARIES(assimp + PUBLIC + polyclipping::polyclipping + irrXML::irrXML + openddlparser::openddl_parser + poly2tri::poly2tri + minizip::minizip + ZLIB::zlib + RapidJSON::rapidjson + utf8::utf8 + zip::zip + ) +ELSE(HUNTER_ENABLED) + TARGET_LINK_LIBRARIES(assimp ${ZLIB_LIBRARIES} ${OPENDDL_PARSER_LIBRARIES} ${IRRXML_LIBRARY} ) +ENDIF(HUNTER_ENABLED) if(ASSIMP_ANDROID_JNIIOSYSTEM) set(ASSIMP_ANDROID_JNIIOSYSTEM_PATH port/AndroidJNI) @@ -1119,12 +1195,14 @@ ENDIF(APPLE) # Build against external unzip, or add ../contrib/unzip so # assimp can #include "unzip.h" -if (UNZIP_FOUND) - INCLUDE_DIRECTORIES(${UNZIP_INCLUDE_DIRS}) - TARGET_LINK_LIBRARIES(assimp ${UNZIP_LIBRARIES}) -else (UNZIP_FOUND) - INCLUDE_DIRECTORIES("../") -endif (UNZIP_FOUND) +IF(NOT HUNTER_ENABLED) + if (UNZIP_FOUND) + INCLUDE_DIRECTORIES(${UNZIP_INCLUDE_DIRS}) + TARGET_LINK_LIBRARIES(assimp ${UNZIP_LIBRARIES}) + else (UNZIP_FOUND) + INCLUDE_DIRECTORIES("../") + endif (UNZIP_FOUND) +ENDIF(NOT HUNTER_ENABLED) # Add RT-extension library for glTF importer with Open3DGC-compression. IF (RT_FOUND AND ASSIMP_IMPORTER_GLTF_USE_OPEN3DGC) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 013865de0..4db319725 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -37,7 +37,7 @@ # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # #---------------------------------------------------------------------- -cmake_minimum_required( VERSION 2.6 ) +cmake_minimum_required( VERSION 3.0 ) INCLUDE_DIRECTORIES( ${Assimp_SOURCE_DIR}/contrib/gtest/include From dab8041bcd9246b244a9895391adadcd4c6609ac Mon Sep 17 00:00:00 2001 From: Rahul Sheth Date: Fri, 24 May 2019 16:37:09 -0400 Subject: [PATCH 21/24] rewrite include paths for Hunter packages --- CMakeLists.txt | 4 ++++ code/3MF/D3MFExporter.cpp | 6 +++++- code/3MF/D3MFImporter.cpp | 6 +++++- code/3MF/D3MFOpcPackage.cpp | 6 +++++- code/Blender/BlenderTessellator.h | 6 +++++- code/Common/BaseImporter.cpp | 6 +++++- code/Importer/IFC/IFCGeometry.cpp | 9 +++++++-- code/Importer/IFC/IFCLoader.cpp | 6 +++++- code/Importer/IFC/IFCOpenings.cpp | 9 +++++++-- code/Importer/STEPParser/STEPFileEncoding.cpp | 6 +++++- code/MMD/MMDPmxParser.cpp | 6 +++++- code/Q3BSP/Q3BSPZipArchive.h | 6 +++++- code/SIB/SIBImporter.cpp | 8 ++++++-- code/X3D/FIReader.cpp | 6 +++++- code/X3D/FIReader.hpp | 6 +++++- include/assimp/irrXMLWrapper.h | 6 +++++- 16 files changed, 84 insertions(+), 18 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2fc589477..9b782f04c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -45,6 +45,10 @@ HunterGate( SHA1 "2e9ae973d028660b735ac4c6142725ca36a0048a" ) +IF(HUNTER_ENABLED) + add_definitions(-DASSIMP_USE_HUNTER) +ENDIF(HUNTER_ENABLED) + PROJECT( Assimp ) # All supported options ############################################### diff --git a/code/3MF/D3MFExporter.cpp b/code/3MF/D3MFExporter.cpp index e8da91ba9..1f388ad3e 100644 --- a/code/3MF/D3MFExporter.cpp +++ b/code/3MF/D3MFExporter.cpp @@ -55,7 +55,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "3MFXmlTags.h" #include "D3MFOpcPackage.h" -#include +#ifdef ASSIMP_USE_HUNTER +# include +#else +# include +#endif namespace Assimp { diff --git a/code/3MF/D3MFImporter.cpp b/code/3MF/D3MFImporter.cpp index c218f4005..2898f8ac2 100644 --- a/code/3MF/D3MFImporter.cpp +++ b/code/3MF/D3MFImporter.cpp @@ -58,7 +58,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include "D3MFOpcPackage.h" -#include +#ifdef ASSIMP_USE_HUNTER +# include +#else +# include +#endif #include #include "3MFXmlTags.h" #include diff --git a/code/3MF/D3MFOpcPackage.cpp b/code/3MF/D3MFOpcPackage.cpp index aeadba5cc..221cf9370 100644 --- a/code/3MF/D3MFOpcPackage.cpp +++ b/code/3MF/D3MFOpcPackage.cpp @@ -56,7 +56,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include #include -#include +#ifdef ASSIMP_USE_HUNTER +# include +#else +# include +#endif #include "3MFXmlTags.h" namespace Assimp { diff --git a/code/Blender/BlenderTessellator.h b/code/Blender/BlenderTessellator.h index 8675b4e57..518e56c72 100644 --- a/code/Blender/BlenderTessellator.h +++ b/code/Blender/BlenderTessellator.h @@ -144,7 +144,11 @@ namespace Assimp #if ASSIMP_BLEND_WITH_POLY_2_TRI -#include "../contrib/poly2tri/poly2tri/poly2tri.h" +#ifdef ASSIMP_USE_HUNTER +# include +#else +# include "../contrib/poly2tri/poly2tri/poly2tri.h" +#endif namespace Assimp { diff --git a/code/Common/BaseImporter.cpp b/code/Common/BaseImporter.cpp index 4803c6d6f..0a5694aa0 100644 --- a/code/Common/BaseImporter.cpp +++ b/code/Common/BaseImporter.cpp @@ -320,7 +320,11 @@ std::string BaseImporter::GetExtension( const std::string& file ) { return false; } -#include "../contrib/utf8cpp/source/utf8.h" +#ifdef ASSIMP_USE_HUNTER +# include +#else +# include "../contrib/utf8cpp/source/utf8.h" +#endif // ------------------------------------------------------------------------------------------------ // Convert to UTF8 data diff --git a/code/Importer/IFC/IFCGeometry.cpp b/code/Importer/IFC/IFCGeometry.cpp index 69523bedd..032030112 100644 --- a/code/Importer/IFC/IFCGeometry.cpp +++ b/code/Importer/IFC/IFCGeometry.cpp @@ -49,8 +49,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "Common/PolyTools.h" #include "PostProcessing/ProcessHelper.h" -#include "../contrib/poly2tri/poly2tri/poly2tri.h" -#include "../contrib/clipper/clipper.hpp" +#ifdef ASSIMP_USE_HUNTER +# include +# include +#else +# include "../contrib/poly2tri/poly2tri/poly2tri.h" +# include "../contrib/clipper/clipper.hpp" +#endif #include #include diff --git a/code/Importer/IFC/IFCLoader.cpp b/code/Importer/IFC/IFCLoader.cpp index 368f98ec0..5c705c256 100644 --- a/code/Importer/IFC/IFCLoader.cpp +++ b/code/Importer/IFC/IFCLoader.cpp @@ -52,7 +52,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #ifndef ASSIMP_BUILD_NO_COMPRESSED_IFC -# include +# ifdef ASSIMP_USE_HUNTER +# include +# else +# include +# endif #endif #include "IFCLoader.h" diff --git a/code/Importer/IFC/IFCOpenings.cpp b/code/Importer/IFC/IFCOpenings.cpp index ce94c1801..a24ffb4ca 100644 --- a/code/Importer/IFC/IFCOpenings.cpp +++ b/code/Importer/IFC/IFCOpenings.cpp @@ -49,8 +49,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include "Common/PolyTools.h" #include "PostProcessing/ProcessHelper.h" -#include "../contrib/poly2tri/poly2tri/poly2tri.h" -#include "../contrib/clipper/clipper.hpp" +#ifdef ASSIMP_USE_HUNTER +# include +# include +#else +# include "../contrib/poly2tri/poly2tri/poly2tri.h" +# include "../contrib/clipper/clipper.hpp" +#endif #include diff --git a/code/Importer/STEPParser/STEPFileEncoding.cpp b/code/Importer/STEPParser/STEPFileEncoding.cpp index 1d7ac3418..101dcdfd7 100644 --- a/code/Importer/STEPParser/STEPFileEncoding.cpp +++ b/code/Importer/STEPParser/STEPFileEncoding.cpp @@ -45,7 +45,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ #include "STEPFileEncoding.h" #include -#include +#ifdef ASSIMP_USE_HUNTER +# include +#else +# include +#endif #include diff --git a/code/MMD/MMDPmxParser.cpp b/code/MMD/MMDPmxParser.cpp index 7425ceac2..80f0986dd 100644 --- a/code/MMD/MMDPmxParser.cpp +++ b/code/MMD/MMDPmxParser.cpp @@ -42,7 +42,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include "MMDPmxParser.h" #include -#include "../contrib/utf8cpp/source/utf8.h" +#ifdef ASSIMP_USE_HUNTER +# include +#else +# include "../contrib/utf8cpp/source/utf8.h" +#endif #include namespace pmx diff --git a/code/Q3BSP/Q3BSPZipArchive.h b/code/Q3BSP/Q3BSPZipArchive.h index 2fdc781f8..db68925a8 100644 --- a/code/Q3BSP/Q3BSPZipArchive.h +++ b/code/Q3BSP/Q3BSPZipArchive.h @@ -42,7 +42,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #ifndef AI_Q3BSP_ZIPARCHIVE_H_INC #define AI_Q3BSP_ZIPARCHIVE_H_INC -#include +#ifdef ASSIMP_USE_HUNTER +# include +#else +# include +#endif #include #include #include diff --git a/code/SIB/SIBImporter.cpp b/code/SIB/SIBImporter.cpp index cfa65520e..20cdc8009 100644 --- a/code/SIB/SIBImporter.cpp +++ b/code/SIB/SIBImporter.cpp @@ -59,8 +59,12 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include #include -//#include "../contrib/ConvertUTF/ConvertUTF.h" -#include "../contrib/utf8cpp/source/utf8.h" +#ifdef ASSIMP_USE_HUNTER +# include +#else +//# include "../contrib/ConvertUTF/ConvertUTF.h" +# include "../contrib/utf8cpp/source/utf8.h" +#endif #include #include #include diff --git a/code/X3D/FIReader.cpp b/code/X3D/FIReader.cpp index 2116316ca..9bb2c69f6 100644 --- a/code/X3D/FIReader.cpp +++ b/code/X3D/FIReader.cpp @@ -60,7 +60,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include #include #include -#include "../contrib/utf8cpp/source/utf8.h" +#ifdef ASSIMP_USE_HUNTER +# include +#else +# include "../contrib/utf8cpp/source/utf8.h" +#endif #include #include #include diff --git a/code/X3D/FIReader.hpp b/code/X3D/FIReader.hpp index 29e3ddb1b..2c92239ac 100644 --- a/code/X3D/FIReader.hpp +++ b/code/X3D/FIReader.hpp @@ -57,7 +57,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #include //#include //#include -#include +#ifdef ASSIMP_USE_HUNTER +# include +#else +# include +#endif namespace Assimp { diff --git a/include/assimp/irrXMLWrapper.h b/include/assimp/irrXMLWrapper.h index 290cf67ea..77cfd5e47 100644 --- a/include/assimp/irrXMLWrapper.h +++ b/include/assimp/irrXMLWrapper.h @@ -44,7 +44,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #define INCLUDED_AI_IRRXML_WRAPPER // some long includes .... -#include +#ifdef ASSIMP_USE_HUNTER +# include +#else +# include +#endif #include "IOStream.hpp" #include "BaseImporter.h" #include From 5cda81e84b2a5922673a2d8bf69c80f14a961b42 Mon Sep 17 00:00:00 2001 From: Rahul Sheth Date: Fri, 24 May 2019 17:03:42 -0400 Subject: [PATCH 22/24] code fixes for Hunter-based build --- code/3MF/D3MFOpcPackage.cpp | 10 ++++++++++ code/OpenGEX/OpenGEXImporter.cpp | 12 ++++++++++++ code/Q3BSP/Q3BSPZipArchive.cpp | 10 ++++++++++ 3 files changed, 32 insertions(+) diff --git a/code/3MF/D3MFOpcPackage.cpp b/code/3MF/D3MFOpcPackage.cpp index 221cf9370..3a6e4dbc9 100644 --- a/code/3MF/D3MFOpcPackage.cpp +++ b/code/3MF/D3MFOpcPackage.cpp @@ -152,6 +152,15 @@ int IOSystem2Unzip::testerror(voidpf /*opaque*/, voidpf /*stream*/) { zlib_filefunc_def IOSystem2Unzip::get(IOSystem* pIOHandler) { zlib_filefunc_def mapping; +#ifdef ASSIMP_USE_HUNTER + mapping.zopen_file = (open_file_func)open; + mapping.zread_file = (read_file_func)read; + mapping.zwrite_file = (write_file_func)write; + mapping.ztell_file = (tell_file_func)tell; + mapping.zseek_file = (seek_file_func)seek; + mapping.zclose_file = (close_file_func)close; + mapping.zerror_file = (error_file_func)testerror; +#else mapping.zopen_file = open; mapping.zread_file = read; mapping.zwrite_file = write; @@ -159,6 +168,7 @@ zlib_filefunc_def IOSystem2Unzip::get(IOSystem* pIOHandler) { mapping.zseek_file = seek; mapping.zclose_file = close; mapping.zerror_file = testerror; +#endif mapping.opaque = reinterpret_cast(pIOHandler); return mapping; diff --git a/code/OpenGEX/OpenGEXImporter.cpp b/code/OpenGEX/OpenGEXImporter.cpp index 2de9bd85e..07d3efd5e 100644 --- a/code/OpenGEX/OpenGEXImporter.cpp +++ b/code/OpenGEX/OpenGEXImporter.cpp @@ -213,7 +213,11 @@ static void propId2StdString( Property *prop, std::string &name, std::string &ke } if ( nullptr != prop->m_key ) { +#ifdef ASSIMP_USE_HUNTER + name = prop->m_key->m_text.m_buffer; +#else name = prop->m_key->m_buffer; +#endif if ( Value::ddl_string == prop->m_value->m_type ) { key = prop->m_value->getString(); } @@ -498,7 +502,11 @@ static void getRefNames( DDLNode *node, std::vector &names ) { for( size_t i = 0; i < ref->m_numRefs; i++ ) { Name *currentName( ref->m_referencedName[ i ] ); if( nullptr != currentName && nullptr != currentName->m_id ) { +#ifdef ASSIMP_USE_HUNTER + const std::string name( currentName->m_id->m_text.m_buffer ); +#else const std::string name( currentName->m_id->m_buffer ); +#endif if( !name.empty() ) { names.push_back( name ); } @@ -1039,7 +1047,11 @@ void OpenGEXImporter::handleColorNode( ODDLParser::DDLNode *node, aiScene * /*pS col.g = col4.g; col.b = col4.b; } +#ifdef ASSIMP_USE_HUNTER + const ColorType colType( getColorType( &prop->m_key->m_text ) ); +#else const ColorType colType( getColorType( prop->m_key ) ); +#endif if( DiffuseColor == colType ) { m_currentMaterial->AddProperty( &col, 1, AI_MATKEY_COLOR_DIFFUSE ); } else if( SpecularColor == colType ) { diff --git a/code/Q3BSP/Q3BSPZipArchive.cpp b/code/Q3BSP/Q3BSPZipArchive.cpp index 0b6664842..931f2b905 100644 --- a/code/Q3BSP/Q3BSPZipArchive.cpp +++ b/code/Q3BSP/Q3BSPZipArchive.cpp @@ -123,6 +123,15 @@ int IOSystem2Unzip::testerror(voidpf /*opaque*/, voidpf /*stream*/) { zlib_filefunc_def IOSystem2Unzip::get(IOSystem* pIOHandler) { zlib_filefunc_def mapping; +#ifdef ASSIMP_USE_HUNTER + mapping.zopen_file = (open_file_func)open; + mapping.zread_file = (read_file_func)read; + mapping.zwrite_file = (write_file_func)write; + mapping.ztell_file = (tell_file_func)tell; + mapping.zseek_file = (seek_file_func)seek; + mapping.zclose_file = (close_file_func)close; + mapping.zerror_file = (error_file_func)testerror; +#else mapping.zopen_file = open; mapping.zread_file = read; mapping.zwrite_file = write; @@ -130,6 +139,7 @@ zlib_filefunc_def IOSystem2Unzip::get(IOSystem* pIOHandler) { mapping.zseek_file = seek; mapping.zclose_file = close; mapping.zerror_file = testerror; +#endif mapping.opaque = (voidpf) pIOHandler; return mapping; From d00f4f4b3abfd86463b7de8b1d083b43ed191a85 Mon Sep 17 00:00:00 2001 From: Rahul Sheth Date: Fri, 24 May 2019 17:34:25 -0400 Subject: [PATCH 23/24] Build Hunter-compatible config file --- CMakeLists.txt | 96 ++++++++++++++++++++--------- cmake/assimp-hunter-config.cmake.in | 14 +++++ code/CMakeLists.txt | 21 +++++-- 3 files changed, 98 insertions(+), 33 deletions(-) create mode 100644 cmake/assimp-hunter-config.cmake.in diff --git a/CMakeLists.txt b/CMakeLists.txt index 9b782f04c..ad0462531 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,6 +34,8 @@ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. #---------------------------------------------------------------------- +SET(CMAKE_POLICY_DEFAULT_CMP0074 NEW) + CMAKE_MINIMUM_REQUIRED( VERSION 3.0 ) # Toggles the use of the hunter package manager @@ -49,7 +51,7 @@ IF(HUNTER_ENABLED) add_definitions(-DASSIMP_USE_HUNTER) ENDIF(HUNTER_ENABLED) -PROJECT( Assimp ) +PROJECT( Assimp VERSION 5.0.0 ) # All supported options ############################################### @@ -164,12 +166,11 @@ ELSE() ENDIF(NOT BUILD_SHARED_LIBS) # Define here the needed parameters -SET (ASSIMP_VERSION_MAJOR 5) -SET (ASSIMP_VERSION_MINOR 0) -SET (ASSIMP_VERSION_PATCH 0) +SET (ASSIMP_VERSION_MAJOR ${PROJECT_VERSION_MAJOR}) +SET (ASSIMP_VERSION_MINOR ${PROJECT_VERSION_MINOR}) +SET (ASSIMP_VERSION_PATCH ${PROJECT_VERSION_PATCH}) SET (ASSIMP_VERSION ${ASSIMP_VERSION_MAJOR}.${ASSIMP_VERSION_MINOR}.${ASSIMP_VERSION_PATCH}) -SET (ASSIMP_SOVERSION 4) -SET (PROJECT_VERSION "${ASSIMP_VERSION}") +SET (ASSIMP_SOVERSION 5) SET( ASSIMP_PACKAGE_VERSION "0" CACHE STRING "the package-specific version used for uploading the sources" ) @@ -353,28 +354,67 @@ IF (NOT TARGET uninstall) ADD_CUSTOM_TARGET(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake") ENDIF() -# cmake configuration files -CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimp-config.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimp-config.cmake" @ONLY IMMEDIATE) -CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets.cmake" @ONLY IMMEDIATE) -IF (is_multi_config) - CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-debug.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" @ONLY IMMEDIATE) - CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-release.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake" @ONLY IMMEDIATE) - SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake") -ELSEIF (CMAKE_BUILD_TYPE STREQUAL Debug) - CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-debug.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" @ONLY IMMEDIATE) - SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake") -ELSE() - CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-release.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake" @ONLY IMMEDIATE) - SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake") -ENDIF() -CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimp-config-version.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimp-config-version.cmake" @ONLY IMMEDIATE) -#we should generated these scripts after CMake VERSION 3.0.2 using export(EXPORT ...) and write_basic_package_version_file(...) -INSTALL(FILES - "${CMAKE_CURRENT_BINARY_DIR}/assimp-config.cmake" - "${CMAKE_CURRENT_BINARY_DIR}/assimp-config-version.cmake" - "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets.cmake" - ${PACKAGE_TARGETS_FILE} - DESTINATION "${ASSIMP_LIB_INSTALL_DIR}/cmake/assimp-${ASSIMP_VERSION_MAJOR}.${ASSIMP_VERSION_MINOR}" COMPONENT ${LIBASSIMP-DEV_COMPONENT}) +IF(HUNTER_ENABLED) + set(CONFIG_INSTALL_DIR "lib/cmake/${PROJECT_NAME}") + set(INCLUDE_INSTALL_DIR "include") + + set(GENERATED_DIR "${CMAKE_CURRENT_BINARY_DIR}/generated") + + # Configuration + set(VERSION_CONFIG "${GENERATED_DIR}/${PROJECT_NAME}ConfigVersion.cmake") + set(PROJECT_CONFIG "${GENERATED_DIR}/${PROJECT_NAME}Config.cmake") + set(TARGETS_EXPORT_NAME "${PROJECT_NAME}Targets") + set(NAMESPACE "${PROJECT_NAME}::") + + # Include module with fuction 'write_basic_package_version_file' + include(CMakePackageConfigHelpers) + + # Note: PROJECT_VERSION is used as a VERSION + write_basic_package_version_file("${VERSION_CONFIG}" COMPATIBILITY SameMajorVersion) + + # Use variables: + # * TARGETS_EXPORT_NAME + # * PROJECT_NAME + configure_package_config_file( + "cmake/assimp-hunter-config.cmake.in" + "${PROJECT_CONFIG}" + INSTALL_DESTINATION "${CONFIG_INSTALL_DIR}" + ) + + install( + FILES "${PROJECT_CONFIG}" "${VERSION_CONFIG}" + DESTINATION "${CONFIG_INSTALL_DIR}" + ) + + install( + EXPORT "${TARGETS_EXPORT_NAME}" + NAMESPACE "${NAMESPACE}" + DESTINATION "${CONFIG_INSTALL_DIR}" + ) +ELSE(HUNTER_ENABLED) + # cmake configuration files + CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimp-config.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimp-config.cmake" @ONLY IMMEDIATE) + CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets.cmake" @ONLY IMMEDIATE) + IF (is_multi_config) + CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-debug.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" @ONLY IMMEDIATE) + CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-release.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake" @ONLY IMMEDIATE) + SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake") + ELSEIF (CMAKE_BUILD_TYPE STREQUAL Debug) + CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-debug.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake" @ONLY IMMEDIATE) + SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-debug.cmake") + ELSE() + CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimpTargets-release.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake" @ONLY IMMEDIATE) + SET(PACKAGE_TARGETS_FILE "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets-release.cmake") + ENDIF() + CONFIGURE_FILE("${CMAKE_CURRENT_SOURCE_DIR}/assimp-config-version.cmake.in" "${CMAKE_CURRENT_BINARY_DIR}/assimp-config-version.cmake" @ONLY IMMEDIATE) + #we should generated these scripts after CMake VERSION 3.0.2 using export(EXPORT ...) and write_basic_package_version_file(...) + INSTALL(FILES + "${CMAKE_CURRENT_BINARY_DIR}/assimp-config.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/assimp-config-version.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/assimpTargets.cmake" + ${PACKAGE_TARGETS_FILE} + DESTINATION "${ASSIMP_LIB_INSTALL_DIR}/cmake/assimp-${ASSIMP_VERSION_MAJOR}.${ASSIMP_VERSION_MINOR}" COMPONENT ${LIBASSIMP-DEV_COMPONENT}) +ENDIF(HUNTER_ENABLED) FIND_PACKAGE( DirectX ) diff --git a/cmake/assimp-hunter-config.cmake.in b/cmake/assimp-hunter-config.cmake.in new file mode 100644 index 000000000..34762ac54 --- /dev/null +++ b/cmake/assimp-hunter-config.cmake.in @@ -0,0 +1,14 @@ +@PACKAGE_INIT@ + +find_package(RapidJSON CONFIG REQUIRED) +find_package(ZLIB CONFIG REQUIRED) +find_package(utf8 CONFIG REQUIRED) +find_package(irrXML CONFIG REQUIRED) +find_package(minizip CONFIG REQUIRED) +find_package(openddlparser CONFIG REQUIRED) +find_package(poly2tri CONFIG REQUIRED) +find_package(polyclipping CONFIG REQUIRED) +find_package(zip CONFIG REQUIRED) + +include("${CMAKE_CURRENT_LIST_DIR}/@TARGETS_EXPORT_NAME@.cmake") +check_required_components("@PROJECT_NAME@") diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt index ef2845c7a..f30900337 100644 --- a/code/CMakeLists.txt +++ b/code/CMakeLists.txt @@ -1209,12 +1209,23 @@ IF (RT_FOUND AND ASSIMP_IMPORTER_GLTF_USE_OPEN3DGC) TARGET_LINK_LIBRARIES(assimp ${RT_LIBRARY}) ENDIF (RT_FOUND AND ASSIMP_IMPORTER_GLTF_USE_OPEN3DGC) +IF(HUNTER_ENABLED) + INSTALL( TARGETS assimp + EXPORT "${TARGETS_EXPORT_NAME}" + LIBRARY DESTINATION ${ASSIMP_LIB_INSTALL_DIR} + ARCHIVE DESTINATION ${ASSIMP_LIB_INSTALL_DIR} + RUNTIME DESTINATION ${ASSIMP_BIN_INSTALL_DIR} + FRAMEWORK DESTINATION ${ASSIMP_LIB_INSTALL_DIR} + COMPONENT ${LIBASSIMP_COMPONENT} + INCLUDES DESTINATION "include") +ELSE(HUNTER_ENABLED) INSTALL( TARGETS assimp - LIBRARY DESTINATION ${ASSIMP_LIB_INSTALL_DIR} - ARCHIVE DESTINATION ${ASSIMP_LIB_INSTALL_DIR} - RUNTIME DESTINATION ${ASSIMP_BIN_INSTALL_DIR} - FRAMEWORK DESTINATION ${ASSIMP_LIB_INSTALL_DIR} - COMPONENT ${LIBASSIMP_COMPONENT}) + LIBRARY DESTINATION ${ASSIMP_LIB_INSTALL_DIR} + ARCHIVE DESTINATION ${ASSIMP_LIB_INSTALL_DIR} + RUNTIME DESTINATION ${ASSIMP_BIN_INSTALL_DIR} + FRAMEWORK DESTINATION ${ASSIMP_LIB_INSTALL_DIR} + COMPONENT ${LIBASSIMP_COMPONENT}) +ENDIF(HUNTER_ENABLED) INSTALL( FILES ${PUBLIC_HEADERS} DESTINATION ${ASSIMP_INCLUDE_INSTALL_DIR}/assimp COMPONENT assimp-dev) INSTALL( FILES ${COMPILER_HEADERS} DESTINATION ${ASSIMP_INCLUDE_INSTALL_DIR}/assimp/Compiler COMPONENT assimp-dev) From 6c3337449149f0fe67706a6998cdea95c54d5689 Mon Sep 17 00:00:00 2001 From: Rahul Sheth Date: Thu, 13 Jun 2019 22:08:34 -0700 Subject: [PATCH 24/24] update install interface location --- code/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt index f30900337..c0f870dd3 100644 --- a/code/CMakeLists.txt +++ b/code/CMakeLists.txt @@ -1095,7 +1095,7 @@ ADD_LIBRARY(assimp::assimp ALIAS assimp) TARGET_INCLUDE_DIRECTORIES ( assimp PUBLIC $ $ - $ + $ ) IF(HUNTER_ENABLED)