GPU/Internal Registers: Difference between revisions
Steveice10 (talk | contribs) |
Steveice10 (talk | contribs) |
||
| Line 4,376: | Line 4,376: | ||
| 16 | | 16 | ||
| Clear texture cache (0 = don't clear, 1 = clear) | | Clear texture cache (0 = don't clear, 1 = clear) | ||
|} | |||
=== GPUREG_TEXUNIT''i''_BORDER_COLOR === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-7 | |||
| Red | |||
|- | |||
| 8-15 | |||
| Green | |||
|- | |||
| 16-23 | |||
| Blue | |||
|- | |||
| 24-31 | |||
| Alpha | |||
|} | |||
=== GPUREG_TEXUNIT''i''_DIM === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-15 | |||
| Height | |||
|- | |||
| 16-31 | |||
| Width | |||
|} | |||
=== GPUREG_TEXUNIT''i''_PARAM === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 1 | |||
| Magnification filter | |||
|- | |||
| 2 | |||
| Minification filter | |||
|- | |||
| 4-5 | |||
| ETC1 (0 = not ETC1, 2 = ETC1) | |||
|- | |||
| 8-10 | |||
| Wrap T | |||
|- | |||
| 12-14 | |||
| Wrap S | |||
|- | |||
| 20 | |||
| Shadow (Texture 0 only, 0 = not shadow, 1 = shadow) | |||
|- | |||
| 24 | |||
| Mipmap filter | |||
|- | |||
| 28-30 | |||
| Type (Texture 0 only) | |||
|} | |||
Filter values: | |||
{| class="wikitable" border="1" | |||
! Value | |||
! Description | |||
|- | |||
| 0 | |||
| Nearest | |||
|- | |||
| 1 | |||
| Linear | |||
|} | |||
Wrap values: | |||
{| class="wikitable" border="1" | |||
! Value | |||
! Description | |||
|- | |||
| 0 | |||
| Clamp to edge | |||
|- | |||
| 1 | |||
| Clamp to border | |||
|- | |||
| 2 | |||
| Repeat | |||
|- | |||
| 3 | |||
| Mirrored repeat | |||
|} | |||
Type values: | |||
{| class="wikitable" border="1" | |||
! Value | |||
! Description | |||
|- | |||
| 0 | |||
| 2D | |||
|- | |||
| 1 | |||
| Cube map | |||
|- | |||
| 2 | |||
| Shadow 2D | |||
|- | |||
| 3 | |||
| Projection | |||
|- | |||
| 4 | |||
| Shadow cube | |||
|- | |||
| 5 | |||
| Disabled | |||
|} | |||
=== GPUREG_TEXUNIT''i''_LOD === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-15 | |||
| fixed13 (8 fractional bits), Bias | |||
|- | |||
| 16-23 | |||
| Max Level | |||
|- | |||
| 24-31 | |||
| Min Level | |||
|} | |||
=== GPUREG_TEXUNIT''i''_ADDR''i'' === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-15 | |||
| Physical Address >> 3 | |||
|} | |||
If the texture is a cube: | |||
{| class="wikitable" border="1" | |||
! Register | |||
! Description | |||
|- | |||
| ADDR1 | |||
| Positive X | |||
|- | |||
| ADDR2 | |||
| Negative X | |||
|- | |||
| ADDR3 | |||
| Positive Y | |||
|- | |||
| ADDR4 | |||
| Negative Y | |||
|- | |||
| ADDR5 | |||
| Positive Z | |||
|- | |||
| ADDR6 | |||
| Negative Z | |||
|} | |||
Otherwise, ADDR(1) points to a 2D texture, and the rest are empty. | |||
=== GPUREG_TEXUNIT''i''_SHADOW === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0 | |||
| Perspective (0 = not perspective, 1 = perspective) | |||
|- | |||
| 1-23 | |||
| upper 23 bits of fixed24, Z bias | |||
|- | |||
| 24-31 | |||
| Z scale | |||
|} | |||
=== GPUREG_TEXUNIT''i''_TYPE === | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-31 | |||
| [[GPU_Textures#Texture_color_types|Format]] | |||
|} | |} | ||