| /* |
| Open Asset Import Library (assimp) |
| ---------------------------------------------------------------------- |
| |
| Copyright (c) 2006-2017, assimp team |
| |
| All rights reserved. |
| |
| Redistribution and use of this software in source and binary forms, |
| with or without modification, are permitted provided that the |
| following conditions are met: |
| |
| * Redistributions of source code must retain the above |
| copyright notice, this list of conditions and the |
| following disclaimer. |
| |
| * Redistributions in binary form must reproduce the above |
| copyright notice, this list of conditions and the |
| following disclaimer in the documentation and/or other |
| materials provided with the distribution. |
| |
| * Neither the name of the assimp team, nor the names of its |
| contributors may be used to endorse or promote products |
| derived from this software without specific prior |
| written permission of the assimp team. |
| |
| THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| |
| ---------------------------------------------------------------------- |
| */ |
| |
| /** @file FBXImportSettings.h |
| * @brief FBX importer runtime configuration |
| */ |
| #ifndef INCLUDED_AI_FBX_IMPORTSETTINGS_H |
| #define INCLUDED_AI_FBX_IMPORTSETTINGS_H |
| |
| namespace Assimp { |
| namespace FBX { |
| |
| /** FBX import settings, parts of which are publicly accessible via their corresponding AI_CONFIG constants */ |
| struct ImportSettings |
| { |
| ImportSettings() |
| : strictMode(true) |
| , readAllLayers(true) |
| , readAllMaterials(false) |
| , readMaterials(true) |
| , readTextures(true) |
| , readCameras(true) |
| , readLights(true) |
| , readAnimations(true) |
| , readWeights(true) |
| , preservePivots(true) |
| , optimizeEmptyAnimationCurves(true) |
| , searchEmbeddedTextures(false) |
| {} |
| |
| |
| /** enable strict mode: |
| * - only accept fbx 2012, 2013 files |
| * - on the slightest error, give up. |
| * |
| * Basically, strict mode means that the fbx file will actually |
| * be validated. Strict mode is off by default. */ |
| bool strictMode; |
| |
| /** specifies whether all geometry layers are read and scanned for |
| * usable data channels. The FBX spec indicates that many readers |
| * will only read the first channel and that this is in some way |
| * the recommended way- in reality, however, it happens a lot that |
| * vertex data is spread among multiple layers. The default |
| * value for this option is true.*/ |
| bool readAllLayers; |
| |
| /** specifies whether all materials are read, or only those that |
| * are referenced by at least one mesh. Reading all materials |
| * may make FBX reading a lot slower since all objects |
| * need to be processed . |
| * This bit is ignored unless readMaterials=true*/ |
| bool readAllMaterials; |
| |
| |
| /** import materials (true) or skip them and assign a default |
| * material. The default value is true.*/ |
| bool readMaterials; |
| |
| /** import embedded textures? Default value is true.*/ |
| bool readTextures; |
| |
| /** import cameras? Default value is true.*/ |
| bool readCameras; |
| |
| /** import light sources? Default value is true.*/ |
| bool readLights; |
| |
| /** import animations (i.e. animation curves, the node |
| * skeleton is always imported). Default value is true. */ |
| bool readAnimations; |
| |
| /** read bones (vertex weights and deform info). |
| * Default value is true. */ |
| bool readWeights; |
| |
| /** preserve transformation pivots and offsets. Since these can |
| * not directly be represented in assimp, additional dummy |
| * nodes will be generated. Note that settings this to false |
| * can make animation import a lot slower. The default value |
| * is true. |
| * |
| * The naming scheme for the generated nodes is: |
| * <OriginalName>_$AssimpFbx$_<TransformName> |
| * |
| * where <TransformName> is one of |
| * RotationPivot |
| * RotationOffset |
| * PreRotation |
| * PostRotation |
| * ScalingPivot |
| * ScalingOffset |
| * Translation |
| * Scaling |
| * Rotation |
| **/ |
| bool preservePivots; |
| |
| /** do not import animation curves that specify a constant |
| * values matching the corresponding node transformation. |
| * The default value is true. */ |
| bool optimizeEmptyAnimationCurves; |
| |
| /** search for embedded loaded textures, where no embedded texture data is provided. |
| * The default value is false. */ |
| bool searchEmbeddedTextures; |
| }; |
| |
| |
| } // !FBX |
| } // !Assimp |
| |
| #endif |
| |