Fix the compile pass, still unresolved symbols.

pull/2506/head
Kim Kulling 2019-06-10 23:26:00 +02:00
parent 2d985b92c9
commit 2da3a38d60
89 changed files with 426 additions and 466 deletions

View File

@ -1,7 +1,7 @@
# Open Asset Import Library (assimp) # Open Asset Import Library (assimp)
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
# Copyright (c) 2006-2019, assimp team # Copyright (c) 2006-2019, assimp team
#
# All rights reserved. # All rights reserved.
# #
# Redistribution and use of this software in source and binary forms, # Redistribution and use of this software in source and binary forms,
@ -203,6 +203,7 @@ CONFIGURE_FILE(
INCLUDE_DIRECTORIES( BEFORE INCLUDE_DIRECTORIES( BEFORE
./ ./
code/
include include
${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_CURRENT_BINARY_DIR}/include ${CMAKE_CURRENT_BINARY_DIR}/include

View File

@ -48,7 +48,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// internal headers // internal headers
#include "3DSLoader.h" #include "3DSLoader.h"
#include "TargetAnimation.h" #include "Common/TargetAnimation.h"
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include <assimp/StringComparison.h> #include <assimp/StringComparison.h>

View File

@ -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_EXPORT
#ifndef ASSIMP_BUILD_NO_3DS_EXPORTER #ifndef ASSIMP_BUILD_NO_3DS_EXPORTER
#include "3DSExporter.h" #include "3DS/3DSExporter.h"
#include "3DSLoader.h" #include "3DS/3DSLoader.h"
#include "3DSHelper.h" #include "3DS/3DSHelper.h"
#include "PostProcessing/SplitLargeMeshes.h"
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include "SplitLargeMeshes.h"
#include <assimp/StringComparison.h> #include <assimp/StringComparison.h>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include <assimp/Exporter.hpp> #include <assimp/Exporter.hpp>
#include <memory> #include <memory>
using namespace Assimp; using namespace Assimp;

View File

@ -53,7 +53,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <assimp/ParsingUtils.h> #include <assimp/ParsingUtils.h>
#include <assimp/fast_atof.h> #include <assimp/fast_atof.h>
#include <assimp/Subdivision.h> #include <assimp/Subdivision.h>
#include "Importer.h" #include "Common/Importer.h"
#include <assimp/BaseImporter.h> #include <assimp/BaseImporter.h>
#include <assimp/Importer.hpp> #include <assimp/Importer.hpp>
#include <assimp/light.h> #include <assimp/light.h>

View File

@ -53,7 +53,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "ASELoader.h" #include "ASELoader.h"
#include <assimp/StringComparison.h> #include <assimp/StringComparison.h>
#include <assimp/SkeletonMeshBuilder.h> #include <assimp/SkeletonMeshBuilder.h>
#include "TargetAnimation.h" #include "Common/TargetAnimation.h"
#include <assimp/Importer.hpp> #include <assimp/Importer.hpp>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
@ -88,23 +89,25 @@ ASEImporter::ASEImporter()
, mBuffer() , mBuffer()
, pcScene() , pcScene()
, configRecomputeNormals() , configRecomputeNormals()
, noSkeletonMesh() , noSkeletonMesh() {
{} // empty
}
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Destructor, private as well // Destructor, private as well
ASEImporter::~ASEImporter() ASEImporter::~ASEImporter() {
{} // empty
}
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Returns whether the class can handle the format of the given file. // 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 // check file extension
const std::string extension = GetExtension(pFile); const std::string extension = GetExtension(pFile);
if( extension == "ase" || extension == "ask") if (extension == "ase" || extension == "ask") {
return true; return true;
}
if ((!extension.length() || cs) && pIOHandler) { if ((!extension.length() || cs) && pIOHandler) {
const char* tokens[] = {"*3dsmax_asciiexport"}; const char* tokens[] = {"*3dsmax_asciiexport"};
@ -115,15 +118,13 @@ bool ASEImporter::CanRead( const std::string& pFile, IOSystem* pIOHandler, bool
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Loader meta information // Loader meta information
const aiImporterDesc* ASEImporter::GetInfo () const const aiImporterDesc* ASEImporter::GetInfo () const {
{
return &desc; return &desc;
} }
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Setup configuration options // Setup configuration options
void ASEImporter::SetupProperties(const Importer* pImp) void ASEImporter::SetupProperties(const Importer* pImp) {
{
configRecomputeNormals = (pImp->GetPropertyInteger( configRecomputeNormals = (pImp->GetPropertyInteger(
AI_CONFIG_IMPORT_ASE_RECONSTRUCT_NORMALS,1) ? true : false); 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. // Imports the given file into the given scene structure.
void ASEImporter::InternReadFile( const std::string& pFile, void ASEImporter::InternReadFile( const std::string& pFile,
aiScene* pScene, IOSystem* pIOHandler) aiScene* pScene, IOSystem* pIOHandler) {
{
std::unique_ptr<IOStream> file( pIOHandler->Open( pFile, "rb")); std::unique_ptr<IOStream> file( pIOHandler->Open( pFile, "rb"));
// Check whether we can read from the file // Check whether we can read from the file
if( file.get() == NULL) { if( file.get() == nullptr) {
throw DeadlyImportError( "Failed to open ASE file " + pFile + "."); throw DeadlyImportError( "Failed to open ASE file " + pFile + ".");
} }

View File

@ -4,7 +4,6 @@ Open Asset Import Library (assimp)
Copyright (c) 2006-2019, assimp team Copyright (c) 2006-2019, assimp team
All rights reserved. All rights reserved.
Redistribution and use of this software in source and binary forms, Redistribution and use of this software in source and binary forms,

View File

@ -49,15 +49,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_3DS_IMPORTER #ifndef ASSIMP_BUILD_NO_3DS_IMPORTER
// internal headers // internal headers
#include "TextureTransform.h" #include "PostProcessing/TextureTransform.h"
#include "ASELoader.h" #include "ASELoader.h"
#include <assimp/fast_atof.h> #include <assimp/fast_atof.h>
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
using namespace Assimp; using namespace Assimp;
using namespace Assimp::ASE; using namespace Assimp::ASE;
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Begin an ASE parsing function // Begin an ASE parsing function

View File

@ -57,7 +57,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <assimp/qnan.h> #include <assimp/qnan.h>
// ASE is quite similar to 3ds. We can reuse some structures // ASE is quite similar to 3ds. We can reuse some structures
#include "3DSLoader.h" #include "3DS/3DSLoader.h"
namespace Assimp { namespace Assimp {
namespace ASE { namespace ASE {

View File

@ -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_EXPORT
#ifndef ASSIMP_BUILD_NO_ASSBIN_EXPORTER #ifndef ASSIMP_BUILD_NO_ASSBIN_EXPORTER
#include "assbin_chunks.h" #include "Common/assbin_chunks.h"
#include "PostProcessing/ProcessHelper.h"
#include <assimp/version.h> #include <assimp/version.h>
#include <assimp/IOStream.hpp> #include <assimp/IOStream.hpp>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/Exporter.hpp> #include <assimp/Exporter.hpp>
#include "ProcessHelper.h"
#include <assimp/Exceptional.h> #include <assimp/Exceptional.h>
#ifdef ASSIMP_BUILD_NO_OWN_ZLIB #ifdef ASSIMP_BUILD_NO_OWN_ZLIB

View File

@ -50,8 +50,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_ASSBIN_IMPORTER #ifndef ASSIMP_BUILD_NO_ASSBIN_IMPORTER
// internal headers // internal headers
#include "AssbinLoader.h" #include "Assbin/AssbinLoader.h"
#include "assbin_chunks.h" #include "Common/assbin_chunks.h"
#include <assimp/MemoryIOWrapper.h> #include <assimp/MemoryIOWrapper.h>
#include <assimp/mesh.h> #include <assimp/mesh.h>
#include <assimp/anim.h> #include <assimp/anim.h>

View File

@ -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_EXPORT
#ifndef ASSIMP_BUILD_NO_ASSXML_EXPORTER #ifndef ASSIMP_BUILD_NO_ASSXML_EXPORTER
#include <stdarg.h> #include "PostProcessing/ProcessHelper.h"
#include <assimp/version.h> #include <assimp/version.h>
#include "ProcessHelper.h"
#include <assimp/IOStream.hpp> #include <assimp/IOStream.hpp>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/Exporter.hpp> #include <assimp/Exporter.hpp>
#include <stdarg.h>
#ifdef ASSIMP_BUILD_NO_OWN_ZLIB #ifdef ASSIMP_BUILD_NO_OWN_ZLIB
# include <zlib.h> # include <zlib.h>
#else #else

View File

@ -49,17 +49,19 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_B3D_IMPORTER #ifndef ASSIMP_BUILD_NO_B3D_IMPORTER
// internal headers // internal headers
#include "B3DImporter.h" #include "B3D/B3DImporter.h"
#include "TextureTransform.h" #include "PostProcessing/TextureTransform.h"
#include "ConvertToLHProcess.h" #include "PostProcessing/ConvertToLHProcess.h"
#include <assimp/StringUtils.h> #include <assimp/StringUtils.h>
#include <memory>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/anim.h> #include <assimp/anim.h>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include <assimp/importerdesc.h> #include <assimp/importerdesc.h>
#include <memory>
using namespace Assimp; using namespace Assimp;
using namespace std; using namespace std;

View File

@ -49,7 +49,7 @@ Assimp C export interface. See Exporter.cpp for some notes.
#include "CInterfaceIOWrapper.h" #include "CInterfaceIOWrapper.h"
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include "ScenePrivate.h" #include "Common/ScenePrivate.h"
#include <assimp/Exporter.hpp> #include <assimp/Exporter.hpp>
using namespace Assimp; using namespace Assimp;

View File

@ -2,8 +2,7 @@
# ---------------------------------------------------------------------- # ----------------------------------------------------------------------
# #
# Copyright (c) 2006-2019, assimp team # Copyright (c) 2006-2019, assimp team
#
# All rights reserved. # All rights reserved.
# #
# Redistribution and use of this software in source and binary forms, # Redistribution and use of this software in source and binary forms,

View File

@ -45,20 +45,22 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_COB_IMPORTER #ifndef ASSIMP_BUILD_NO_COB_IMPORTER
#include "COBLoader.h" #include "COB/COBLoader.h"
#include "COBScene.h" #include "COB/COBScene.h"
#include "ConvertToLHProcess.h" #include "PostProcessing/ConvertToLHProcess.h"
#include <assimp/StreamReader.h> #include <assimp/StreamReader.h>
#include <assimp/ParsingUtils.h> #include <assimp/ParsingUtils.h>
#include <assimp/fast_atof.h> #include <assimp/fast_atof.h>
#include <assimp/LineSplitter.h> #include <assimp/LineSplitter.h>
#include <assimp/TinyFormatter.h> #include <assimp/TinyFormatter.h>
#include <memory>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/importerdesc.h> #include <assimp/importerdesc.h>
#include <memory>
using namespace Assimp; using namespace Assimp;
using namespace Assimp::COB; using namespace Assimp::COB;
using namespace Assimp::Formatter; using namespace Assimp::Formatter;

View File

@ -54,7 +54,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <assimp/Exceptional.h> #include <assimp/Exceptional.h>
#include <assimp/BaseImporter.h> #include <assimp/BaseImporter.h>
#include "CInterfaceIOWrapper.h" #include "CApi/CInterfaceIOWrapper.h"
#include "Importer.h" #include "Importer.h"
#include "ScenePrivate.h" #include "ScenePrivate.h"

View File

@ -61,15 +61,16 @@ Here we implement only the C++ interface (Assimp::Exporter).
#include <assimp/mesh.h> #include <assimp/mesh.h>
#include <assimp/postprocess.h> #include <assimp/postprocess.h>
#include <assimp/scene.h> #include <assimp/scene.h>
#include "DefaultProgressHandler.h"
#include "BaseProcess.h"
#include "JoinVerticesProcess.h"
#include "MakeVerboseFormat.h"
#include "ConvertToLHProcess.h"
#include "PretransformVertices.h"
#include <assimp/Exceptional.h> #include <assimp/Exceptional.h>
#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 <memory> #include <memory>

View File

@ -64,15 +64,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Internal headers // Internal headers
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
#include "Importer.h" #include "Common/Importer.h"
#include <assimp/BaseImporter.h> #include "Common/BaseProcess.h"
#include "BaseProcess.h" #include "Common/DefaultProgressHandler.h"
#include "PostProcessing/ProcessHelper.h"
#include "Common/ScenePreprocessor.h"
#include "Common/ScenePrivate.h"
#include "DefaultProgressHandler.h" #include <assimp/BaseImporter.h>
#include <assimp/GenericProperty.h> #include <assimp/GenericProperty.h>
#include "ProcessHelper.h"
#include "ScenePreprocessor.h"
#include "ScenePrivate.h"
#include <assimp/MemoryIOWrapper.h> #include <assimp/MemoryIOWrapper.h>
#include <assimp/Profiler.h> #include <assimp/Profiler.h>
#include <assimp/TinyFormatter.h> #include <assimp/TinyFormatter.h>
@ -86,7 +86,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <assimp/DefaultIOSystem.h> #include <assimp/DefaultIOSystem.h>
#ifndef ASSIMP_BUILD_NO_VALIDATEDS_PROCESS #ifndef ASSIMP_BUILD_NO_VALIDATEDS_PROCESS
# include "ValidateDataStructure.h" # include "PostProcessing/ValidateDataStructure.h"
#endif #endif
using namespace Assimp::Profiling; using namespace Assimp::Profiling;

View File

@ -56,146 +56,146 @@ corresponding preprocessor flag to selectively disable formats.
// (include_new_importers_here) // (include_new_importers_here)
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
#ifndef ASSIMP_BUILD_NO_X_IMPORTER #ifndef ASSIMP_BUILD_NO_X_IMPORTER
# include "XFileImporter.h" # include "X/XFileImporter.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_AMF_IMPORTER #ifndef ASSIMP_BUILD_NO_AMF_IMPORTER
# include "AMFImporter.hpp" # include "AMF/AMFImporter.hpp"
#endif #endif
#ifndef ASSIMP_BUILD_NO_3DS_IMPORTER #ifndef ASSIMP_BUILD_NO_3DS_IMPORTER
# include "3DSLoader.h" # include "3DS/3DSLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_MD3_IMPORTER #ifndef ASSIMP_BUILD_NO_MD3_IMPORTER
# include "MD3Loader.h" # include "MD3/MD3Loader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_MDL_IMPORTER #ifndef ASSIMP_BUILD_NO_MDL_IMPORTER
# include "MDLLoader.h" # include "MDL/MDLLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_MD2_IMPORTER #ifndef ASSIMP_BUILD_NO_MD2_IMPORTER
# include "MD2Loader.h" # include "MD2/MD2Loader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_PLY_IMPORTER #ifndef ASSIMP_BUILD_NO_PLY_IMPORTER
# include "PlyLoader.h" # include "Ply/PlyLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_ASE_IMPORTER #ifndef ASSIMP_BUILD_NO_ASE_IMPORTER
# include "ASELoader.h" # include "ASE/ASELoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_OBJ_IMPORTER #ifndef ASSIMP_BUILD_NO_OBJ_IMPORTER
# include "ObjFileImporter.h" # include "Obj/ObjFileImporter.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_HMP_IMPORTER #ifndef ASSIMP_BUILD_NO_HMP_IMPORTER
# include "HMPLoader.h" # include "HMP/HMPLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_SMD_IMPORTER #ifndef ASSIMP_BUILD_NO_SMD_IMPORTER
# include "SMDLoader.h" # include "SMD/SMDLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_MDC_IMPORTER #ifndef ASSIMP_BUILD_NO_MDC_IMPORTER
# include "MDCLoader.h" # include "MDC/MDCLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_MD5_IMPORTER #ifndef ASSIMP_BUILD_NO_MD5_IMPORTER
# include "MD5Loader.h" # include "MD5/MD5Loader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_STL_IMPORTER #ifndef ASSIMP_BUILD_NO_STL_IMPORTER
# include "STLLoader.h" # include "STL/STLLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_LWO_IMPORTER #ifndef ASSIMP_BUILD_NO_LWO_IMPORTER
# include "LWOLoader.h" # include "LWO/LWOLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_DXF_IMPORTER #ifndef ASSIMP_BUILD_NO_DXF_IMPORTER
# include "DXFLoader.h" # include "DXF/DXFLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_NFF_IMPORTER #ifndef ASSIMP_BUILD_NO_NFF_IMPORTER
# include "NFFLoader.h" # include "NFF/NFFLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_RAW_IMPORTER #ifndef ASSIMP_BUILD_NO_RAW_IMPORTER
# include "RawLoader.h" # include "Raw/RawLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_SIB_IMPORTER #ifndef ASSIMP_BUILD_NO_SIB_IMPORTER
# include "SIBImporter.h" # include "SIB/SIBImporter.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_OFF_IMPORTER #ifndef ASSIMP_BUILD_NO_OFF_IMPORTER
# include "OFFLoader.h" # include "OFF/OFFLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_AC_IMPORTER #ifndef ASSIMP_BUILD_NO_AC_IMPORTER
# include "ACLoader.h" # include "AC/ACLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_BVH_IMPORTER #ifndef ASSIMP_BUILD_NO_BVH_IMPORTER
# include "BVHLoader.h" # include "BVH/BVHLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_IRRMESH_IMPORTER #ifndef ASSIMP_BUILD_NO_IRRMESH_IMPORTER
# include "IRRMeshLoader.h" # include "IRR/IRRMeshLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_IRR_IMPORTER #ifndef ASSIMP_BUILD_NO_IRR_IMPORTER
# include "IRRLoader.h" # include "IRR/IRRLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_Q3D_IMPORTER #ifndef ASSIMP_BUILD_NO_Q3D_IMPORTER
# include "Q3DLoader.h" # include "Q3D/Q3DLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_B3D_IMPORTER #ifndef ASSIMP_BUILD_NO_B3D_IMPORTER
# include "B3DImporter.h" # include "B3D/B3DImporter.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_COLLADA_IMPORTER #ifndef ASSIMP_BUILD_NO_COLLADA_IMPORTER
# include "ColladaLoader.h" # include "Collada/ColladaLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_TERRAGEN_IMPORTER #ifndef ASSIMP_BUILD_NO_TERRAGEN_IMPORTER
# include "TerragenLoader.h" # include "Terragen/TerragenLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_CSM_IMPORTER #ifndef ASSIMP_BUILD_NO_CSM_IMPORTER
# include "CSMLoader.h" # include "CSM/CSMLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_3D_IMPORTER #ifndef ASSIMP_BUILD_NO_3D_IMPORTER
# include "UnrealLoader.h" # include "Unreal/UnrealLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_LWS_IMPORTER #ifndef ASSIMP_BUILD_NO_LWS_IMPORTER
# include "LWSLoader.h" # include "LWS/LWSLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_OGRE_IMPORTER #ifndef ASSIMP_BUILD_NO_OGRE_IMPORTER
# include "OgreImporter.h" # include "Ogre/OgreImporter.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_OPENGEX_IMPORTER #ifndef ASSIMP_BUILD_NO_OPENGEX_IMPORTER
# include "OpenGEXImporter.h" # include "OpenGEX/OpenGEXImporter.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_MS3D_IMPORTER #ifndef ASSIMP_BUILD_NO_MS3D_IMPORTER
# include "MS3DLoader.h" # include "MS3D/MS3DLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_COB_IMPORTER #ifndef ASSIMP_BUILD_NO_COB_IMPORTER
# include "COBLoader.h" # include "COB/COBLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_BLEND_IMPORTER #ifndef ASSIMP_BUILD_NO_BLEND_IMPORTER
# include "BlenderLoader.h" # include "Blender/BlenderLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_Q3BSP_IMPORTER #ifndef ASSIMP_BUILD_NO_Q3BSP_IMPORTER
# include "Q3BSPFileImporter.h" # include "Q3BSP/Q3BSPFileImporter.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_NDO_IMPORTER #ifndef ASSIMP_BUILD_NO_NDO_IMPORTER
# include "NDOLoader.h" # include "NDO/NDOLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_IFC_IMPORTER #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
# include "Importer/IFC/IFCLoader.h" # include "Importer/IFC/IFCLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_XGL_IMPORTER #ifndef ASSIMP_BUILD_NO_XGL_IMPORTER
# include "XGLLoader.h" # include "XGL/XGLLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_FBX_IMPORTER #ifndef ASSIMP_BUILD_NO_FBX_IMPORTER
# include "FBXImporter.h" # include "FBX/FBXImporter.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_ASSBIN_IMPORTER #ifndef ASSIMP_BUILD_NO_ASSBIN_IMPORTER
# include "AssbinLoader.h" # include "Assbin/AssbinLoader.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER
# include "glTFImporter.h" # include "glTF/glTFImporter.h"
# include "glTF2Importer.h" # include "glTF2/glTF2Importer.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_C4D_IMPORTER #ifndef ASSIMP_BUILD_NO_C4D_IMPORTER
# include "C4DImporter.h" # include "C4D/C4DImporter.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_3MF_IMPORTER #ifndef ASSIMP_BUILD_NO_3MF_IMPORTER
# include "D3MFImporter.h" # include "3MF/D3MFImporter.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_X3D_IMPORTER #ifndef ASSIMP_BUILD_NO_X3D_IMPORTER
# include "X3DImporter.hpp" # include "X3D/X3DImporter.hpp"
#endif #endif
#ifndef ASSIMP_BUILD_NO_MMD_IMPORTER #ifndef ASSIMP_BUILD_NO_MMD_IMPORTER
# include "MMDImporter.h" # include "MMD/MMDImporter.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_STEP_IMPORTER #ifndef ASSIMP_BUILD_NO_STEP_IMPORTER
# include "Importer/StepFile/StepFileImporter.h" # include "Importer/StepFile/StepFileImporter.h"

View File

@ -48,88 +48,88 @@ directly (unless you are adding new steps), instead use the
corresponding preprocessor flag to selectively disable steps. corresponding preprocessor flag to selectively disable steps.
*/ */
#include "ProcessHelper.h" #include "PostProcessing/ProcessHelper.h"
#ifndef ASSIMP_BUILD_NO_CALCTANGENTS_PROCESS #ifndef ASSIMP_BUILD_NO_CALCTANGENTS_PROCESS
# include "CalcTangentsProcess.h" # include "PostProcessing/CalcTangentsProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_JOINVERTICES_PROCESS #ifndef ASSIMP_BUILD_NO_JOINVERTICES_PROCESS
# include "JoinVerticesProcess.h" # include "PostProcessing/JoinVerticesProcess.h"
#endif #endif
#if !(defined ASSIMP_BUILD_NO_MAKELEFTHANDED_PROCESS && defined ASSIMP_BUILD_NO_FLIPUVS_PROCESS && defined ASSIMP_BUILD_NO_FLIPWINDINGORDER_PROCESS) #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 #endif
#ifndef ASSIMP_BUILD_NO_TRIANGULATE_PROCESS #ifndef ASSIMP_BUILD_NO_TRIANGULATE_PROCESS
# include "TriangulateProcess.h" # include "PostProcessing/TriangulateProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_DROPFACENORMALS_PROCESS #ifndef ASSIMP_BUILD_NO_DROPFACENORMALS_PROCESS
# include "DropFaceNormalsProcess.h" # include "PostProcessing/DropFaceNormalsProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_GENFACENORMALS_PROCESS #ifndef ASSIMP_BUILD_NO_GENFACENORMALS_PROCESS
# include "GenFaceNormalsProcess.h" # include "PostProcessing/GenFaceNormalsProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_GENVERTEXNORMALS_PROCESS #ifndef ASSIMP_BUILD_NO_GENVERTEXNORMALS_PROCESS
# include "GenVertexNormalsProcess.h" # include "PostProcessing/GenVertexNormalsProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_REMOVEVC_PROCESS #ifndef ASSIMP_BUILD_NO_REMOVEVC_PROCESS
# include "RemoveVCProcess.h" # include "PostProcessing/RemoveVCProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_SPLITLARGEMESHES_PROCESS #ifndef ASSIMP_BUILD_NO_SPLITLARGEMESHES_PROCESS
# include "SplitLargeMeshes.h" # include "PostProcessing/SplitLargeMeshes.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_PRETRANSFORMVERTICES_PROCESS #ifndef ASSIMP_BUILD_NO_PRETRANSFORMVERTICES_PROCESS
# include "PretransformVertices.h" # include "PostProcessing/PretransformVertices.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_LIMITBONEWEIGHTS_PROCESS #ifndef ASSIMP_BUILD_NO_LIMITBONEWEIGHTS_PROCESS
# include "LimitBoneWeightsProcess.h" # include "PostProcessing/LimitBoneWeightsProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_VALIDATEDS_PROCESS #ifndef ASSIMP_BUILD_NO_VALIDATEDS_PROCESS
# include "ValidateDataStructure.h" # include "PostProcessing/ValidateDataStructure.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_IMPROVECACHELOCALITY_PROCESS #ifndef ASSIMP_BUILD_NO_IMPROVECACHELOCALITY_PROCESS
# include "ImproveCacheLocality.h" # include "PostProcessing/ImproveCacheLocality.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_FIXINFACINGNORMALS_PROCESS #ifndef ASSIMP_BUILD_NO_FIXINFACINGNORMALS_PROCESS
# include "FixNormalsStep.h" # include "PostProcessing/FixNormalsStep.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_REMOVE_REDUNDANTMATERIALS_PROCESS #ifndef ASSIMP_BUILD_NO_REMOVE_REDUNDANTMATERIALS_PROCESS
# include "RemoveRedundantMaterials.h" # include "PostProcessing/RemoveRedundantMaterials.h"
#endif #endif
#if (!defined ASSIMP_BUILD_NO_EMBEDTEXTURES_PROCESS) #if (!defined ASSIMP_BUILD_NO_EMBEDTEXTURES_PROCESS)
# include "EmbedTexturesProcess.h" # include "PostProcessing/EmbedTexturesProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_FINDINVALIDDATA_PROCESS #ifndef ASSIMP_BUILD_NO_FINDINVALIDDATA_PROCESS
# include "FindInvalidDataProcess.h" # include "PostProcessing/FindInvalidDataProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_FINDDEGENERATES_PROCESS #ifndef ASSIMP_BUILD_NO_FINDDEGENERATES_PROCESS
# include "FindDegenerates.h" # include "PostProcessing/FindDegenerates.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_SORTBYPTYPE_PROCESS #ifndef ASSIMP_BUILD_NO_SORTBYPTYPE_PROCESS
# include "SortByPTypeProcess.h" # include "PostProcessing/SortByPTypeProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_GENUVCOORDS_PROCESS #ifndef ASSIMP_BUILD_NO_GENUVCOORDS_PROCESS
# include "ComputeUVMappingProcess.h" # include "PostProcessing/ComputeUVMappingProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_TRANSFORMTEXCOORDS_PROCESS #ifndef ASSIMP_BUILD_NO_TRANSFORMTEXCOORDS_PROCESS
# include "TextureTransform.h" # include "PostProcessing/TextureTransform.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_FINDINSTANCES_PROCESS #ifndef ASSIMP_BUILD_NO_FINDINSTANCES_PROCESS
# include "FindInstancesProcess.h" # include "PostProcessing/FindInstancesProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_OPTIMIZEMESHES_PROCESS #ifndef ASSIMP_BUILD_NO_OPTIMIZEMESHES_PROCESS
# include "OptimizeMeshes.h" # include "PostProcessing/OptimizeMeshes.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_OPTIMIZEGRAPH_PROCESS #ifndef ASSIMP_BUILD_NO_OPTIMIZEGRAPH_PROCESS
# include "OptimizeGraph.h" # include "PostProcessing/OptimizeGraph.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_SPLITBYBONECOUNT_PROCESS #ifndef ASSIMP_BUILD_NO_SPLITBYBONECOUNT_PROCESS
# include "SplitByBoneCountProcess.h" # include "Common/SplitByBoneCountProcess.h"
#endif #endif
#ifndef ASSIMP_BUILD_NO_DEBONE_PROCESS #ifndef ASSIMP_BUILD_NO_DEBONE_PROCESS
# include "DeboneProcess.h" # include "PostProcessing/DeboneProcess.h"
#endif #endif
#if (!defined ASSIMP_BUILD_NO_GLOBALSCALE_PROCESS) #if (!defined ASSIMP_BUILD_NO_GLOBALSCALE_PROCESS)
# include "ScaleProcess.h" # include "PostProcessing/ScaleProcess.h"
#endif #endif
namespace Assimp { namespace Assimp {

View File

@ -43,9 +43,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <assimp/Subdivision.h> #include <assimp/Subdivision.h>
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include <assimp/SpatialSort.h> #include <assimp/SpatialSort.h>
#include "ProcessHelper.h"
#include <assimp/Vertex.h> #include <assimp/Vertex.h>
#include <assimp/ai_assert.h> #include <assimp/ai_assert.h>
#include "PostProcessing/ProcessHelper.h"
#include <stdio.h> #include <stdio.h>
using namespace Assimp; using namespace Assimp;
@ -56,8 +58,7 @@ void mydummy() {}
* implementation is basing on recursive refinement. Directly evaluating the result is also * implementation is basing on recursive refinement. Directly evaluating the result is also
* possible and much quicker, but it depends on lengthy matrix lookup tables. */ * possible and much quicker, but it depends on lengthy matrix lookup tables. */
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
class CatmullClarkSubdivider : public Subdivider class CatmullClarkSubdivider : public Subdivider {
{
public: public:
void Subdivide (aiMesh* mesh, aiMesh*& out, unsigned int num, bool discard_input); void Subdivide (aiMesh* mesh, aiMesh*& out, unsigned int num, bool discard_input);
void Subdivide (aiMesh** smesh, size_t nmesh, void Subdivide (aiMesh** smesh, size_t nmesh,

View File

@ -48,12 +48,12 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_DXF_IMPORTER #ifndef ASSIMP_BUILD_NO_DXF_IMPORTER
#include "DXFLoader.h" #include "DXF/DXFLoader.h"
#include <assimp/ParsingUtils.h> #include "DXF/DXFHelper.h"
#include "ConvertToLHProcess.h" #include "PostProcessing/ConvertToLHProcess.h"
#include <assimp/fast_atof.h>
#include "DXFHelper.h" #include <assimp/ParsingUtils.h>
#include <assimp/fast_atof.h>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/importerdesc.h> #include <assimp/importerdesc.h>

View File

@ -47,14 +47,16 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_HMP_IMPORTER #ifndef ASSIMP_BUILD_NO_HMP_IMPORTER
// internal headers // internal headers
#include "HMPLoader.h" #include "HMP/HMPLoader.h"
#include "MD2FileData.h" #include "MD2/MD2FileData.h"
#include <memory>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/importerdesc.h> #include <assimp/importerdesc.h>
#include <memory>
using namespace Assimp; using namespace Assimp;
static const aiImporterDesc desc = { static const aiImporterDesc desc = {

View File

@ -48,8 +48,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// internal headers // internal headers
#include <assimp/BaseImporter.h> #include <assimp/BaseImporter.h>
#include "MDLLoader.h"
#include "HMPFileData.h" #include "MDL/MDLLoader.h"
#include "HMP/HMPFileData.h"
namespace Assimp { namespace Assimp {
using namespace HMP; using namespace HMP;

View File

@ -44,8 +44,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_IFC_IMPORTER #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
#include "code/Importer/IFC/IFCUtil.h" #include "code/Importer/IFC/IFCUtil.h"
#include "code/PolyTools.h" #include "code/Common/PolyTools.h"
#include "code/ProcessHelper.h" #include "code/PostProcessing/ProcessHelper.h"
#include <assimp/Defines.h> #include <assimp/Defines.h>
#include <iterator> #include <iterator>

View File

@ -46,13 +46,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_IFC_IMPORTER #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
#include "IFCUtil.h" #include "IFCUtil.h"
#include "code/PolyTools.h" #include "Common/PolyTools.h"
#include "code/ProcessHelper.h" #include "PostProcessing/ProcessHelper.h"
#include "../contrib/poly2tri/poly2tri/poly2tri.h" #include "../contrib/poly2tri/poly2tri/poly2tri.h"
#include "../contrib/clipper/clipper.hpp" #include "../contrib/clipper/clipper.hpp"
#include <memory>
#include <memory>
#include <iterator> #include <iterator>
namespace Assimp { namespace Assimp {

View File

@ -46,8 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_IFC_IMPORTER #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
#include "IFCUtil.h" #include "IFCUtil.h"
#include "code/PolyTools.h" #include "Common/PolyTools.h"
#include "code/ProcessHelper.h" #include "PostProcessing/ProcessHelper.h"
#include "../contrib/poly2tri/poly2tri/poly2tri.h" #include "../contrib/poly2tri/poly2tri/poly2tri.h"
#include "../contrib/clipper/clipper.hpp" #include "../contrib/clipper/clipper.hpp"

View File

@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef INCLUDED_IFC_READER_GEN_H #ifndef INCLUDED_IFC_READER_GEN_H
#define INCLUDED_IFC_READER_GEN_H #define INCLUDED_IFC_READER_GEN_H
#include "code/STEPFile.h" #include "code/Step/STEPFile.h"
namespace Assimp { namespace Assimp {
namespace IFC { namespace IFC {

View File

@ -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. * @brief Implementation of conversion routines for some common Ifc helper entities.
*/ */
#ifndef ASSIMP_BUILD_NO_IFC_IMPORTER #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
#include "code/Importer/IFC/IFCUtil.h" #include "Importer/IFC/IFCUtil.h"
#include "code/PolyTools.h" #include "Common/PolyTools.h"
#include "code/ProcessHelper.h" #include "PostProcessing/ProcessHelper.h"
#include <assimp/Defines.h> #include <assimp/Defines.h>
namespace Assimp { namespace Assimp {
namespace IFC { namespace IFC {
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
void TempOpening::Transform(const IfcMatrix4& mat) void TempOpening::Transform(const IfcMatrix4& mat) {
{
if(profileMesh) { if(profileMesh) {
profileMesh->Transform(mat); profileMesh->Transform(mat);
} }

View File

@ -49,7 +49,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "IFCReaderGen_2x3.h" #include "IFCReaderGen_2x3.h"
#include "IFCLoader.h" #include "IFCLoader.h"
#include "code/STEPFile.h" #include "code/Step/STEPFile.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
#include <assimp/material.h> #include <assimp/material.h>

View File

@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef INCLUDED_AI_STEPFILEREADER_H #ifndef INCLUDED_AI_STEPFILEREADER_H
#define INCLUDED_AI_STEPFILEREADER_H #define INCLUDED_AI_STEPFILEREADER_H
#include "code/STEPFile.h" #include "code/Step/STEPFile.h"
namespace Assimp { namespace Assimp {
namespace STEP { namespace STEP {

View File

@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef INCLUDED_STEPFILE_READER_GEN_H #ifndef INCLUDED_STEPFILE_READER_GEN_H
#define INCLUDED_STEPFILE_READER_GEN_H #define INCLUDED_STEPFILE_READER_GEN_H
#include "code/STEPFile.h" #include "code/Step/STEPFile.h"
namespace Assimp { namespace Assimp {
namespace StepFile { namespace StepFile {

View File

@ -49,18 +49,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_IRR_IMPORTER #ifndef ASSIMP_BUILD_NO_IRR_IMPORTER
#include "IRRLoader.h" #include "IRR/IRRLoader.h"
#include "Common/Importer.h"
#include <assimp/ParsingUtils.h> #include <assimp/ParsingUtils.h>
#include <assimp/fast_atof.h> #include <assimp/fast_atof.h>
#include <assimp/GenericProperty.h> #include <assimp/GenericProperty.h>
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include <assimp/StandardShapes.h> #include <assimp/StandardShapes.h>
#include "Importer.h"
// We need MathFunctions.h to compute the lcm/gcd of a number
#include <assimp/MathFunctions.h> #include <assimp/MathFunctions.h>
#include <memory>
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include <assimp/mesh.h> #include <assimp/mesh.h>
#include <assimp/material.h> #include <assimp/material.h>
@ -69,6 +66,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <assimp/postprocess.h> #include <assimp/postprocess.h>
#include <assimp/importerdesc.h> #include <assimp/importerdesc.h>
#include <memory>
using namespace Assimp; using namespace Assimp;
using namespace irr; using namespace irr;
using namespace irr::io; using namespace irr::io;

View File

@ -48,15 +48,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_IRRLOADER_H_INCLUDED #ifndef AI_IRRLOADER_H_INCLUDED
#define AI_IRRLOADER_H_INCLUDED #define AI_IRRLOADER_H_INCLUDED
#include "IRRShared.h" #include "IRR/IRRShared.h"
#include "Common/Importer.h"
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include "Importer.h"
#include <assimp/StringUtils.h> #include <assimp/StringUtils.h>
#include <assimp/anim.h> #include <assimp/anim.h>
namespace Assimp { namespace Assimp {
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
/** Irr importer class. /** Irr importer class.
* *
@ -64,15 +64,11 @@ namespace Assimp {
* irrEdit. As IrrEdit itself is capable of importing quite many file formats, * irrEdit. As IrrEdit itself is capable of importing quite many file formats,
* it might be a good file format for data exchange. * it might be a good file format for data exchange.
*/ */
class IRRImporter : public BaseImporter, public IrrlichtBase class IRRImporter : public BaseImporter, public IrrlichtBase {
{
public: public:
IRRImporter(); IRRImporter();
~IRRImporter(); ~IRRImporter();
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Returns whether the class can handle the format of the given file. /** Returns whether the class can handle the format of the given file.
* See BaseImporter::CanRead() for details. * See BaseImporter::CanRead() for details.
@ -81,32 +77,17 @@ public:
bool checkSig) const; bool checkSig) const;
protected: protected:
// -------------------------------------------------------------------
/**
*/
const aiImporterDesc* GetInfo () const; 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); void SetupProperties(const Importer* pImp);
private: private:
/** Data structure for a scenegraph node animator /** Data structure for a scenegraph node animator
*/ */
struct Animator struct Animator {
{
// Type of the animator // Type of the animator
enum AT enum AT {
{
UNKNOWN = 0x0, UNKNOWN = 0x0,
ROTATION = 0x1, ROTATION = 0x1,
FLY_CIRCLE = 0x2, FLY_CIRCLE = 0x2,

View File

@ -57,8 +57,8 @@ The chunks are taken from the official LightWave SDK headers.
#include <assimp/mesh.h> #include <assimp/mesh.h>
// internal headers // internal headers
#include "IFF.h" #include "Common/IFF.h"
#include "LWOAnimation.h" #include "LWO/LWOAnimation.h"
namespace Assimp { namespace Assimp {
namespace LWO { namespace LWO {

View File

@ -49,14 +49,16 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_LWO_IMPORTER #ifndef ASSIMP_BUILD_NO_LWO_IMPORTER
// internal headers // internal headers
#include "LWOLoader.h" #include "LWO/LWOLoader.h"
#include "PostProcessing/ProcessHelper.h"
#include "PostProcessing/ConvertToLHProcess.h"
#include <assimp/StringComparison.h> #include <assimp/StringComparison.h>
#include <assimp/SGSpatialSort.h> #include <assimp/SGSpatialSort.h>
#include <assimp/ByteSwapper.h> #include <assimp/ByteSwapper.h>
#include "ProcessHelper.h"
#include "ConvertToLHProcess.h"
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/importerdesc.h> #include <assimp/importerdesc.h>
#include <memory> #include <memory>
#include <sstream> #include <sstream>
#include <iomanip> #include <iomanip>

View File

@ -48,19 +48,20 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_LWS_IMPORTER #ifndef ASSIMP_BUILD_NO_LWS_IMPORTER
#include "LWSLoader.h" #include "LWS/LWSLoader.h"
#include "PostProcessing/ConvertToLHProcess.h"
#include "Common/Importer.h"
#include <assimp/ParsingUtils.h> #include <assimp/ParsingUtils.h>
#include <assimp/fast_atof.h> #include <assimp/fast_atof.h>
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include <assimp/GenericProperty.h> #include <assimp/GenericProperty.h>
#include <assimp/SkeletonMeshBuilder.h> #include <assimp/SkeletonMeshBuilder.h>
#include "ConvertToLHProcess.h"
#include "Importer.h"
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/importerdesc.h> #include <assimp/importerdesc.h>
#include <memory> #include <memory>
using namespace Assimp; using namespace Assimp;

View File

@ -46,7 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_LWSLOADER_H_INCLUDED #ifndef AI_LWSLOADER_H_INCLUDED
#define AI_LWSLOADER_H_INCLUDED #define AI_LWSLOADER_H_INCLUDED
#include "LWOFileData.h" #include "LWO/LWOFileData.h"
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include <assimp/BaseImporter.h> #include <assimp/BaseImporter.h>

View File

@ -53,19 +53,21 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_MD3_IMPORTER #ifndef ASSIMP_BUILD_NO_MD3_IMPORTER
#include "MD3Loader.h" #include "MD3/MD3Loader.h"
#include "Common/Importer.h"
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include <assimp/GenericProperty.h> #include <assimp/GenericProperty.h>
#include <assimp/RemoveComments.h> #include <assimp/RemoveComments.h>
#include <assimp/ParsingUtils.h> #include <assimp/ParsingUtils.h>
#include "Importer.h"
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include <memory>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/material.h> #include <assimp/material.h>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/importerdesc.h> #include <assimp/importerdesc.h>
#include <cctype> #include <cctype>
#include <memory>
using namespace Assimp; using namespace Assimp;

View File

@ -47,16 +47,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
// internal headers // internal headers
#include "MD5Loader.h" #include "MD5/MD5Loader.h"
#include "MaterialSystem.h" #include "Material/MaterialSystem.h"
#include <assimp/fast_atof.h> #include <assimp/fast_atof.h>
#include <assimp/ParsingUtils.h> #include <assimp/ParsingUtils.h>
#include <assimp/StringComparison.h> #include <assimp/StringComparison.h>
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include <assimp/mesh.h> #include <assimp/mesh.h>
using namespace Assimp; using namespace Assimp;
using namespace Assimp::MD5; using namespace Assimp::MD5;

View File

@ -47,16 +47,17 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_MDC_IMPORTER #ifndef ASSIMP_BUILD_NO_MDC_IMPORTER
// internal headers // internal headers
#include "MDCLoader.h" #include "MDC/MDCLoader.h"
#include "MD3FileData.h" #include "MD3/MD3FileData.h"
#include "MDCNormalTable.h" // shouldn't be included by other units #include "MDC/MDCNormalTable.h" // shouldn't be included by other units
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include <assimp/Importer.hpp> #include <assimp/Importer.hpp>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/importerdesc.h> #include <assimp/importerdesc.h>
#include <memory>
#include <memory>
using namespace Assimp; using namespace Assimp;
using namespace Assimp::MDC; using namespace Assimp::MDC;

View File

@ -50,11 +50,12 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_MDL_IMPORTER #ifndef ASSIMP_BUILD_NO_MDL_IMPORTER
#include "MDLLoader.h" #include "MDL/MDLLoader.h"
#include "MDL/MDLDefaultColorMap.h"
#include "MD2/MD2FileData.h"
#include <assimp/Macros.h> #include <assimp/Macros.h>
#include <assimp/qnan.h> #include <assimp/qnan.h>
#include "MDLDefaultColorMap.h"
#include "MD2FileData.h"
#include <assimp/StringUtils.h> #include <assimp/StringUtils.h>
#include <assimp/Importer.hpp> #include <assimp/Importer.hpp>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>

View File

@ -50,7 +50,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <assimp/BaseImporter.h> #include <assimp/BaseImporter.h>
#include "MDLFileData.h" #include "MDLFileData.h"
#include "HalfLifeFileData.h" #include "HMP/HalfLifeFileData.h"
struct aiNode; struct aiNode;
struct aiTexture; struct aiTexture;

View File

@ -41,15 +41,17 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_MMD_IMPORTER #ifndef ASSIMP_BUILD_NO_MMD_IMPORTER
#include "MMDImporter.h" #include "MMD/MMDImporter.h"
#include "MMDPmdParser.h" #include "MMD/MMDPmdParser.h"
#include "MMDPmxParser.h" #include "MMD/MMDPmxParser.h"
#include "MMDVmdParser.h" #include "MMD/MMDVmdParser.h"
#include "ConvertToLHProcess.h" #include "PostProcessing/ConvertToLHProcess.h"
#include <assimp/DefaultIOSystem.h> #include <assimp/DefaultIOSystem.h>
#include <assimp/Importer.hpp> #include <assimp/Importer.hpp>
#include <assimp/ai_assert.h> #include <assimp/ai_assert.h>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <fstream> #include <fstream>
#include <iomanip> #include <iomanip>
#include <memory> #include <memory>

View File

@ -41,10 +41,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/ */
#ifndef ASSIMP_BUILD_NO_OPENGEX_IMPORTER #ifndef ASSIMP_BUILD_NO_OPENGEX_IMPORTER
#include "OpenGEXImporter.h" #include "OpenGEX/OpenGEXImporter.h"
#include "PostProcessing/MakeVerboseFormat.h"
#include <assimp/DefaultIOSystem.h> #include <assimp/DefaultIOSystem.h>
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include "MakeVerboseFormat.h"
#include <assimp/StringComparison.h> #include <assimp/StringComparison.h>
#include <openddlparser/OpenDDLParser.h> #include <openddlparser/OpenDDLParser.h>

View File

@ -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 /** @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 #ifndef AI_CALCTANGENTSPROCESS_H_INC
#define AI_CALCTANGENTSPROCESS_H_INC #define AI_CALCTANGENTSPROCESS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
struct aiMesh; struct aiMesh;

View File

@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_COMPUTEUVMAPPING_H_INC #ifndef AI_COMPUTEUVMAPPING_H_INC
#define AI_COMPUTEUVMAPPING_H_INC #define AI_COMPUTEUVMAPPING_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
#include <assimp/material.h> #include <assimp/material.h>
#include <assimp/types.h> #include <assimp/types.h>

View File

@ -52,7 +52,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define AI_CONVERTTOLHPROCESS_H_INC #define AI_CONVERTTOLHPROCESS_H_INC
#include <assimp/types.h> #include <assimp/types.h>
#include "BaseProcess.h"
#include "Common/BaseProcess.h"
struct aiMesh; struct aiMesh;
struct aiNodeAnim; struct aiNodeAnim;

View File

@ -44,17 +44,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_DEBONEPROCESS_H_INC #ifndef AI_DEBONEPROCESS_H_INC
#define AI_DEBONEPROCESS_H_INC #define AI_DEBONEPROCESS_H_INC
#include <vector> #include "Common/BaseProcess.h"
#include <utility>
#include "BaseProcess.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <vector>
#include <utility>
#// Forward declarations
class DeboneTest; class DeboneTest;
namespace Assimp namespace Assimp {
{
#if (!defined AI_DEBONE_THRESHOLD) #if (!defined AI_DEBONE_THRESHOLD)
# define AI_DEBONE_THRESHOLD 1.0f # 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 * 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. * point in time, bones without affect upon a given mesh are to be removed.
*/ */
class DeboneProcess : public BaseProcess class DeboneProcess : public BaseProcess {
{
public: public:
DeboneProcess(); DeboneProcess();
~DeboneProcess(); ~DeboneProcess();
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Returns whether the processing step is present in the given flag. /** Returns whether the processing step is present in the given flag.
* @param pFlags The processing flags the importer was called with. * @param pFlags The processing flags the importer was called with.
@ -91,7 +89,6 @@ public:
void SetupProperties(const Importer* pImp); void SetupProperties(const Importer* pImp);
protected: protected:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Executes the post processing step on the given imported data. /** Executes the post processing step on the given imported data.
* At the moment a process is not supposed to fail. * At the moment a process is not supposed to fail.

View File

@ -44,23 +44,20 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_DROPFACENORMALPROCESS_H_INC #ifndef AI_DROPFACENORMALPROCESS_H_INC
#define AI_DROPFACENORMALPROCESS_H_INC #define AI_DROPFACENORMALPROCESS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
namespace Assimp namespace Assimp {
{
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
/** The DropFaceNormalsProcess computes face normals for all faces of all meshes /** 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: public:
DropFaceNormalsProcess(); DropFaceNormalsProcess();
~DropFaceNormalsProcess(); ~DropFaceNormalsProcess();
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Returns whether the processing step is present in the given flag field. /** Returns whether the processing step is present in the given flag field.
* @param pFlags The processing flags the importer was called with. A bitwise * @param pFlags The processing flags the importer was called with. A bitwise

View File

@ -42,7 +42,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#pragma once #pragma once
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <string> #include <string>

View File

@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_FINDDEGENERATESPROCESS_H_INC #ifndef AI_FINDDEGENERATESPROCESS_H_INC
#define AI_FINDDEGENERATESPROCESS_H_INC #define AI_FINDDEGENERATESPROCESS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
class FindDegeneratesProcessTest; class FindDegeneratesProcessTest;

View File

@ -46,8 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_FINDINSTANCES_H_INC #ifndef AI_FINDINSTANCES_H_INC
#define AI_FINDINSTANCES_H_INC #define AI_FINDINSTANCES_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include "ProcessHelper.h" #include "PostProcessing/ProcessHelper.h"
class FindInstancesProcessTest; class FindInstancesProcessTest;
namespace Assimp { namespace Assimp {

View File

@ -46,7 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_FINDINVALIDDATA_H_INC #ifndef AI_FINDINVALIDDATA_H_INC
#define AI_FINDINVALIDDATA_H_INC #define AI_FINDINVALIDDATA_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/types.h> #include <assimp/types.h>
#include <assimp/anim.h> #include <assimp/anim.h>

View File

@ -45,7 +45,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_FIXNORMALSPROCESS_H_INC #ifndef AI_FIXNORMALSPROCESS_H_INC
#define AI_FIXNORMALSPROCESS_H_INC #define AI_FIXNORMALSPROCESS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
struct aiMesh; struct aiMesh;

View File

@ -44,7 +44,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_GENFACENORMALPROCESS_H_INC #ifndef AI_GENFACENORMALPROCESS_H_INC
#define AI_GENFACENORMALPROCESS_H_INC #define AI_GENFACENORMALPROCESS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
namespace Assimp namespace Assimp

View File

@ -45,24 +45,24 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_GENVERTEXNORMALPROCESS_H_INC #ifndef AI_GENVERTEXNORMALPROCESS_H_INC
#define AI_GENVERTEXNORMALPROCESS_H_INC #define AI_GENVERTEXNORMALPROCESS_H_INC
#include "BaseProcess.h" #include "Common/assbin_chunks.h"
#include "Common/BaseProcess.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
// Forward declarations
class GenNormalsTest; class GenNormalsTest;
namespace Assimp { 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: public:
GenVertexNormalsProcess(); GenVertexNormalsProcess();
~GenVertexNormalsProcess(); ~GenVertexNormalsProcess();
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Returns whether the processing step is present in the given flag. /** Returns whether the processing step is present in the given flag.
* @param pFlags The processing flags the importer was called with. * @param pFlags The processing flags the importer was called with.
@ -88,13 +88,10 @@ public:
// setter for configMaxAngle // setter for configMaxAngle
inline void SetMaxSmoothAngle(ai_real f) inline void SetMaxSmoothAngle(ai_real f) {
{
configMaxAngle =f; configMaxAngle =f;
} }
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Computes normals for a specific mesh /** Computes normals for a specific mesh
* @param pcMesh Mesh * @param pcMesh Mesh
@ -104,7 +101,6 @@ public:
bool GenMeshVertexNormals (aiMesh* pcMesh, unsigned int meshIndex); bool GenMeshVertexNormals (aiMesh* pcMesh, unsigned int meshIndex);
private: private:
/** Configuration option: maximum smoothing angle, in radians*/ /** Configuration option: maximum smoothing angle, in radians*/
ai_real configMaxAngle; ai_real configMaxAngle;
mutable bool force_ = false; mutable bool force_ = false;

View File

@ -45,14 +45,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
* <br> * <br>
* The algorithm is roughly basing on this paper: * The algorithm is roughly basing on this paper:
* http://www.cs.princeton.edu/gfx/pubs/Sander_2007_%3ETR/tipsy.pdf * 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 // internal headers
#include "ImproveCacheLocality.h" #include "PostProcessing/ImproveCacheLocality.h"
#include "VertexTriangleAdjacency.h" #include "Common/VertexTriangleAdjacency.h"
#include <assimp/StringUtils.h> #include <assimp/StringUtils.h>
#include <assimp/postprocess.h> #include <assimp/postprocess.h>
#include <assimp/scene.h> #include <assimp/scene.h>
@ -64,36 +63,33 @@ using namespace Assimp;
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Constructor to be privately used by Importer // Constructor to be privately used by Importer
ImproveCacheLocalityProcess::ImproveCacheLocalityProcess() { ImproveCacheLocalityProcess::ImproveCacheLocalityProcess()
configCacheDepth = PP_ICL_PTCACHE_SIZE; : mConfigCacheDepth(PP_ICL_PTCACHE_SIZE) {
// empty
} }
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Destructor, private as well // Destructor, private as well
ImproveCacheLocalityProcess::~ImproveCacheLocalityProcess() ImproveCacheLocalityProcess::~ImproveCacheLocalityProcess() {
{
// nothing to do here // nothing to do here
} }
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Returns whether the processing step is present in the given flag field. // 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; return (pFlags & aiProcess_ImproveCacheLocality) != 0;
} }
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Setup configuration // 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 // 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. // Executes the post processing step on the given imported data.
void ImproveCacheLocalityProcess::Execute( aiScene* pScene) void ImproveCacheLocalityProcess::Execute( aiScene* pScene) {
{
if (!pScene->mNumMeshes) { if (!pScene->mNumMeshes) {
ASSIMP_LOG_DEBUG("ImproveCacheLocalityProcess skipped; there are no meshes"); ASSIMP_LOG_DEBUG("ImproveCacheLocalityProcess skipped; there are no meshes");
return; return;
@ -103,7 +99,7 @@ void ImproveCacheLocalityProcess::Execute( aiScene* pScene)
float out = 0.f; float out = 0.f;
unsigned int numf = 0, numm = 0; 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); const float res = ProcessMesh( pScene->mMeshes[a],a);
if (res) { if (res) {
numf += pScene->mMeshes[a]->mNumFaces; numf += pScene->mMeshes[a]->mNumFaces;
@ -121,44 +117,41 @@ void ImproveCacheLocalityProcess::Execute( aiScene* pScene)
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Improves the cache coherency of a specific mesh // 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 // 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 // Check whether the input data is valid
// - there must be vertices and faces // - there must be vertices and faces
// - all faces must be triangulated or we can't operate on them // - all faces must be triangulated or we can't operate on them
if (!pMesh->HasFaces() || !pMesh->HasPositions()) if (!pMesh->HasFaces() || !pMesh->HasPositions())
return 0.f; return static_cast<ai_real>(0.f);
if (pMesh->mPrimitiveTypes != aiPrimitiveType_TRIANGLE) { if (pMesh->mPrimitiveTypes != aiPrimitiveType_TRIANGLE) {
ASSIMP_LOG_ERROR("This algorithm works on triangle meshes only"); ASSIMP_LOG_ERROR("This algorithm works on triangle meshes only");
return 0.f; return static_cast<ai_real>(0.f);
} }
if(pMesh->mNumVertices <= configCacheDepth) { if(pMesh->mNumVertices <= mConfigCacheDepth) {
return 0.f; return static_cast<ai_real>(0.f);
} }
float fACMR = 3.f; ai_real fACMR = 3.f;
const aiFace* const pcEnd = pMesh->mFaces+pMesh->mNumFaces; const aiFace* const pcEnd = pMesh->mFaces+pMesh->mNumFaces;
// Input ACMR is for logging purposes only // Input ACMR is for logging purposes only
if (!DefaultLogger::isNullLogger()) { if (!DefaultLogger::isNullLogger()) {
unsigned int* piFIFOStack = new unsigned int[configCacheDepth]; unsigned int* piFIFOStack = new unsigned int[mConfigCacheDepth];
memset(piFIFOStack,0xff,configCacheDepth*sizeof(unsigned int)); memset(piFIFOStack,0xff,mConfigCacheDepth*sizeof(unsigned int));
unsigned int* piCur = piFIFOStack; unsigned int* piCur = piFIFOStack;
const unsigned int* const piCurEnd = piFIFOStack + configCacheDepth; const unsigned int* const piCurEnd = piFIFOStack + mConfigCacheDepth;
// count the number of cache misses // count the number of cache misses
unsigned int iCacheMisses = 0; unsigned int iCacheMisses = 0;
for (const aiFace* pcFace = pMesh->mFaces;pcFace != pcEnd;++pcFace) { for (const aiFace* pcFace = pMesh->mFaces;pcFace != pcEnd;++pcFace) {
for (unsigned int qq = 0; qq < 3;++qq) { for (unsigned int qq = 0; qq < 3;++qq) {
bool bInCache = false; bool bInCache = false;
for (unsigned int* pp = piFIFOStack;pp < piCurEnd;++pp) { for (unsigned int* pp = piFIFOStack;pp < piCurEnd;++pp) {
if (*pp == pcFace->mIndices[qq]) { if (*pp == pcFace->mIndices[qq]) {
// the vertex is in cache // the vertex is in cache
@ -176,7 +169,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh
} }
} }
delete[] piFIFOStack; delete[] piFIFOStack;
fACMR = (float)iCacheMisses / pMesh->mNumFaces; fACMR = (ai_real) iCacheMisses / pMesh->mNumFaces;
if (3.0 == fACMR) { if (3.0 == fACMR) {
char szBuff[128]; // should be sufficiently large in every case 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 ... // smaller than 3.0 ...
ai_snprintf(szBuff,128,"Mesh %u: Not suitable for vcache optimization",meshNum); ai_snprintf(szBuff,128,"Mesh %u: Not suitable for vcache optimization",meshNum);
ASSIMP_LOG_WARN(szBuff); ASSIMP_LOG_WARN(szBuff);
return 0.f; return static_cast<ai_real>(0.f);
} }
} }
@ -258,7 +251,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh
int ivdx = 0; int ivdx = 0;
int ics = 1; int ics = 1;
int iStampCnt = configCacheDepth+1; int iStampCnt = mConfigCacheDepth+1;
while (ivdx >= 0) { while (ivdx >= 0) {
unsigned int icnt = piNumTriPtrNoModify[ivdx]; unsigned int icnt = piNumTriPtrNoModify[ivdx];
@ -294,7 +287,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh
*piCSIter++ = dp; *piCSIter++ = dp;
// if the vertex is not yet in cache, set its cache count // 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++; piCachingStamps[dp] = iStampCnt++;
++iCacheMisses; ++iCacheMisses;
} }
@ -319,7 +312,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh
// will the vertex be in cache, even after fanning occurs? // will the vertex be in cache, even after fanning occurs?
unsigned int tmp; unsigned int tmp;
if ((tmp = iStampCnt-piCachingStamps[dp]) + 2*piNumTriPtr[dp] <= configCacheDepth) { if ((tmp = iStampCnt-piCachingStamps[dp]) + 2*piNumTriPtr[dp] <= mConfigCacheDepth) {
priority = tmp; 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()) { if (!DefaultLogger::isNullLogger()) {
fACMR2 = (float)iCacheMisses / pMesh->mNumFaces; fACMR2 = (float)iCacheMisses / pMesh->mNumFaces;

View File

@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_IMPROVECACHELOCALITY_H_INC #ifndef AI_IMPROVECACHELOCALITY_H_INC
#define AI_IMPROVECACHELOCALITY_H_INC #define AI_IMPROVECACHELOCALITY_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/types.h> #include <assimp/types.h>
struct aiMesh; struct aiMesh;
@ -87,12 +88,12 @@ protected:
* @param pMesh The mesh to process. * @param pMesh The mesh to process.
* @param meshNum Index of 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: private:
//! Configuration parameter: specifies the size of the cache to //! Configuration parameter: specifies the size of the cache to
//! optimize the vertex data for. //! optimize the vertex data for.
unsigned int configCacheDepth; unsigned int mConfigCacheDepth;
}; };
} // end of namespace Assimp } // end of namespace Assimp

View File

@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_JOINVERTICESPROCESS_H_INC #ifndef AI_JOINVERTICESPROCESS_H_INC
#define AI_JOINVERTICESPROCESS_H_INC #define AI_JOINVERTICESPROCESS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/types.h> #include <assimp/types.h>
struct aiMesh; struct aiMesh;
@ -61,13 +62,11 @@ namespace Assimp
* erases all but one of the copies. This usually reduces the number of vertices * 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. * 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: public:
JoinVerticesProcess(); JoinVerticesProcess();
~JoinVerticesProcess(); ~JoinVerticesProcess();
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Returns whether the processing step is present in the given flag field. /** Returns whether the processing step is present in the given flag field.
* @param pFlags The processing flags the importer was called with. A bitwise * @param pFlags The processing flags the importer was called with. A bitwise
@ -83,15 +82,12 @@ public:
*/ */
void Execute( aiScene* pScene); void Execute( aiScene* pScene);
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Unites identical vertices in the given mesh. /** Unites identical vertices in the given mesh.
* @param pMesh The mesh to process. * @param pMesh The mesh to process.
* @param meshIndex Index of the mesh to process * @param meshIndex Index of the mesh to process
*/ */
int ProcessMesh( aiMesh* pMesh, unsigned int meshIndex); int ProcessMesh( aiMesh* pMesh, unsigned int meshIndex);
private:
}; };
} // end of namespace Assimp } // end of namespace Assimp

View File

@ -44,14 +44,14 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_LIMITBONEWEIGHTSPROCESS_H_INC #ifndef AI_LIMITBONEWEIGHTSPROCESS_H_INC
#define AI_LIMITBONEWEIGHTSPROCESS_H_INC #define AI_LIMITBONEWEIGHTSPROCESS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
// Forward declarations
struct aiMesh; struct aiMesh;
class LimitBoneWeightsTest; class LimitBoneWeightsTest;
namespace Assimp namespace Assimp {
{
// NOTE: If you change these limits, don't forget to change the // NOTE: If you change these limits, don't forget to change the
// corresponding values in all Assimp ports // 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 * The other weights on this bone are then renormalized to assure the sum weight
* to be 1. * to be 1.
*/ */
class ASSIMP_API LimitBoneWeightsProcess : public BaseProcess class ASSIMP_API LimitBoneWeightsProcess : public BaseProcess {
{
public: public:
LimitBoneWeightsProcess(); LimitBoneWeightsProcess();
~LimitBoneWeightsProcess(); ~LimitBoneWeightsProcess();
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Returns whether the processing step is present in the given flag. /** Returns whether the processing step is present in the given flag.
* @param pFlags The processing flags the importer was called with. * @param pFlags The processing flags the importer was called with.
@ -96,8 +93,6 @@ public:
*/ */
void SetupProperties(const Importer* pImp); void SetupProperties(const Importer* pImp);
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Limits the bone weight count for all vertices in the given mesh. /** Limits the bone weight count for all vertices in the given mesh.
* @param pMesh The mesh to process. * @param pMesh The mesh to process.
@ -111,34 +106,29 @@ public:
*/ */
void Execute( aiScene* pScene); void Execute( aiScene* pScene);
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Describes a bone weight on a vertex */ /** Describes a bone weight on a vertex */
struct Weight struct Weight {
{
unsigned int mBone; ///< Index of the bone unsigned int mBone; ///< Index of the bone
float mWeight; ///< Weight of that bone on this vertex float mWeight; ///< Weight of that bone on this vertex
Weight() AI_NO_EXCEPT Weight() AI_NO_EXCEPT
: mBone(0) : mBone(0)
, mWeight(0.0f) , mWeight(0.0f) {
{ } // empty
}
Weight( unsigned int pBone, float pWeight) Weight( unsigned int pBone, float pWeight)
{ : mBone(pBone)
mBone = pBone; , mWeight(pWeight) {
mWeight = pWeight; // empty
} }
/** Comparison operator to sort bone weights by descending weight */ /** 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; return mWeight > pWeight.mWeight;
} }
}; };
public:
/** Maximum number of bones influencing any single vertex. */ /** Maximum number of bones influencing any single vertex. */
unsigned int mMaxWeights; unsigned int mMaxWeights;
}; };

View File

@ -46,7 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_MAKEVERBOSEFORMAT_H_INC #ifndef AI_MAKEVERBOSEFORMAT_H_INC
#define AI_MAKEVERBOSEFORMAT_H_INC #define AI_MAKEVERBOSEFORMAT_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
struct aiMesh; struct aiMesh;
namespace Assimp { namespace Assimp {

View File

@ -5,8 +5,6 @@ Open Asset Import Library (assimp)
Copyright (c) 2006-2019, assimp team Copyright (c) 2006-2019, assimp team
All rights reserved. All rights reserved.
Redistribution and use of this software in source and binary forms, Redistribution and use of this software in source and binary forms,

View File

@ -46,13 +46,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_OPTIMIZEGRAPHPROCESS_H_INC #ifndef AI_OPTIMIZEGRAPHPROCESS_H_INC
#define AI_OPTIMIZEGRAPHPROCESS_H_INC #define AI_OPTIMIZEGRAPHPROCESS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include "ProcessHelper.h" #include "PostProcessing/ProcessHelper.h"
#include <assimp/types.h> #include <assimp/types.h>
#include <set> #include <set>
// Forward declarations
struct aiMesh; struct aiMesh;
class OptimizeGraphProcessTest; class OptimizeGraphProcessTest;
namespace Assimp { namespace Assimp {
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
@ -64,14 +69,11 @@ namespace Assimp {
* @see aiProcess_OptimizeGraph for a detailed description of the * @see aiProcess_OptimizeGraph for a detailed description of the
* algorithm being applied. * algorithm being applied.
*/ */
class OptimizeGraphProcess : public BaseProcess class OptimizeGraphProcess : public BaseProcess {
{
public: public:
OptimizeGraphProcess(); OptimizeGraphProcess();
~OptimizeGraphProcess(); ~OptimizeGraphProcess();
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
bool IsActive( unsigned int pFlags) const; bool IsActive( unsigned int pFlags) const;
@ -81,14 +83,12 @@ public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
void SetupProperties(const Importer* pImp); void SetupProperties(const Importer* pImp);
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** @brief Add a list of node names to be locked and not modified. /** @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 * @param in List of nodes. See #AI_CONFIG_PP_OG_EXCLUDE_LIST for
* format explanations. * format explanations.
*/ */
inline void AddLockedNodeList(std::string& in) inline void AddLockedNodeList(std::string& in) {
{
ConvertListToStrings (in,locked_nodes); ConvertListToStrings (in,locked_nodes);
} }
@ -96,8 +96,7 @@ public:
/** @brief Add another node to be locked and not modified. /** @brief Add another node to be locked and not modified.
* @param name Name to be locked * @param name Name to be locked
*/ */
inline void AddLockedNode(std::string& name) inline void AddLockedNode(std::string& name) {
{
locked_nodes.push_back(name); locked_nodes.push_back(name);
} }
@ -105,25 +104,21 @@ public:
/** @brief Remove a node from the list of locked nodes. /** @brief Remove a node from the list of locked nodes.
* @param name Name to be unlocked * @param name Name to be unlocked
*/ */
inline void RemoveLockedNode(std::string& name) inline void RemoveLockedNode(std::string& name) {
{
locked_nodes.remove(name); locked_nodes.remove(name);
} }
protected: protected:
void CollectNewChildren(aiNode* nd, std::list<aiNode*>& nodes); void CollectNewChildren(aiNode* nd, std::list<aiNode*>& nodes);
void FindInstancedMeshes (aiNode* pNode); void FindInstancedMeshes (aiNode* pNode);
private: private:
#ifdef AI_OG_USE_HASHING #ifdef AI_OG_USE_HASHING
typedef std::set<unsigned int> LockedSetType; typedef std::set<unsigned int> LockedSetType;
#else #else
typedef std::set<std::string> LockedSetType; typedef std::set<std::string> LockedSetType;
#endif #endif
//! Scene we're working with //! Scene we're working with
aiScene* mScene; aiScene* mScene;

View File

@ -46,8 +46,10 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_OPTIMIZEMESHESPROCESS_H_INC #ifndef AI_OPTIMIZEMESHESPROCESS_H_INC
#define AI_OPTIMIZEMESHESPROCESS_H_INC #define AI_OPTIMIZEMESHESPROCESS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/types.h> #include <assimp/types.h>
#include <vector> #include <vector>
struct aiMesh; struct aiMesh;
@ -64,16 +66,14 @@ namespace Assimp {
* *
* @note Instanced meshes are currently not processed. * @note Instanced meshes are currently not processed.
*/ */
class OptimizeMeshesProcess : public BaseProcess class OptimizeMeshesProcess : public BaseProcess {
{
public: public:
/// @brief The class constructor. /// @brief The class constructor.
OptimizeMeshesProcess(); OptimizeMeshesProcess();
/// @brief The class destcructor, /// @brief The class destructor.
~OptimizeMeshesProcess(); ~OptimizeMeshesProcess();
/** @brief Internal utility to store additional mesh info /** @brief Internal utility to store additional mesh info
*/ */
struct MeshInfo { struct MeshInfo {

View File

@ -47,13 +47,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_PRETRANSFORMVERTICES_H_INC #ifndef AI_PRETRANSFORMVERTICES_H_INC
#define AI_PRETRANSFORMVERTICES_H_INC #define AI_PRETRANSFORMVERTICES_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
#include <list> #include <list>
#include <vector> #include <vector>
// Forward declarations
struct aiNode; struct aiNode;
class PretransformVerticesTest; class PretransformVerticesTest;
namespace Assimp { namespace Assimp {
// --------------------------------------------------------------------------- // ---------------------------------------------------------------------------
@ -80,10 +85,10 @@ public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** @brief Toggle the 'keep hierarchy' option /** @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) { void KeepHierarchy(bool keep) {
configKeepHierarchy = d; configKeepHierarchy = keep;
} }
// ------------------------------------------------------------------- // -------------------------------------------------------------------
@ -148,8 +153,6 @@ private:
// Build reference counters for all meshes // Build reference counters for all meshes
void BuildMeshRefCountArray(aiNode* nd, unsigned int * refs); void BuildMeshRefCountArray(aiNode* nd, unsigned int * refs);
//! Configuration option: keep scene hierarchy as long as possible //! Configuration option: keep scene hierarchy as long as possible
bool configKeepHierarchy; bool configKeepHierarchy;
bool configNormalize; bool configNormalize;

View File

@ -51,7 +51,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/SpatialSort.h> #include <assimp/SpatialSort.h>
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/ParsingUtils.h> #include <assimp/ParsingUtils.h>
#include <list> #include <list>

View File

@ -49,7 +49,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include "RemoveRedundantMaterials.h" #include "RemoveRedundantMaterials.h"
#include <assimp/ParsingUtils.h> #include <assimp/ParsingUtils.h>
#include "ProcessHelper.h" #include "ProcessHelper.h"
#include "MaterialSystem.h" #include "Material/MaterialSystem.h"
#include <stdio.h> #include <stdio.h>
using namespace Assimp; using namespace Assimp;
@ -57,7 +57,7 @@ using namespace Assimp;
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Constructor to be privately used by Importer // Constructor to be privately used by Importer
RemoveRedundantMatsProcess::RemoveRedundantMatsProcess() RemoveRedundantMatsProcess::RemoveRedundantMatsProcess()
: configFixedMaterials() { : mConfigFixedMaterials() {
// nothing to do here // nothing to do here
} }
@ -80,7 +80,7 @@ bool RemoveRedundantMatsProcess::IsActive( unsigned int pFlags) const
void RemoveRedundantMatsProcess::SetupProperties(const Importer* pImp) void RemoveRedundantMatsProcess::SetupProperties(const Importer* pImp)
{ {
// Get value of AI_CONFIG_PP_RRM_EXCLUDE_LIST // 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 // 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 // our imported materials and 'salt' all positive matches to ensure that
// we get unique hashes later. // we get unique hashes later.
if (configFixedMaterials.length()) { if (mConfigFixedMaterials.length()) {
std::list<std::string> strings; std::list<std::string> strings;
ConvertListToStrings(configFixedMaterials,strings); ConvertListToStrings(mConfigFixedMaterials,strings);
for (unsigned int i = 0; i < pScene->mNumMaterials;++i) { for (unsigned int i = 0; i < pScene->mNumMaterials;++i) {
aiMaterial* mat = pScene->mMaterials[i]; aiMaterial* mat = pScene->mMaterials[i];

View File

@ -46,7 +46,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_REMOVEREDUNDANTMATERIALS_H_INC #ifndef AI_REMOVEREDUNDANTMATERIALS_H_INC
#define AI_REMOVEREDUNDANTMATERIALS_H_INC #define AI_REMOVEREDUNDANTMATERIALS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
class RemoveRedundantMatsTest; class RemoveRedundantMatsTest;
@ -57,8 +57,7 @@ namespace Assimp {
/** RemoveRedundantMatsProcess: Post-processing step to remove redundant /** RemoveRedundantMatsProcess: Post-processing step to remove redundant
* materials from the imported scene. * materials from the imported scene.
*/ */
class ASSIMP_API RemoveRedundantMatsProcess : public BaseProcess class ASSIMP_API RemoveRedundantMatsProcess : public BaseProcess {
{
public: public:
/// The default class constructor. /// The default class constructor.
RemoveRedundantMatsProcess(); RemoveRedundantMatsProcess();
@ -66,7 +65,6 @@ public:
/// The class destructor. /// The class destructor.
~RemoveRedundantMatsProcess(); ~RemoveRedundantMatsProcess();
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
// Check whether step is active // Check whether step is active
bool IsActive( unsigned int pFlags) const; bool IsActive( unsigned int pFlags) const;
@ -79,27 +77,25 @@ public:
// Setup import settings // Setup import settings
void SetupProperties(const Importer* pImp); 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 * @param fixed See #AI_CONFIG_PP_RRM_EXCLUDE_LIST
*/ */
void SetFixedMaterialsString(const std::string& fixed = "") { 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 * @return See #AI_CONFIG_PP_RRM_EXCLUDE_LIST
*/ */
const std::string& GetFixedMaterialsString() const { const std::string& GetFixedMaterialsString() const {
return configFixedMaterials; return mConfigFixedMaterials;
} }
private: private:
//! Configuration option: list of all fixed materials //! Configuration option: list of all fixed materials
std::string configFixedMaterials; std::string mConfigFixedMaterials;
}; };
} // end of namespace Assimp } // end of namespace Assimp

View File

@ -44,7 +44,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_REMOVEVCPROCESS_H_INCLUDED #ifndef AI_REMOVEVCPROCESS_H_INCLUDED
#define AI_REMOVEVCPROCESS_H_INCLUDED #define AI_REMOVEVCPROCESS_H_INCLUDED
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
class RemoveVCProcessTest; class RemoveVCProcessTest;

View File

@ -41,7 +41,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/ */
#pragma once #pragma once
#include "BaseProcess.h" #include "Common/BaseProcess.h"
struct aiNode; struct aiNode;

View File

@ -57,8 +57,8 @@ using namespace Assimp;
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
// Constructor to be privately used by Importer // Constructor to be privately used by Importer
SortByPTypeProcess::SortByPTypeProcess() SortByPTypeProcess::SortByPTypeProcess()
{ : mConfigRemoveMeshes( 0 ) {
configRemoveMeshes = 0; // empty
} }
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
@ -78,7 +78,7 @@ bool SortByPTypeProcess::IsActive( unsigned int pFlags) const
// ------------------------------------------------------------------------------------------------ // ------------------------------------------------------------------------------------------------
void SortByPTypeProcess::SetupProperties(const Importer* pImp) 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 (1 == num) {
if (!(configRemoveMeshes & mesh->mPrimitiveTypes)) { if (!(mConfigRemoveMeshes & mesh->mPrimitiveTypes)) {
*meshIdx = static_cast<unsigned int>( outMeshes.size() ); *meshIdx = static_cast<unsigned int>( outMeshes.size() );
outMeshes.push_back(mesh); outMeshes.push_back(mesh);
} else { } else {
@ -206,7 +206,7 @@ void SortByPTypeProcess::Execute( aiScene* pScene) {
VertexWeightTable* avw = ComputeVertexBoneWeightTable(mesh); VertexWeightTable* avw = ComputeVertexBoneWeightTable(mesh);
for (unsigned int real = 0; real < 4; ++real,++meshIdx) for (unsigned int real = 0; real < 4; ++real,++meshIdx)
{ {
if ( !aiNumPerPType[real] || configRemoveMeshes & (1u << real)) if ( !aiNumPerPType[real] || mConfigRemoveMeshes & (1u << real))
{ {
continue; continue;
} }
@ -392,10 +392,10 @@ void SortByPTypeProcess::Execute( aiScene* pScene) {
{ {
char buffer[1024]; char buffer[1024];
::ai_snprintf(buffer,1024,"Points: %u%s, Lines: %u%s, Triangles: %u%s, Polygons: %u%s (Meshes, X = removed)", ::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[0], ((mConfigRemoveMeshes & aiPrimitiveType_POINT) ? "X" : ""),
aiNumMeshesPerPType[1], ((configRemoveMeshes & aiPrimitiveType_LINE) ? "X" : ""), aiNumMeshesPerPType[1], ((mConfigRemoveMeshes & aiPrimitiveType_LINE) ? "X" : ""),
aiNumMeshesPerPType[2], ((configRemoveMeshes & aiPrimitiveType_TRIANGLE) ? "X" : ""), aiNumMeshesPerPType[2], ((mConfigRemoveMeshes & aiPrimitiveType_TRIANGLE) ? "X" : ""),
aiNumMeshesPerPType[3], ((configRemoveMeshes & aiPrimitiveType_POLYGON) ? "X" : "")); aiNumMeshesPerPType[3], ((mConfigRemoveMeshes & aiPrimitiveType_POLYGON) ? "X" : ""));
ASSIMP_LOG_INFO(buffer); ASSIMP_LOG_INFO(buffer);
ASSIMP_LOG_DEBUG("SortByPTypeProcess finished"); ASSIMP_LOG_DEBUG("SortByPTypeProcess finished");
} }

View File

@ -45,10 +45,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_SORTBYPTYPEPROCESS_H_INC #ifndef AI_SORTBYPTYPEPROCESS_H_INC
#define AI_SORTBYPTYPEPROCESS_H_INC #define AI_SORTBYPTYPEPROCESS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
class SortByPTypeProcessTest; class SortByPTypeProcessTest;
namespace Assimp { namespace Assimp {
@ -57,14 +58,11 @@ namespace Assimp {
* A mesh with 5 lines, 3 points and 145 triangles would be split in 3 * A mesh with 5 lines, 3 points and 145 triangles would be split in 3
* submeshes. * submeshes.
*/ */
class ASSIMP_API SortByPTypeProcess : public BaseProcess class ASSIMP_API SortByPTypeProcess : public BaseProcess {
{
public: public:
SortByPTypeProcess(); SortByPTypeProcess();
~SortByPTypeProcess(); ~SortByPTypeProcess();
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
bool IsActive( unsigned int pFlags) const; bool IsActive( unsigned int pFlags) const;
@ -75,8 +73,7 @@ public:
void SetupProperties(const Importer* pImp); void SetupProperties(const Importer* pImp);
private: private:
int mConfigRemoveMeshes;
int configRemoveMeshes;
}; };

View File

@ -46,7 +46,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define AI_SPLITLARGEMESHES_H_INC #define AI_SPLITLARGEMESHES_H_INC
#include <vector> #include <vector>
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/mesh.h> #include <assimp/mesh.h>
#include <assimp/scene.h> #include <assimp/scene.h>

View File

@ -45,7 +45,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define AI_TEXTURE_TRANSFORM_H_INCLUDED #define AI_TEXTURE_TRANSFORM_H_INCLUDED
#include <assimp/BaseImporter.h> #include <assimp/BaseImporter.h>
#include "BaseProcess.h" #include "Common/BaseProcess.h"
#include <assimp/material.h> #include <assimp/material.h>
#include <list> #include <list>

View File

@ -5,8 +5,6 @@ Open Asset Import Library (assimp)
Copyright (c) 2006-2019, assimp team Copyright (c) 2006-2019, assimp team
All rights reserved. All rights reserved.
Redistribution and use of this software in source and binary forms, 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 * a file
*/ */
#ifndef ASSIMP_BUILD_NO_TRIANGULATE_PROCESS #ifndef ASSIMP_BUILD_NO_TRIANGULATE_PROCESS
#include "TriangulateProcess.h"
#include "ProcessHelper.h" #include "PostProcessing/TriangulateProcess.h"
#include "PolyTools.h" #include "PostProcessing/ProcessHelper.h"
#include "Common/PolyTools.h"
#include <memory> #include <memory>
//#define AI_BUILD_TRIANGULATE_COLOR_FACE_WINDING //#define AI_BUILD_TRIANGULATE_COLOR_FACE_WINDING

View File

@ -46,7 +46,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef AI_TRIANGULATEPROCESS_H_INC #ifndef AI_TRIANGULATEPROCESS_H_INC
#define AI_TRIANGULATEPROCESS_H_INC #define AI_TRIANGULATEPROCESS_H_INC
#include "BaseProcess.h" #include "Common/BaseProcess.h"
struct aiMesh; struct aiMesh;
@ -59,14 +59,11 @@ namespace Assimp {
* into triangles. You usually want this to happen because the graphics cards * into triangles. You usually want this to happen because the graphics cards
* need their data as triangles. * need their data as triangles.
*/ */
class ASSIMP_API TriangulateProcess : public BaseProcess class ASSIMP_API TriangulateProcess : public BaseProcess {
{
public: public:
TriangulateProcess(); TriangulateProcess();
~TriangulateProcess(); ~TriangulateProcess();
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Returns whether the processing step is present in the given flag field. /** Returns whether the processing step is present in the given flag field.
* @param pFlags The processing flags the importer was called with. A bitwise * @param pFlags The processing flags the importer was called with. A bitwise
@ -82,7 +79,6 @@ public:
*/ */
void Execute( aiScene* pScene); void Execute( aiScene* pScene);
public:
// ------------------------------------------------------------------- // -------------------------------------------------------------------
/** Triangulates the given mesh. /** Triangulates the given mesh.
* @param pMesh The mesh to triangulate. * @param pMesh The mesh to triangulate.

View File

@ -48,7 +48,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <assimp/types.h> #include <assimp/types.h>
#include <assimp/material.h> #include <assimp/material.h>
#include "BaseProcess.h"
#include "Common/BaseProcess.h"
struct aiBone; struct aiBone;
struct aiMesh; struct aiMesh;

View File

@ -50,7 +50,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <map> #include <map>
#include <set> #include <set>
#include "FBXDocument.h" //ObjectMap::value_type #include "FBX/FBXDocument.h" //ObjectMap::value_type
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
// //

View File

@ -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_EXPORT
#ifndef ASSIMP_BUILD_NO_STEP_EXPORTER #ifndef ASSIMP_BUILD_NO_STEP_EXPORTER
#include "StepExporter.h" #include "Step/StepExporter.h"
#include "ConvertToLHProcess.h" #include "PostProcessing/ConvertToLHProcess.h"
#include <assimp/Bitmap.h> #include <assimp/Bitmap.h>
#include <assimp/BaseImporter.h> #include <assimp/BaseImporter.h>
#include <assimp/fast_atof.h> #include <assimp/fast_atof.h>
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include <assimp/Exceptional.h>
#include <assimp/DefaultIOSystem.h>
#include <assimp/IOSystem.hpp>
#include <assimp/scene.h>
#include <assimp/light.h>
#include <iostream> #include <iostream>
#include <ctime> #include <ctime>
#include <set> #include <set>
#include <map> #include <map>
#include <list> #include <list>
#include <memory> #include <memory>
#include <assimp/Exceptional.h>
#include <assimp/DefaultIOSystem.h>
#include <assimp/IOSystem.hpp>
#include <assimp/scene.h>
#include <assimp/light.h>
// //
#if _MSC_VER > 1500 || (defined __GNUC___) #if _MSC_VER > 1500 || (defined __GNUC___)

View File

@ -52,12 +52,12 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_3D_IMPORTER #ifndef ASSIMP_BUILD_NO_3D_IMPORTER
#include "UnrealLoader.h" #include "Unreal/UnrealLoader.h"
#include "PostProcessing/ConvertToLHProcess.h"
#include <assimp/StreamReader.h> #include <assimp/StreamReader.h>
#include <assimp/ParsingUtils.h> #include <assimp/ParsingUtils.h>
#include <assimp/fast_atof.h> #include <assimp/fast_atof.h>
#include "ConvertToLHProcess.h"
#include <assimp/Importer.hpp> #include <assimp/Importer.hpp>
#include <assimp/DefaultLogger.hpp> #include <assimp/DefaultLogger.hpp>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>

View File

@ -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_EXPORT
#ifndef ASSIMP_BUILD_NO_X_EXPORTER #ifndef ASSIMP_BUILD_NO_X_EXPORTER
#include "XFileExporter.h" #include "X/XFileExporter.h"
#include "ConvertToLHProcess.h" #include "PostProcessing/ConvertToLHProcess.h"
#include <assimp/Bitmap.h> #include <assimp/Bitmap.h>
#include <assimp/BaseImporter.h> #include <assimp/BaseImporter.h>
#include <assimp/fast_atof.h> #include <assimp/fast_atof.h>
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include <assimp/DefaultIOSystem.h> #include <assimp/DefaultIOSystem.h>
#include <ctime>
#include <set>
#include <memory>
#include <assimp/Exceptional.h> #include <assimp/Exceptional.h>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/light.h> #include <assimp/light.h>
#include <ctime>
#include <set>
#include <memory>
using namespace Assimp; using namespace Assimp;
namespace Assimp namespace Assimp

View File

@ -44,10 +44,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_X_IMPORTER #ifndef ASSIMP_BUILD_NO_X_IMPORTER
#include "XFileImporter.h" #include "X/XFileImporter.h"
#include "XFileParser.h" #include "X/XFileParser.h"
#include "PostProcessing/ConvertToLHProcess.h"
#include <assimp/TinyFormatter.h> #include <assimp/TinyFormatter.h>
#include "ConvertToLHProcess.h"
#include <assimp/Defines.h> #include <assimp/Defines.h>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
#include <assimp/scene.h> #include <assimp/scene.h>

View File

@ -52,6 +52,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER
#include <assimp/Exceptional.h>
#include <map> #include <map>
#include <string> #include <string>
#include <list> #include <list>

View File

@ -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_EXPORT
#ifndef ASSIMP_BUILD_NO_GLTF_EXPORTER #ifndef ASSIMP_BUILD_NO_GLTF_EXPORTER
#include "glTFExporter.h" #include "glTF/glTFExporter.h"
#include "glTF/glTFAssetWriter.h"
#include "PostProcessing/SplitLargeMeshes.h"
#include <assimp/Exceptional.h> #include <assimp/Exceptional.h>
#include <assimp/StringComparison.h> #include <assimp/StringComparison.h>
#include <assimp/ByteSwapper.h> #include <assimp/ByteSwapper.h>
#include "SplitLargeMeshes.h"
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include <assimp/version.h> #include <assimp/version.h>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
@ -61,8 +60,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <memory> #include <memory>
#include <inttypes.h> #include <inttypes.h>
#include "glTFAssetWriter.h"
#ifdef ASSIMP_IMPORTER_GLTF_USE_OPEN3DGC #ifdef ASSIMP_IMPORTER_GLTF_USE_OPEN3DGC
// Header files, Open3DGC. // Header files, Open3DGC.
# include <Open3DGC/o3dgcSC3DMCEncoder.h> # include <Open3DGC/o3dgcSC3DMCEncoder.h>

View File

@ -42,10 +42,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER #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 <assimp/StringComparison.h> #include <assimp/StringComparison.h>
#include <assimp/StringUtils.h> #include <assimp/StringUtils.h>
#include <assimp/Importer.hpp> #include <assimp/Importer.hpp>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/ai_assert.h> #include <assimp/ai_assert.h>
@ -54,16 +57,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <memory> #include <memory>
#include "MakeVerboseFormat.h"
#include "glTFAsset.h"
// This is included here so WriteLazyDict<T>'s definition is found.
#include "glTFAssetWriter.h"
using namespace Assimp; using namespace Assimp;
using namespace glTF; using namespace glTF;
// //
// glTFImporter // glTFImporter
// //

View File

@ -52,6 +52,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER
#include <assimp/Exceptional.h>
#include <map> #include <map>
#include <string> #include <string>
#include <list> #include <list>

View File

@ -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_EXPORT
#ifndef ASSIMP_BUILD_NO_GLTF_EXPORTER #ifndef ASSIMP_BUILD_NO_GLTF_EXPORTER
#include "glTF2Exporter.h" #include "glTF2/glTF2Exporter.h"
#include "glTF2/glTF2AssetWriter.h"
#include "PostProcessing/SplitLargeMeshes.h"
#include <assimp/Exceptional.h> #include <assimp/Exceptional.h>
#include <assimp/StringComparison.h> #include <assimp/StringComparison.h>
#include <assimp/ByteSwapper.h> #include <assimp/ByteSwapper.h>
#include "SplitLargeMeshes.h"
#include <assimp/SceneCombiner.h> #include <assimp/SceneCombiner.h>
#include <assimp/version.h> #include <assimp/version.h>
#include <assimp/IOSystem.hpp> #include <assimp/IOSystem.hpp>
@ -61,8 +60,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <memory> #include <memory>
#include <inttypes.h> #include <inttypes.h>
#include "glTF2AssetWriter.h"
using namespace rapidjson; using namespace rapidjson;
using namespace Assimp; using namespace Assimp;

View File

@ -42,10 +42,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER #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 <assimp/StringComparison.h> #include <assimp/StringComparison.h>
#include <assimp/StringUtils.h> #include <assimp/StringUtils.h>
#include <assimp/Importer.hpp> #include <assimp/Importer.hpp>
#include <assimp/scene.h> #include <assimp/scene.h>
#include <assimp/ai_assert.h> #include <assimp/ai_assert.h>
@ -56,11 +59,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#include <memory> #include <memory>
#include <unordered_map> #include <unordered_map>
#include "MakeVerboseFormat.h"
#include "glTF2Asset.h"
// This is included here so WriteLazyDict<T>'s definition is found.
#include "glTF2AssetWriter.h"
#include <rapidjson/document.h> #include <rapidjson/document.h>
#include <rapidjson/rapidjson.h> #include <rapidjson/rapidjson.h>
@ -68,7 +66,7 @@ using namespace Assimp;
using namespace glTF2; using namespace glTF2;
namespace { namespace {
// generate bitangents from normals and tangents according to spec // generate bi-tangents from normals and tangents according to spec
struct Tangent { struct Tangent {
aiVector3D xyz; aiVector3D xyz;
ai_real w; ai_real w;