Public Types | Public Member Functions | Protected Member Functions

KFbxLayerElementTexture Class Reference

This reference page is linked to from the following overview topics: List of Python FBX classes.


Search for all occurrences

Detailed Description

Layer element for mapping Textures to a geometry.

This class is deprecated.

Deprecated since FBX SDK 2011. Textures (KFbxTexture derived classes) should be connected to material properties.

For example:

See also:
KFbxSurfaceMaterial

Definition at line 2247 of file kfbxlayer.h.

#include <kfbxlayer.h>

List of all members.

Public Types

enum   EBlendMode {
  eTRANSLUCENT, eADD, 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, eMAXBLEND
}
 

Lets you control how textures are combined when you apply multiple layers of texture to a surface.

More...

Public Member Functions

  CREATE_DECLARE (LayerElementTexture)
  Allocation method.
void  SetBlendMode (EBlendMode pBlendMode)
  Sets the way Textures blend between layers.
void  SetAlpha (double pAlpha)
  Sets the transparency level between multiple texture levels.
EBlendMode  GetBlendMode () const
  Returns the way Textures blend between layers.
double  GetAlpha () const
  Returns the transparency level between multiple levels of textures.
virtual int  MemorySize () const

Protected Member Functions

  KFbxLayerElementTexture ()
  Constructor By default, textures have a Blend Mode of eTRANSLUCENT, a Reference Mode of eINDEX_TO_DIRECT, and an Alpha value of 1.0.

Member Enumeration Documentation

Lets you control how textures are combined when you apply multiple layers of texture to a surface.

  • eTRANSLUCENT The new texture layer is transparent (depending on the Alpha value).
  • eADD 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.
  • eMAXBLEND Marks the end of the blend mode enum.
Enumerator:
eTRANSLUCENT 
eADD 
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 
eMAXBLEND 

Definition at line 2290 of file kfbxlayer.h.


Constructor & Destructor Documentation

KFbxLayerElementTexture ( ) [inline, protected]

Constructor By default, textures have a Blend Mode of eTRANSLUCENT, a Reference Mode of eINDEX_TO_DIRECT, and an Alpha value of 1.0.

Definition at line 2377 of file kfbxlayer.h.

                              : mBlendMode(eTRANSLUCENT)
    {
        mReferenceMode = eINDEX_TO_DIRECT;
        mAlpha         = 1.0;
    }

Member Function Documentation

CREATE_DECLARE ( LayerElementTexture  )

Allocation method.

Returns:
A pointer to the layer element or NULL if creation fails.
void SetBlendMode ( EBlendMode  pBlendMode ) [inline]

Sets the way Textures blend between layers.

Parameters:
pBlendMode A valid blend mode.

Definition at line 2328 of file kfbxlayer.h.

{ mBlendMode = pBlendMode; }
void SetAlpha ( double  pAlpha ) [inline]

Sets the transparency level between multiple texture levels.

Parameters:
pAlpha Set to a value between 0.0 and 1.0, where 0.0 is totally transparent and 1.0 is totally opaque.
Remarks:
Values smaller than 0.0 are clipped to 0.0, while values greater than 1.0 are clipped to 1.0.

Definition at line 2334 of file kfbxlayer.h.

    {
        if (pAlpha > 1.0)
            mAlpha = 1.0;
        else if (pAlpha < 0.0)
            mAlpha = 0.0;
        else
            mAlpha = pAlpha;
    }
EBlendMode GetBlendMode ( ) const [inline]

Returns the way Textures blend between layers.

Returns:
The current Blend Mode.

Definition at line 2347 of file kfbxlayer.h.

{ return mBlendMode; } 
double GetAlpha ( ) const [inline]

Returns the transparency level between multiple levels of textures.

Returns:
An alpha value between 0.0 and 1.0, where 0.0 is totally transparent and 1.0 is totally opaque.

Definition at line 2352 of file kfbxlayer.h.

{ return mAlpha; }
virtual int MemorySize ( ) const [inline, virtual]

Definition at line 2364 of file kfbxlayer.h.

    {
        int size = KFbxLayerElementTextureBase::MemorySize();
        size += sizeof(mBlendMode);
        size += sizeof(mAlpha);
        return size;
    }

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

KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture
KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture KFbxLayerElementTexture