36 uint32_t sq_pgm_resources_fs;
126 uint32_t sq_pgm_resources_vs;
127 uint32_t vgt_primitiveid_en;
128 uint32_t spi_vs_out_config;
129 uint32_t num_spi_vs_out_id;
130 uint32_t spi_vs_out_id[10];
131 uint32_t pa_cl_vs_out_cntl;
132 uint32_t sq_vtx_semantic_clear;
133 uint32_t num_sq_vtx_semantic;
134 uint32_t sq_vtx_semantic[32];
135 uint32_t vgt_strmout_buffer_en;
136 uint32_t vgt_vertex_reuse_block_cntl;
137 uint32_t vgt_hos_reuse_depth;
179 WUT_CHECK_OFFSET(
GX2VertexShader, 0xC8, regs.vgt_vertex_reuse_block_cntl);
206 uint32_t sq_pgm_resources_ps;
207 uint32_t sq_pgm_exports_ps;
208 uint32_t spi_ps_in_control_0;
209 uint32_t spi_ps_in_control_1;
210 uint32_t num_spi_ps_input_cntl;
211 uint32_t spi_ps_input_cntls[32];
212 uint32_t cb_shader_mask;
213 uint32_t cb_shader_control;
214 uint32_t db_shader_control;
215 uint32_t spi_input_z;
243 WUT_CHECK_OFFSET(
GX2PixelShader, 0x10, regs.num_spi_ps_input_cntl);
269 uint32_t sq_pgm_resources_gs;
270 uint32_t vgt_gs_out_prim_type;
271 uint32_t vgt_gs_mode;
272 uint32_t pa_cl_vs_out_cntl;
273 uint32_t sq_pgm_resources_vs;
274 uint32_t sq_gs_vert_itemsize;
275 uint32_t spi_vs_out_config;
276 uint32_t num_spi_vs_out_id;
277 uint32_t spi_vs_out_id[10];
278 uint32_t vgt_strmout_buffer_en;
374 uint32_t attribCount,
430 uint32_t numVsGpr, uint32_t numVsStackEntries,
431 uint32_t numGsGpr, uint32_t numGsStackEntries,
432 uint32_t numPsGpr, uint32_t numPsStackEntries);
@ GX2_SHADER_MODE_GEOMETRY_SHADER
GX2AttribVar * attribVars
uint32_t initialValueCount
struct GX2FetchShader::@16 regs
struct GX2PixelShader::@18 regs
GX2SamplerVar * samplerVars
GX2UniformBlock * uniformBlocks
GX2EndianSwapMode endianSwap
uint32_t vertexProgramSize
uint32_t streamOutStride[4]
struct GX2GeometryShader::@19 regs
struct GX2VertexShader::@17 regs
GX2UniformVar * uniformVars
uint32_t uniformBlockCount
GX2UniformInitialValue * initialValues
void GX2SetGeometryShader(const GX2GeometryShader *shader)
static GX2UniformVar * GX2GetGeometryUniformVar(const GX2GeometryShader *shader, const char *name)
uint32_t GX2CalcGeometryShaderInputRingBufferSize(uint32_t ringItemSize)
uint32_t GX2GetGeometryShaderGPRs(const GX2GeometryShader *shader)
void GX2InitFetchShaderEx(GX2FetchShader *fetchShader, uint8_t *buffer, uint32_t attribCount, const GX2AttribStream *attribs, GX2FetchShaderType type, GX2TessellationMode tessMode)
void GX2SetGeometryUniformBlock(uint32_t location, uint32_t size, const void *data)
void GX2SetVertexUniformReg(uint32_t offset, uint32_t count, const void *data)
void GX2SetPixelUniformReg(uint32_t offset, uint32_t count, const void *data)
void GX2SetShaderModeEx(GX2ShaderMode mode, uint32_t numVsGpr, uint32_t numVsStackEntries, uint32_t numGsGpr, uint32_t numGsStackEntries, uint32_t numPsGpr, uint32_t numPsStackEntries)
void GX2SetPixelShader(const GX2PixelShader *shader)
static GX2UniformVar * GX2GetPixelUniformVar(const GX2PixelShader *shader, const char *name)
static GX2UniformVar * GX2GetVertexUniformVar(const GX2VertexShader *shader, const char *name)
void GX2SetStreamOutEnable(BOOL enable)
uint32_t GX2GetPixelShaderStackEntries(const GX2PixelShader *shader)
void GX2SetVertexUniformBlock(uint32_t location, uint32_t size, const void *data)
static void GX2SetShaderMode(GX2ShaderMode mode)
void GX2SetPixelUniformBlock(uint32_t location, uint32_t size, const void *data)
uint32_t GX2GetVertexShaderStackEntries(const GX2VertexShader *shader)
void GX2SetGeometryShaderOutputRingBuffer(void *buffer, uint32_t size)
void GX2SetFetchShader(const GX2FetchShader *shader)
static GX2UniformBlock * GX2GetPixelUniformBlock(const GX2PixelShader *shader, const char *name)
void GX2SetGeometryShaderInputRingBuffer(const void *buffer, uint32_t size)
void GX2SetPixelSampler(const GX2Sampler *sampler, uint32_t id)
static GX2UniformBlock * GX2GetVertexUniformBlock(const GX2VertexShader *shader, const char *name)
uint32_t GX2CalcFetchShaderSizeEx(uint32_t attribs, GX2FetchShaderType fetchShaderType, GX2TessellationMode tesellationMode)
void GX2SetVertexShader(const GX2VertexShader *shader)
uint32_t GX2GetPixelShaderGPRs(const GX2PixelShader *shader)
void GX2SetGeometrySampler(const GX2Sampler *sampler, uint32_t id)
static GX2UniformBlock * GX2GetGeometryUniformBlock(const GX2GeometryShader *shader, const char *name)
uint32_t GX2GetVertexShaderGPRs(const GX2VertexShader *shader)
void GX2SetVertexSampler(const GX2Sampler *sampler, uint32_t id)
uint32_t GX2CalcGeometryShaderOutputRingBufferSize(uint32_t ringItemSize)
uint32_t GX2GetGeometryShaderStackEntries(const GX2GeometryShader *shader)