Important: |
---|
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist. |
This enumeration provides flags that control when a transformation matrix is applied to a texture in a texture stage state. These flags are used to set the value of the D3DTSS_TEXTURETRANSFORMFLAGS texture stage state for the D3DMTEXTURESTAGESTATETYPEenumeration.
Syntax
typedef enum _D3DMTEXTURETRANSFORMFLAGS { D3DMTTFF_DISABLE = 0, D3DMTTFF_COUNT1 = 1, D3DMTTFF_COUNT2 = 2, D3DMTTFF_COUNT3 = 3, D3DMTTFF_PROJECTED = 256, D3DMTTFF_FORCE_ULONG = 0x7fffffff, } D3DMTEXTURETRANSFORMFLAGS; |
Elements
- D3DMTTFF_DISABLE
-
Specifies that the transformation is disabled and the coordinates are passed directly to the rasterizer.
- D3DMTTFF_COUNT1
-
Specifies that the transformation is enabled and only one coordinate is passed to the rasterizer.
- D3DMTTFF_COUNT2
-
Specifies that the transformation is enabled and two coordinate values are passed to the rasterizer.
- D3DMTTFF_COUNT3
-
Specifies that the transformation is enabled and three coordinate values are passed to the rasterizer.
- D3DMTTFF_PROJECTED
-
Specifies that all of the texture coordinates will be divided by the value of the last coordinate, as denoted by texture coordinate count. For example, if D3DMTTFF_COUNT2 is specified with D3DMTTFF_PROJECTED, the first coordinate will be divided by the second, resulting in a 1D texture coordinate. Depending on the capabilities exposed by the driver, the division can occur before or after the values are passed to the rasterizer. The following lists describes the support for D3DMTTFF_PROJECTED based on combinations of capability bits.
- If the driver supports D3DMPTEXTURECAPS_PROJECTED and
D3DMPTEXTURECAPS_PROJECTEDSUPPORT then the driver supports
D3DMTTFF_PROJECTED, then it will perform the division on a
per-pixel basis within the rasterizer.
- If the driver does not support D3DMPTEXTURECAPS_PROJECTED but
does support D3DMPTEXTURECAPS_PROJECTEDSUPPORT, then the driver
supports D3DMTTFF_PROJECTED. As a result, it will perform the
division on a per-vertex basis prior to sending the values to the
rasterizer. The per-vertex operation is particularly evident when
inspecting the output of
IDirect3DMobileDevice::ProcessVerticesfrom a driver that
exposes these
D3DMCAPSbits.
- If the driver does not support D3DMPTEXTURECAPS_PROJECTED and
does not support D3DMPTEXTURECAPS_PROJECTEDSUPPORT then the driver
does not support D3DMTTFF_PROJECTED.
- The combination of a driver supporting
D3DMPTEXTURECAPS_PROJECTED but not supporting
D3DMPTEXTURECAPS_PROJECTEDSUPPORT is not valid and should never
occur.
The flag D3DMTTFF_PROJECTED is valid with all other stage states, including D3DMTTFF_DISABLE.
- If the driver supports D3DMPTEXTURECAPS_PROJECTED and
D3DMPTEXTURECAPS_PROJECTEDSUPPORT then the driver supports
D3DMTTFF_PROJECTED, then it will perform the division on a
per-pixel basis within the rasterizer.
- D3DMTTFF_FORCE_ULONG
-
Forces the compiler to interpret the enumeration as a ULONG value. This value is not used directly in Direct3D Mobile programming.
Requirements
Header | d3dmtypes.h |
Windows Embedded CE | Windows CE 5.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |