GPU/Internal Registers: Difference between revisions
GPUREG_VSH_INTUNIFORM_I0 etc |
GPUREG_GSH_INPUTBUFFER_CONFIG GPUREG_VSH_INPUTBUFFER_CONFIG |
||
Line 3,274: | Line 3,274: | ||
This register is used to set the geometry shader's i3 integer register. | This register is used to set the geometry shader's i3 integer register. | ||
==== GPUREG_GSH_INPUTBUFFER_CONFIG ==== | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-7 | |||
| Input buffer stride minus 1, in float vec4 registers. (value 0 means a stride of 1 float vec4 register) | |||
|- | |||
| 8-23 | |||
| Unknown. These bits typically aren't updated by games. | |||
|- | |||
| 24-31 | |||
| Unknown. This is typically set to 8 for geometry shaders. | |||
|} | |||
This register is used to configure the geometry shader's input buffer. In the context of a geometry shader, the stride parameter can be interpreted as the input primitive size in registers, though it is not a limit on the number of input registers which can be accessed from the geometry shader. | |||
==== GPUREG_GSH_ENTRYPOINT ==== | ==== GPUREG_GSH_ENTRYPOINT ==== | ||
Line 3,435: | Line 3,454: | ||
This register is used to set the vertex shader's i3 integer register. | This register is used to set the vertex shader's i3 integer register. | ||
==== GPUREG_VSH_INPUTBUFFER_CONFIG ==== | |||
{| class="wikitable" border="1" | |||
! Bits | |||
! Description | |||
|- | |||
| 0-7 | |||
| Input buffer stride minus 1, in float vec4 registers. (value 0 means a stride of 1 float vec4 register) | |||
|- | |||
| 8-23 | |||
| Unknown. These bits typically aren't updated by games. | |||
|- | |||
| 24-31 | |||
| Unknown. This is typically set to 0xA for vertex shaders. | |||
|} | |||
This register is used to configure the vertex shader's input buffer. In the context of a geometry shader, the stride parameter can be interpreted as the number of attributes per vertex. | |||
==== GPUREG_VSH_ENTRYPOINT ==== | ==== GPUREG_VSH_ENTRYPOINT ==== |