#include <revolution/gx.h>
void GXSetTevIndWarp( GXTevStageID tev_stage,
GXIndTexStageID ind_stage,
GXBool signed_offsets,
GXBool replace_mode,
GXIndTexMtxID matrix_sel);
| tev_stage | TEV stage to be set. Accepted values are: GX_TEVSTAGE0, GX_TEVSTAGE1, GX_TEVSTAGE2, ... , GX_TEVSTAGE15. |
||||||||
|---|---|---|---|---|---|---|---|---|---|
| ind_stage | The indirect stage results used with this TEV stage. Accepted values are: GX_INDTEXSTAGE0, GX_INDTEXSTAGE1, GX_INDTEXSTAGE2 and GX_INDTEXSTAGE3. |
||||||||
| signed_offsets | Specifies whether the 8-bit offset is signed and biased (GX_TRUE) or unsigned (GX_FALSE). |
||||||||
| replace_mode | Specifies whether the offset will replace the regular texture coordinates (GX_TRUE) or be added to them (GX_FALSE). |
||||||||
| matrix_sel | Specifies the indirect matrix and scale value for the offset. Accepted values are:
|
None.
This function allows an indirect map to warp or distort the texture coordinates used with a regular TEV stage lookup. The indirect map must have 8-bit offsets, which may be signed or unsigned. Signed means biased; if signed_offsets is GX_TRUE, 128 is subtracted from the values looked up from the indirect map. The indirect results can either modify or completely replace the regular texture coordinates. The indirect matrix and scale can be used to modify the indirect offsets.
For users who want to learn more, the following code sample uses the GXSetTevIndirect function to perform operations equivalent to this function.
{
GXSetTevIndirect(
tev_stage, // tev stage
ind_stage, // indirect stage
GX_ITF_8, // format
(signed_offset) ? GX_ITB_STU : GX_ITB_NONE, // bias
(replace_mode) ? GX_ITW_0 : GX_ITW_OFF, //
matrix select
wrap, //
wrap direct S
wrap, //
wrap direct T
FALSE, //
add prev stage output?
FALSE, //
use unmodified TC for LOD?
GX_ITBA_OFF // bump alpha select
);
}
2006/03/01 Initial version.
CONFIDENTIAL