fbxsurfacematerial.h

Go to the documentation of this file.
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_ */