The ID3DXTextureGutterHelper interface is used to build and manage gutter regions in a texture. Gutter regions separate textures and allow for bilinear interpolation to avoid rendering artifacts at texture boundaries.
The Get... methods provide access to the data structures used by the Apply... methods.
The ID3DXTextureGutterHelper interface inherits from the IUnknown interface. ID3DXTextureGutterHelper also has these types of members:
The ID3DXTextureGutterHelper interface has these methods.
|ApplyGuttersFloat||Applies gutters to a FLOAT texture buffer.
|ApplyGuttersPRT||Applies gutters to an ID3DXPRTBuffer buffer object.
|ApplyGuttersTex||Applies gutters to an IDirect3DTexture9 texture object.
|GetBaryMap||Retrieves texel barycentric coordinates.
|GetFaceMap||Retrieves the index of the mesh face to which each texel belongs.
|GetGutterMap||Receives a texel class value that indicates texel class according to each texel's location.
|GetHeight||Retrieves the height of the texture, in pixels.
|GetTexelMap||Retrieves the (u, v) texture coordinates of each texel.
|GetWidth||Retrieves the width of the texture, in pixels.
|ResampleTex||Resamples a texture into this gutterhelper's parameterization.
|SetBaryMap||Sets texel barycentric coordinates.
|SetFaceMap||Sets the index of the mesh face to which each texel belongs.
|SetGutterMap||Sets a texel class value that indicates texel class according to each texel's location.
|SetTexelMap||Sets the (u, v) texture coordinates of each texel.
When used with precomputed radiance transfer (PRT), this interface requires a unique parameterization of the model. Every texel must correspond to a single point on the surface of the model and vice-versa. If the model includes multiple textures, it must be split into separate pieces that each contain one gutter helper object per texture.
This interface can be used to generate a map in texture space in which each texel is in one of four classes.
|Texel Class||Texel Location|
|0||Invalid point; texel will not be used.|
|4||Inside gutter; texel will be evaluated as a full sample in the ID3DXTextureGutterHelper::ApplyGuttersFloat, ID3DXTextureGutterHelper::ApplyGuttersTex, or ID3DXTextureGutterHelper::ApplyGuttersPRT methods.|
For classes 1 and 2, a texel is stored with the face it belongs to, along with barycentric coordinates of the first two vertices of that face. Gutter vertices are assigned to the closest edge in texture space.
There is no texel class 3.
The ID3DXTextureGutterHelper interface is obtained by calling the D3DXCreateTextureGutterHelper function.
The LPD3DXTEXTUREGUTTERHELPER type is defined as a pointer to the ID3DXTextureGutterHelper interface.
typedef interface ID3DXTextureGutterHelper ID3DXTextureGutterHelper; typedef interface ID3DXTextureGutterHelper *LPD3DXTEXTUREGUTTERHELPER;