GPU/Internal Registers: Difference between revisions

Command Header: Size field is 8-bit, not 11-bit (tested on hardware)
Kynex7510 (talk | contribs)
m Texunit addresses order
 
(7 intermediate revisions by 3 users not shown)
Line 4,161: Line 4,161:


These registers map components of the corresponding vertex shader output register to specific fixed-function semantics.
These registers map components of the corresponding vertex shader output register to specific fixed-function semantics.
Semantics that have not been mapped to a component of an output register have a value of 1


Semantic values:
Semantic values:
Line 4,711: Line 4,713:
|}
|}


Otherwise, ADDR(1) points to a 2D texture, and the rest are empty.
Otherwise, ADDR(1) points to a 2D texture, and the rest are empty. Addresses shall be ordered from lowest to highest, otherwise some faces might not render correctly.


=== GPUREG_TEXUNIT''i''_SHADOW ===
=== GPUREG_TEXUNIT''i''_SHADOW ===
Line 5,251: Line 5,253:
| Previous
| Previous
|}
|}
Using Previous (15) as a source in the first TEV stage returns the value of source 3. If source 3 has Previous it returns zero. Previous buffer (13) always returns zero.


=== GPUREG_TEXENV''i''_OPERAND ===
=== GPUREG_TEXENV''i''_OPERAND ===
Line 6,328: Line 6,332:
|-
|-
| 24
| 24
| 0x1
| unsigned, Vertical flip? (0 = enable, 1 = disable)
|}
|}


Line 6,902: Line 6,906:
| unsigned, Fresnel FR LUT disabled (0 = enabled, 1 = disabled)
| unsigned, Fresnel FR LUT disabled (0 = enabled, 1 = disabled)
|-
|-
| 20-22
| 20
| unsigned, Term 1 reflection component RB LUT disabled (0 = enabled, 7 = disabled)
| unsigned, Term 1 reflection component RB LUT disabled (0 = enabled, 1 = disabled)
|-
|-
| 21
| 21
| unsigned, Term 1 reflection component RG LUT disabled (0 = enabled, 7 = disabled)
| unsigned, Term 1 reflection component RG LUT disabled (0 = enabled, 1 = disabled)
|-
|-
| 22
| 22
| unsigned, Term 1 reflection component RR LUT disabled (0 = enabled, 7 = disabled)
| unsigned, Term 1 reflection component RR LUT disabled (0 = enabled, 1 = disabled)
|-
|-
| 24
| 24
Line 7,727: Line 7,731:


This register sets whether to use the geometry shader configuration or reuse the vertex shader configuration for the geometry shader shading unit.
This register sets whether to use the geometry shader configuration or reuse the vertex shader configuration for the geometry shader shading unit.
When disabled and the geometry unit is not in use, as configured by GPUREG_GEOSTAGE_CONFIG, uniforms, outmap mask, program code and swizzle data are propagated to the geometry shader unit.


=== GPUREG_START_DRAW_FUNC0 ===
=== GPUREG_START_DRAW_FUNC0 ===