D3DTEXTURESTAGESTATETYPE

This enumeration defines texture stage states.

typedef enum _D3DTEXTURESTAGESTATETYPE {
  D3DTSS_COLOROP = 1,
  D3DTSS_COLORARG1 = 2,
  D3DTSS_COLORARG2 = 3,
  D3DTSS_ALPHAOP = 4,
  D3DTSS_ALPHAARG1 = 5,
  D3DTSS_ALPHAARG2 = 6,
  D3DTSS_BUMPENVMAT00 = 7,
  D3DTSS_BUMPENVMAT01 = 8,
  D3DTSS_BUMPENVMAT10 = 9,
  D3DTSS_BUMPENVMAT11 = 10,
  D3DTSS_TEXCOORDINDEX = 11,
  D3DTSS_ADDRESSU = 13,
  D3DTSS_ADDRESSV = 14,
  D3DTSS_BORDERCOLOR = 15,
  D3DTSS_MAGFILTER = 16,
  D3DTSS_MINFILTER = 17,
  D3DTSS_MIPFILTER = 18,
  D3DTSS_MIPMAPLODBIAS = 19,
  D3DTSS_MAXMIPLEVEL = 20,
  D3DTSS_MAXANISOTROPY = 21,
  D3DTSS_BUMPENVLSCALE = 22,
  D3DTSS_BUMPENVLOFFSET = 23,
  D3DTSS_TEXTURETRANSFORMFLAGS = 24,
  D3DTSS_ADDRESSW = 25,
  D3DTSS_COLORARG0 = 26,
  D3DTSS_ALPHAARG0 = 27,
  D3DTSS_RESULTARG = 28,
  D3DTSS_FORCE_DWORD = 0x7fffffff
} D3DTEXTURESTAGESTATETYPE;

Constants

  • D3DTSS_COLOROP
    The texture-stage state is a texture color blending operation identified by one member of the D3DTEXTUREOP enumerated type. The default value for the first texture stage (stage 0) is D3DTOP_MODULATE, and for all other stages the default is D3DTOP_DISABLE.

  • D3DTSS_COLORARG1
    The texture-stage state is the first color argument for the stage, identified by a texture argument flag. The default argument is D3DTA_TEXTURE.

    Specify D3DTA_TEMP to select a temporary register color for read or write. D3DTA_TEMP is supported if the D3DPMISCCAPS_TSSARGTEMP device capability is present. The default value for the register is (0.0, 0.0, 0.0, 0.0)

  • D3DTSS_COLORARG2
    The texture-stage state is the second color argument for the stage, identified by a texture argument flag. The default argument is D3DTA_CURRENT.

    Specify D3DTA_TEMP to select a temporary register color for read or write. D3DTA_TEMP is supported if the D3DPMISCCAPS_TSSARGTEMP device capability is present. The default value for the register is (0.0, 0.0, 0.0, 0.0)

  • D3DTSS_ALPHAOP
    The texture-stage state is a texture alpha blending operation identified by one member of the D3DTEXTUREOP enumerated type. The default value for the first texture stage (stage 0) is D3DTOP_SELECTARG1, and for all other stages the default is D3DTOP_DISABLE.

  • D3DTSS_ALPHAARG1
    The texture-stage state is the first alpha argument for the stage, identified by a texture argument flag. The default argument is D3DTA_TEXTURE. If no texture is set for this stage, the default argument is D3DTA_DIFFUSE.

    Specify D3DTA_TEMP to select a temporary register color for read or write. D3DTA_TEMP is supported if the D3DPMISCCAPS_TSSARGTEMP device capability is present. The default value for the register is (0.0, 0.0, 0.0, 0.0).

  • D3DTSS_ALPHAARG2
    The texture-stage state is the second alpha argument for the stage, identified by a texture argument flag. The default argument is D3DTA_CURRENT.

    Specify D3DTA_TEMP to select a temporary register color for read or write. D3DTA_TEMP is supported if the D3DPMISCCAPS_TSSARGTEMP device capability is present. The default value for the register is (0.0, 0.0, 0.0, 0.0)

  • D3DTSS_BUMPENVMAT00
    Not supported.

  • D3DTSS_BUMPENVMAT01
    Not supported.

  • D3DTSS_BUMPENVMAT10
    Not supported.

  • D3DTSS_BUMPENVMAT11
    Not supported.

  • D3DTSS_TEXCOORDINDEX
    Index of the texture coordinate set to use with this texture stage. You can specify up to eight sets of texture coordinates per vertex. If a vertex does not include a set of texture coordinates at the specified index, the system defaults to the u and v coordinates (0,0).

    This flag is used only for fixed-function vertex processing.

    Additionally, applications can include, as logical OR with the index being set, one of the following flags to request that Microsoft® Direct3D® automatically generate the input texture coordinates for a texture transformation. With the exception of D3DTSS_TCI_PASSTHRU, which resolves to zero, if any of the following values is included with the index being set, the system uses the index strictly to determine texture wrapping mode.

    Flag Description
    D3DTSS_TCI_PASSTHRU Use the specified texture coordinates contained within the vertex format. This value resolves to zero.
    D3DTSS_TCI_CAMERASPACENORMAL Use the vertex normal, transformed to camera space, as the input texture coordinates for this stage's texture transformation.
    D3DTSS_TCI_CAMERASPACEPOSITION Use the vertex position, transformed to camera space, as the input texture coordinates for this stage's texture transformation.
    D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR Use the reflection vector, transformed to camera space, as the input texture coordinate for this stage's texture transformation. The reflection vector is computed from the input vertex position and normal vector.
  • D3DTSS_ADDRESSU
    Member of the D3DTEXTUREADDRESS enumerated type. Selects the texture-addressing method for the u coordinate. The default is D3DTADDRESS_WRAP.

  • D3DTSS_ADDRESSV
    Member of the D3DTEXTUREADDRESS enumerated type. Selects the texture-addressing method for the v coordinate. The default value is D3DTADDRESS_WRAP.

  • D3DTSS_BORDERCOLOR
    D3DCOLOR value that describes the color to use for rasterizing texture coordinates outside the [0.0,1.0] range. The default color is 0x00000000.

  • D3DTSS_MAGFILTER
    Member of the D3DTEXTUREFILTERTYPE enumerated type that indicates the texture magnification filter to use when rendering the texture onto primitives. The default value is D3DTEXF_POINT.

  • D3DTSS_MINFILTER
    Member of the D3DTEXTUREFILTERTYPE enumerated type that indicates the texture minification filter to use when rendering the texture onto primitives. The default value is D3DTEXF_POINT.

  • D3DTSS_MIPFILTER
    Member of the D3DTEXTUREFILTERTYPE enumerated type that indicates the texture filter to use between mipmap levels. The default value is D3DTEXF_NONE.

  • D3DTSS_MIPMAPLODBIAS
    Level of detail bias for mipmaps. Can be used to make textures appear chunkier or more blurred. The default value is zero. Values for this state are floating-point values. Because the IDirect3DDevice8::SetTextureStageState and IDirect3DDevice8::GetTextureStageState accept DWORD values, your application must cast a variable that contains the value, as shown in the following code example.

    pd3dDevice->SetTextureStageState(0, D3DTSS_MIPMAPLODBIAS, *((LPDWORD) (&fBias)));
    

    Each unit of bias (+/-1.0) alters the selection by exactly one mipmap level. A negative bias causes the use of larger mipmap levels; the result is a sharper but more aliased image. A positive bias causes the use of smaller mipmap levels; the result is a more blurred image. A positive bias also causes less texture data to be referenced, which can boost performance on some systems.

  • D3DTSS_MAXMIPLEVEL
    Maximum mipmap level of detail that the application allows, expressed as an index from the top of the mipmap chain. Lower values identify higher levels of detail within the mipmap chain. Zero, which is the default, indicates that all levels can be used. Nonzero values indicate that the application cannot display mipmaps that have a higher level of detail than the mipmap at the specified index.

  • D3DTSS_MAXANISOTROPY
    Maximum level of anisotropy. The default value is 1.

  • D3DTSS_BUMPENVLSCALE
    Not supported.

  • D3DTSS_BUMPENVLOFFSET
    Not supported.

  • D3DTSS_TEXTURETRANSFORMFLAGS
    Member of the D3DTEXTURETRANSFORMFLAGS enumerated type that controls the transformation of texture coordinates for this texture stage. The default value is D3DTTFF_DISABLE.

  • D3DTSS_ADDRESSW
    Member of the D3DTEXTUREADDRESS enumerated type. Selects the texture-addressing method for the w coordinate. The default value is D3DTADDRESS_WRAP.

  • D3DTSS_COLORARG0
    Settings for the third color operand for triadic operations (multiply add and linear interpolation), identified by a texture argument flag. This setting is supported if the D3DTEXOPCAPS_MULTIPLYADD or D3DTEXOPCAPS_LERP device capabilities are present.

    Specify D3DTA_TEMP to select a temporary register color for read or write. D3DTA_TEMP is supported if the D3DPMISCCAPS_TSSARGTEMP device capability is present. The default value for the register is (0.0, 0.0, 0.0, 0.0)

  • D3DTSS_ALPHAARG0
    Settings for the alpha channel selector operand for triadic operations (multiply add and linear interpolation), identified by a texture argument flag. This setting is supported if the D3DTEXOPCAPS_MULTIPLYADD or D3DTEXOPCAPS_LERP device capabilities are present.

    Specify D3DTA_TEMP to select a temporary register color for read or write. D3DTA_TEMP is supported if the D3DPMISCCAPS_TSSARGTEMP device capability is present. The default value for the register is (0.0, 0.0, 0.0, 0.0)

  • D3DTSS_RESULTARG
    Setting to select destination register for the result of this stage, identified by a texture argument flag. This value can be set to D3DTA_CURRENT (the default value) or to D3DTA_TEMP, which is a single temporary register that can be read into subsequent stages as an input argument. The final color passed to the fog blender and frame buffer is taken from D3DTA_CURRENT, so the last active texture stage state must be set to write to current.

    This setting is supported if the D3DPMISCCAPS_TSSARGTEMP device capability is present.

  • D3DTSS_FORCE_DWORD
    Forces this enumeration to compile to 32 bits in size. This value is not used.

Remarks

Members of this enumerated type are used with the IDirect3DDevice8::GetTextureStageState and IDirect3DDevice8::SetTextureStageState methods to retrieve and set texture state values.

Requirements

OS Versions: Windows CE .NET 4.0 and later.
Header: D3d8types.h.

See Also

D3DTEXTUREADDRESS | D3DTEXTUREFILTERTYPE | D3DTEXTUREOP | D3DTEXTURETRANSFORMFLAGS | IDirect3DDevice8::GetTextureStageState | IDirect3DDevice8::SetTextureStageState

 Last updated on Thursday, April 08, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.