⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 flx_exportsettings.h

📁 使用stl技术,(还没看,是听说的)
💻 H
📖 第 1 页 / 共 2 页
字号:
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/*
 *	FLEXPORTER - a flexible exporter
 *	Copyright (C) 2000-2003 Pierre Terdiman
 *	Homepage: http://www.codercorner.com/Flexporter.htm
 */
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/**
 *	This file contains the exportation settings structure.
 *	\file		FLX_ExportSettings.h
 *	\author		Pierre Terdiman
 *	\date		April, 4, 2000
 */
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Include Guard
#ifndef __FLX_EXPORTSETTINGS_H__
#define __FLX_EXPORTSETTINGS_H__

	//! Various compression schemes
/*	enum CompressionValues
	{
		FLX_COMPRESSION_NONE		= 0,
		FLX_COMPRESSION_ZLIB		= 1,
		FLX_COMPRESSION_BZIP2		= 2,

		FLX_COMPRESSION_FORCE_DWORD	= 0x7fffffff
	};
*/
	//! SetLocale() for printf
	enum LocalSettings
	{
		FLX_LOCALE_ENGLISH			= 0,
		FLX_LOCALE_FRENCH			= 1,

		FLX_LOCALE_FORCE_DWORD		= 0x7fffffff
	};

	//! Exportation settings. You can here customize the way Flexporter exports information from MAX.
	class FLEXPORTER_API ExportSettings
	{
		public:
		// Constructor / Destructor
							ExportSettings()
							{
//								mCompression				= FLX_COMPRESSION_NONE;
//								mNbBits						= 8;
								mExportWholeScene			= true;
								mExportVisTrack				= false;
								mExportHiddenNodes			= false;
								mAutoUnload					= false;
								mAutoLoad					= false;
								mGlobalScale				= 1.0f;
								mLocale						= FLX_LOCALE_ENGLISH;
								mExportPHYSIQUE				= true;
								mExportSKIN					= false;
								mExportBIPED				= false;
								mAlwaysExportMotion			= false;

								mExpUVW						= false;
								mDiscardW					= true;
								mExpVTXColor				= false;
								mUseSmgrp					= true;
								mRemoveScaling				= true;
								mConvertToD3D				= true;
								mAbsolutePRS				= false;
								mConvexHull					= false;
								mBoundingSphere				= false;
								mInertiaTensor				= false;
								mEdgeVis					= false;
								mMakeManifold				= false;
								mExpTargetNodes				= false;
								mDiscardInstances			= false;

								mConsolidateMesh			= false;
								mComputeFaceNormals			= false;
								mComputeVertexNormals		= false;
								mExportNormalInfo			= false;
								mWeightNormalsByArea		= false;
								mCacheOptimize				= false;

								mForceAmbient				= false;
								mForceDiffuse				= false;
								mForceSpecular				= false;
								mForceFilter				= false;
								mExpMtlCtrl					= false;
								mMaterialSharing			= false;

								mOpacityInAlpha				= true;
								mTexnameOnly				= false;
								mTexMaxSize					= 256;
								mKeepAmbientTexture			= false;
								mKeepDiffuseTexture			= true;
								mKeepSpecularTexture		= false;
								mKeepShininessTexture		= false;
								mKeepShiningStrengthTexture	= false;
								mKeepSelfIllumTexture		= false;
								mKeepOpacityTexture			= true;
								mKeepFilterTexture			= false;
								mKeepBumpTexture			= false;
								mKeepReflexionTexture		= false;
								mKeepRefractionTexture		= false;
								mKeepDisplacementTexture	= false;
								mFlipHorizontal				= false;
								mFlipVertical				= false;
								mQuantizeTextures			= false;
								mDiscardTextureAlpha		= false;

								mExpCameras					= true;
								mExpFOVCtrl					= false;
								mExpCamCtrl					= false;

								mExpLights					= true;
								mExpLitCtrl					= false;
								mExpProjMaps				= false;
								mComputeVtxColors			= false;
								mComputeShadows				= false;
								mColorSmoothing				= false;

								mSingleFrame				= true;
								mSampling					= true;
								mSamplingRate				= 1;

								mExpShapes					= false;
								mShapeToMesh				= false;
								mExpHelpers					= false;
								mExpSpaceWarps				= false;

								mExportIK					= false;
							}

							~ExportSettings()
							{
							}

		inline_	long		GetSamplingRate()	const		{ return mSamplingRate>0 ? mSamplingRate : 1;	}

		// General settings
//				udword		mCompression;					//!< Compression settings (see above)
//				long		mNbBits;						//!< Number of bits / quantized coordinate
				bool		mExportWholeScene;				//!< Export whole scene or single node
				bool		mExportVisTrack;				//!< Export visibility track
				bool		mExportHiddenNodes;				//!< Export hidden nodes or discard them
				bool		mAutoUnload;					//!< Automatically unload plug-ins after each export
				bool		mAutoLoad;						//!< Automatically load settings from the registry
				float		mGlobalScale;					//!< Global scaling factor
				udword		mLocale;						//!< Local settings
				bool		mExportPHYSIQUE;				//!< Export PHYSIQUE modifiers as characters (else as standard meshes)
				bool		mExportSKIN;					//!< Export SKIN modifiers as characters (else as standard meshes)
				bool		mExportBIPED;					//!< Export BIPED parts or discard them
				bool		mAlwaysExportMotion;			//!< Export motion data in main file
		// Meshes settings
		//		bool		mCreateStrips;					//!< Create triangle strips or not
				bool		mExpUVW;						//!< Export UVW mappings or discard them
				bool		mDiscardW;						//!< Discard W in UVW or keep it
				bool		mExpVTXColor;					//!< Export vertex colors or discard them
				bool		mUseSmgrp;						//!< Use smoothing groups or discard them
		//		bool		mExpNorm;						//!< Export normals or not
		//		bool		mLOD;							//!< Compute progressive meshes or not
				bool		mRemoveScaling;					//!< Remove non-uniform scaling of all nodes
				bool		mConvertToD3D;					//!< Convert from MAX frame to D3D frame
				bool		mAbsolutePRS;					//!< Export absolute PRS values (else relative to parent)
				bool		mConvexHull;					//!< Flexporter can compute the convex hull for you
				bool		mBoundingSphere;				//!< Flexporter can compute the bounding sphere for you
				bool		mInertiaTensor;					//!< Flexporter can compute the inertia tensor for you
				bool		mEdgeVis;						//!< Export edge visibility
				bool		mMakeManifold;					//!< Make manifold mesh (remove singular edges)
				bool		mExpTargetNodes;				//!< Export target nodes or discard them
				bool		mDiscardInstances;				//!< Export instances as real meshes
		// Consolidation settings
				bool		mConsolidateMesh;				//!< Flexporter can rebuild a clean mesh for you
				bool		mComputeFaceNormals;			//!< Flexporter can compute and export face normals
				bool		mComputeVertexNormals;			//!< Flexporter can compute and export vertex normals
				bool		mExportNormalInfo;				//!< Export NormalInfo field or not
				bool		mWeightNormalsByArea;			//!< Take face areas into account in normal computation
				bool		mCacheOptimize;					//!< Optimize consolidation for cache coherency
		// Material settings
				bool		mForceAmbient;					//!< Force material ambient color to pure white.
				bool		mForceDiffuse;					//!< Force material diffuse color to pure white.
				bool		mForceSpecular;					//!< Force material specular color to pure white.
				bool		mForceFilter;					//!< Force material filter color to black.
				bool		mExpMtlCtrl;					//!< Export material controllers or discard them
				bool		mMaterialSharing;				//!< Try to share materials accross objects (by discarding its name)
		// Texture settings
				bool		mOpacityInAlpha;				//!< Pack the opacity map in the diffuse map alpha channel
				bool		mTexnameOnly;					//!< Only reports the texture's name, not the pixel buffer
				udword		mTexMaxSize;					//!< Texture maximum size
				bool		mKeepAmbientTexture;			//!< Export ambient textures, or discard them
				bool		mKeepDiffuseTexture;			//!< Export diffuse textures, or discard them
				bool		mKeepSpecularTexture;			//!< Export specular textures, or discard them
				bool		mKeepShininessTexture;			//!< Export shininess textures, or discard them
				bool		mKeepShiningStrengthTexture;	//!< Export shining strength textures, or discard them
				bool		mKeepSelfIllumTexture;			//!< Export self-illum textures, or discard them
				bool		mKeepOpacityTexture;			//!< Export opacity textures, or discard them
				bool		mKeepFilterTexture;				//!< Export filter textures, or discard them
				bool		mKeepBumpTexture;				//!< Export bump textures, or discard them
				bool		mKeepReflexionTexture;			//!< Export reflexion textures, or discard them
				bool		mKeepRefractionTexture;			//!< Export refraction textures, or discard them
				bool		mKeepDisplacementTexture;		//!< Export displacement textures, or discard them
				bool		mFlipHorizontal;				//!< Flip texture horizontally before exporting
				bool		mFlipVertical;					//!< Flip texture vertically before exporting
				bool		mQuantizeTextures;				//!< Convert to 256-colors textures
				bool		mDiscardTextureAlpha;			//!< Discard texture's alpha channel
		// Camera settings
				bool		mExpCameras;					//!< Export cameras or discard them
				bool		mExpFOVCtrl;					//!< Export FOV controller or discard them
				bool		mExpCamCtrl;					//!< Export cameras attributes controllers or discard them

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -