- Main Page
- Classes
- Files
- Directories

- File List
- File Members

# fbxlayeredtexture.h

Go to the documentation of this file.

    00001 /****************************************************************************************
    00002
    00003    Copyright (C) 2013 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/shading/fbxtexture.h>
    00019
    00020 #include <fbxsdk/fbxsdk_nsbegin.h>
    00021
    00043 class FBXSDK_DLL FbxLayeredTexture : public FbxTexture
    00044 {
    00045     FBXSDK_OBJECT_DECLARE(FbxLayeredTexture, FbxTexture);
    00046
    00047 public:
    00082     enum EBlendMode
    00083     {
    00084         eTranslucent,
    00085         eAdditive,
    00086         eModulate,
    00087         eModulate2,
    00088         eOver,
    00089         eNormal,
    00090         eDissolve,
    00091         eDarken,
    00092         eColorBurn,
    00093         eLinearBurn,
    00094         eDarkerColor,
    00095         eLighten,
    00096         eScreen,
    00097         eColorDodge,
    00098         eLinearDodge,
    00099         eLighterColor,
    00100         eSoftLight,
    00101         eHardLight,
    00102         eVividLight,
    00103         eLinearLight,
    00104         ePinLight,
    00105         eHardMix,
    00106         eDifference,
    00107         eExclusion,
    00108         eSubtract,
    00109         eDivide,
    00110         eHue,
    00111         eSaturation,
    00112         eColor,
    00113         eLuminosity,
    00114         eOverlay,
    00115         eBlendModeCount
    00116     };
    00117
    00122     bool operator==( const FbxLayeredTexture& pOther ) const;
    00123
    00129     bool SetTextureBlendMode( int pIndex, EBlendMode pMode );
    00130
    00136     bool GetTextureBlendMode( int pIndex, EBlendMode& pMode ) const;
    00137
    00143     bool SetTextureAlpha( int pIndex, double pAlpha );
    00144
    00150     bool GetTextureAlpha( int pIndex, double& pAlpha ) const;
    00151
    00152 /*****************************************************************************************************************************
    00153 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
    00154 *****************************************************************************************************************************/
    00155 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00156     virtual FbxObject& Copy(const FbxObject& pObject);
    00157
    00158 protected:
    00159     struct InputData
    00160     {
    00161         EBlendMode mBlendMode;
    00162         double mAlpha;
    00163     };
    00164
    00165 public:
    00166     FbxArray<InputData> mInputData;
    00167
    00168 protected:
    00169     virtual bool ConnectNotify (FbxConnectEvent const &pEvent);
    00170
    00171     bool RemoveInputData( int pIndex );
    00172 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
    00173 };
    00174
    00175 inline EFbxType FbxTypeOf(const FbxLayeredTexture::EBlendMode&){ return eFbxEnum; }
    00176
    00177 #include <fbxsdk/fbxsdk_nsend.h>
    00178
    00179 #endif /* _FBXSDK_SCENE_SHADING_LAYERED_TEXTURE_H_ */