00001 /**************************************************************************************** 00002 00003 Copyright (C) 2012 Autodesk, Inc. 00004 All rights reserved. 00005 00006 Use of this software is subject to the terms of the Autodesk license agreement 00007 provided at the time of installation or download, or which otherwise accompanies 00008 this software in either electronic or hard copy form. 00009 00010 ****************************************************************************************/ 00011 00013 #ifndef _FBXSDK_SCENE_SHADING_SURFACE_MATERIAL_H_ 00014 #define _FBXSDK_SCENE_SHADING_SURFACE_MATERIAL_H_ 00015 00016 #include <fbxsdk/fbxsdk_def.h> 00017 00018 #include <fbxsdk/core/fbxobject.h> 00019 #include <fbxsdk/scene/fbxgroupname.h> 00020 00021 #include <fbxsdk/fbxsdk_nsbegin.h> 00022 00026 class FBXSDK_DLL FbxSurfaceMaterial : public FbxObject 00027 { 00028 FBXSDK_OBJECT_DECLARE(FbxSurfaceMaterial, FbxObject); 00029 00030 public: 00035 00036 static char const* sShadingModel; 00037 static char const* sMultiLayer; 00038 00039 static char const* sEmissive; 00040 static char const* sEmissiveFactor; 00041 00042 static char const* sAmbient; 00043 static char const* sAmbientFactor; 00044 00045 static char const* sDiffuse; 00046 static char const* sDiffuseFactor; 00047 00048 static char const* sSpecular; 00049 static char const* sSpecularFactor; 00050 static char const* sShininess; 00051 00052 static char const* sBump; 00053 static char const* sNormalMap; 00054 static char const* sBumpFactor; 00055 00056 static char const* sTransparentColor; 00057 static char const* sTransparencyFactor; 00058 00059 static char const* sReflection; 00060 static char const* sReflectionFactor; 00061 00062 static char const* sDisplacementColor; 00063 static char const* sDisplacementFactor; 00064 00065 static char const* sVectorDisplacementColor; 00066 static char const* sVectorDisplacementFactor; 00068 00073 FbxPropertyT<FbxString> ShadingModel; 00074 FbxPropertyT<FbxBool> MultiLayer; 00076 00078 // Static values 00080 00085 00086 static const FbxBool sMultiLayerDefault; 00087 static char const* sShadingModelDefault; 00088 00090 00092 // 00093 // WARNING! 00094 // 00095 // Anything beyond these lines may not be documented accurately and is 00096 // subject to change without notice. 00097 // 00099 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00100 protected: 00101 bool SetColorParameter(FbxProperty pProperty, FbxColor const& pColor); 00102 bool GetColorParameter(FbxProperty pProperty, FbxColor& pColor) const; 00103 bool SetDoubleParameter(FbxProperty pProperty, double pDouble); 00104 bool GetDoubleParameter(FbxProperty pProperty, double pDouble) const; 00105 00106 FbxSurfaceMaterial(FbxManager& pManager, char const* pName); 00107 00108 virtual bool ConstructProperties(bool pForceSet); 00109 00110 protected: 00111 00112 friend class FbxLayerContainer; 00113 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS 00114 }; 00115 00116 #include <fbxsdk/fbxsdk_nsend.h> 00117 00118 #endif /* _FBXSDK_SCENE_SHADING_SURFACE_MATERIAL_H_ */