- Main Page
- Classes
- Files
- Directories
- Examples

- File List
- File Members

# fbxlayeredtexture.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_LAYERED_TEXTURE_H_
    00014 #define _FBXSDK_SCENE_SHADING_LAYERED_TEXTURE_H_
    00015
    00016 #include <fbxsdk/fbxsdk_def.h>
    00017
    00018 #include <fbxsdk/scene/fbxgroupname.h>
    00019 #include <fbxsdk/scene/shading/fbxtexture.h>
    00020
    00021 #include <fbxsdk/fbxsdk_nsbegin.h>
    00022
    00044 class FBXSDK_DLL FbxLayeredTexture : public FbxTexture
    00045 {
    00046     FBXSDK_OBJECT_DECLARE(FbxLayeredTexture,FbxTexture);
    00047
    00048 public:
    00083     enum EBlendMode
    00084     {
    00085         eTranslucent,
    00086         eAdditive,
    00087         eModulate,
    00088         eModulate2,
    00089         eOver,
    00090         eNormal,
    00091         eDissolve,
    00092         eDarken,
    00093         eColorBurn,
    00094         eLinearBurn,
    00095         eDarkerColor,
    00096         eLighten,
    00097         eScreen,
    00098         eColorDodge,
    00099         eLinearDodge,
    00100         eLighterColor,
    00101         eSoftLight,
    00102         eHardLight,
    00103         eVividLight,
    00104         eLinearLight,
    00105         ePinLight,
    00106         eHardMix,
    00107         eDifference,
    00108         eExclusion,
    00109         eSubtract,
    00110         eDivide,
    00111         eHue,
    00112         eSaturation,
    00113         eColor,
    00114         eLuminosity,
    00115         eOverlay,
    00116         eBlendModeCount
    00117     };
    00118
    00123     bool operator==( const FbxLayeredTexture& pOther ) const;
    00124
    00130     bool SetTextureBlendMode( int pIndex, EBlendMode pMode );
    00131
    00137     bool GetTextureBlendMode( int pIndex, EBlendMode& pMode ) const;
    00138
    00144     bool SetTextureAlpha( int pIndex, double pAlpha );
    00145
    00151     bool GetTextureAlpha( int pIndex, double& pAlpha ) const;
    00152
    00154 //
    00155 //  WARNING!
    00156 //
    00157 //  Anything beyond these lines may not be documented accurately and is
    00158 //  subject to change without notice.
    00159 //
    00161 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00162
    00163 protected:
    00164
    00165     struct InputData
    00166     {
    00167         EBlendMode mBlendMode;
    00168         double mAlpha;
    00169     };
    00170
    00171 public:
    00172     FbxArray<InputData> mInputData;
    00173
    00174 protected:
    00175     FbxLayeredTexture(FbxManager& pManager, char const* pName);
    00176
    00177     virtual bool ConnecNotify (FbxConnectEvent const &pEvent);
    00178
    00179     bool RemoveInputData( int pIndex );
    00180 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00181 };
    00182
    00183 inline EFbxType FbxTypeOf(const FbxLayeredTexture::EBlendMode&){ return eFbxEnum; }
    00184
    00185 #include <fbxsdk/fbxsdk_nsend.h>
    00186
    00187 #endif /* _FBXSDK_SCENE_SHADING_LAYERED_TEXTURE_H_ */