Classes | Public Types | Public Member Functions | Public Attributes | Protected Member Functions

KFbxLayeredTexture Class Reference

This reference page is linked to from the following overview topics: FBX SDK 2012, Meshes, Materials and Textures, Layered Textures, List of Python FBX classes.


Search for all occurrences

Detailed Description

KFbxLayeredTexture is a combination of multiple textures(KFbxTexture) blended sequentially.

For example, you can access individual texture by:

 KFbxTexture* pIndiTexture = lLayeredTexture->GetSrcObject(KFbxTexture::ClassId, pTextureIndex);

Another example to construct a layered texture with two sub textures.

 KFbxFileTexture *background, *file1;
 KFbxLayeredTexture* layeredTexture;

 // connect two file textures to a layered texture via OO connections
 layeredTexture->ConnectSrcObject(background);
 layeredTexture->ConnectSrcObject(file1);

 // set the second file texture's blend mode and alpha.
 layeredTexture->SetTextureBlendMode(1, KFbxLayeredTexture::eOVER);
 layeredTexture->SetTextureAlpha(1, 0.5);
See also:
KFbxTexture
Examples:

ImportScene/DisplayMaterial.cxx, ImportScene/DisplayMesh.cxx, ImportScene/DisplayTexture.cxx, and Layers/main.cxx.

Definition at line 46 of file kfbxlayeredtexture.h.

#include <kfbxlayeredtexture.h>

Inheritance diagram for KFbxLayeredTexture:
Inheritance graph
[legend]

List of all members.

Classes

struct   InputData

Public Types

enum   EBlendMode {
  eTRANSLUCENT, eADDITIVE, eMODULATE, eMODULATE2,
  eOVER, eNORMAL, eDISSOLVE, eDARKEN,
  eCOLORBURN, eLINEARBURN, eDARKERCOLOR, eLIGHTEN,
  eSCREEN, eCOLORDODGE, eLINEARDODGE, eLIGHTERCOLOR,
  eSOFTLIGHT, eHARDLIGHT, eVIVIDLIGHT, eLINEARLIGHT,
  ePINLIGHT, eHARDMIX, eDIFFERENCE, eEXCLUSION,
  eSUBTRACT, eDIVIDE, eHUE, eSATURATION,
  eCOLOR, eLUMINOSITY
}
 

Blend modes.

More...

Public Member Functions

bool  operator== (const KFbxLayeredTexture &pOther) const
  Equivalence operator.
bool  SetTextureBlendMode (int pIndex, EBlendMode pMode)
  Sets the blending mode of a specified texture.
bool  GetTextureBlendMode (int pIndex, EBlendMode &pMode) const
  Returns the blending mode of a specified texture.
bool  SetTextureAlpha (int pIndex, double pAlpha)
  Sets the alpha of a specified texture.
bool  GetTextureAlpha (int pIndex, double &pAlpha) const
  Returns the alpha of a specified texture.

Public Attributes

KArrayTemplate< InputData mInputData

Protected Member Functions

  KFbxLayeredTexture (KFbxSdkManager &pManager, char const *pName)
virtual bool  ConnecNotify (KFbxConnectEvent const &pEvent)
bool  RemoveInputData (int pIndex)

Member Enumeration Documentation

Blend modes.

  • eTRANSLUCENT, The new texture layer is transparent (depending on the Alpha value).
  • eADDITIVE, Add the color of the new texture to the previous texture.
  • eMODULATE, Multiples the color value of the new texture by the color values of all previous layers of texture.
  • eMODULATE2, Multiples the color value of the new texture by two and then by the color values of all previous layers of texture.
  • eOVER, Blends the new texture over top of the old texture, according to the new texture's alpha channel.
  • eNORMAL, The colors of the two layers will not interact in any way, and it will display the full value of the colors in layer 1.
  • eDISSOLVE, Dissolve makes the lower layer take on the colors of the top layer, and how much depends on the opacity of the upper layer.
  • eDARKEN, Darken compares each pixel value of the upper layer to its counterpart's pixel value of the lower layer and chooses the darker of the two to display.
  • eCOLORBURN, Color Burn burns in the color of the upper layer with the lower layer. No part of the image will get lighter.
  • eLINEARBURN, Linear Burn works like multiply but the results are more intense.
  • eDARKERCOLOR, This blend mode simply divides pixel values of one layer with the other.
  • eLIGHTEN, Lighten compares the two layers pixel for pixel and uses the lightest pixel value. No part of the image gets darker.
  • eSCREEN, Screen brightens by lightning the lower layer based on the lightness of the upper layer
  • eCOLORDODGE, Color Dodge dodges the lower layer with the upper layer, resulting in a lighter image. No part of the image will be darkened.
  • eLINEARDODGE, Linear Dodge works like screen but with more intense results.
  • eLIGHTERCOLOR, This blend mode has the opposite effect of the Darker Color mode. It compares all the values in both layers, then displays the lightest values.
  • eSOFTLIGHT, Soft Light will multiply the dark tones and screen the light tones.
  • eHARDLIGHT, Hard Light multiplies the dark colors and screens the light colors.
  • eVIVIDLIGHT, Vivid Light will dodges or burn the lower layer pixels depending on whether the upper layer pixels are brighter or darker than neutral gray. It works on the contrast of the lower layer.
  • eLINEARLIGHT, Linear Light is the same as Vivid light but it works on the brightness of the lower layer.
  • ePINLIGHT, Pin Light changes the lower layer pixels depending on how bright the pixels are in the upper layer.
  • eHARDMIX, Produces either white or black, depending on similarities between A and B.
  • eDIFFERENCE, Difference reacts to the differences between the upper and lower layer pixels.
  • eEXCLUSION, Exclusion uses the darkness of the lower layer to mask the difference between upper and lower layers.
  • eSUBTRACT, The result color is the foreground color subtracted from the background color. The result color is then applied over the background color using the foreground alpha to define the opacity of the result.
  • eDIVIDE, This blend mode simply divides pixel values of one layer with the other.
  • eHUE, Hue changes the hue of the lower layer to the hue of the upper layer but leaves brightness and saturation alone.
  • eSATURATION, Saturation changes the saturation of the lower layer to the hue of the upper layer but leaves brightness and hue alone.
  • eCOLOR, Color changes the hue and saturation of the lower layer to the hue and saturation of the upper layer but leaves luminosity alone.
  • eLUMINOSITY Luminosity changes the luminosity of the lower layer to the luminosity of the upper layer while leaving hue and saturation the same.
Enumerator:
eTRANSLUCENT 

The texture is transparent, depending on the Alpha settings.

eADDITIVE 

The color of the texture is added to the previous texture.

eMODULATE 

The color value of the texture is multiplied by the color values of all previous layers of texture.

eMODULATE2 

The color value of the texture is multiplied by two and then multiplied by the color values of all previous layers of texture.

eOVER 

The texture is opaque.

eNORMAL 
eDISSOLVE 
eDARKEN 
eCOLORBURN 
eLINEARBURN 
eDARKERCOLOR 
eLIGHTEN 
eSCREEN 
eCOLORDODGE 
eLINEARDODGE 
eLIGHTERCOLOR 
eSOFTLIGHT 
eHARDLIGHT 
eVIVIDLIGHT 
eLINEARLIGHT 
ePINLIGHT 
eHARDMIX 
eDIFFERENCE 
eEXCLUSION 
eSUBTRACT 
eDIVIDE 
eHUE 
eSATURATION 
eCOLOR 
eLUMINOSITY 

Reimplemented from KFbxTexture.

Definition at line 83 of file kfbxlayeredtexture.h.


Constructor & Destructor Documentation

KFbxLayeredTexture ( KFbxSdkManager pManager,
char const *  pName 
) [protected]

Member Function Documentation

bool operator== ( const KFbxLayeredTexture pOther ) const

Equivalence operator.

Parameters:
pOther The object for comparison.
Returns:
True if pOther is equivalent to this object, returns false otherwise.
bool SetTextureBlendMode ( int  pIndex,
EBlendMode  pMode 
)

Sets the blending mode of a specified texture.

Parameters:
pIndex The texture index.
pMode The blend mode to be set.
Returns:
True if successful, returns false otherwise.
Examples:
Layers/main.cxx.
bool GetTextureBlendMode ( int  pIndex,
EBlendMode pMode 
) const

Returns the blending mode of a specified texture.

Parameters:
pIndex The texture index.
pMode The parameter that will hold the returned blend mode.
Returns:
True if successful, returns false otherwise.
Examples:
ImportScene/DisplayTexture.cxx.
bool SetTextureAlpha ( int  pIndex,
double  pAlpha 
)

Sets the alpha of a specified texture.

Parameters:
pIndex The texture index.
pAlpha The alpha to be set.
Returns:
True if successful, returns false otherwise.
bool GetTextureAlpha ( int  pIndex,
double &  pAlpha 
) const

Returns the alpha of a specified texture.

Parameters:
pIndex The texture index.
pAlpha The parameter that will hold the returned alpha.
Returns:
True if successful, returns false otherwise.
virtual bool ConnecNotify ( KFbxConnectEvent const &  pEvent ) [protected, virtual]
bool RemoveInputData ( int  pIndex ) [protected]

Member Data Documentation


The documentation for this class was generated from the following file:

KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture
KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture KFbxLayeredTexture