@ GPU_GEOMETRY_SHADER
Geometry shader.
Definition: enums.h:504
@ GPU_VERTEX_SHADER
Vertex shader.
Definition: enums.h:503
Barebones GPU communications driver.
DVLE_constantType
Constant type.
Definition: shbin.h:16
@ DVLE_CONST_BOOL
Bool.
Definition: shbin.h:17
@ DVLE_CONST_FLOAT24
24-bit float.
Definition: shbin.h:19
@ DVLE_CONST_u8
Unsigned 8-bit integer.
Definition: shbin.h:18
void DVLE_GenerateOutmap(DVLE_s *dvle)
Generates a shader output map.
void DVLB_Free(DVLB_s *dvlb)
Frees shader binary data.
s8 DVLE_GetUniformRegister(DVLE_s *dvle, const char *name)
Gets a uniform register index from a shader.
DVLE_outputAttribute_t
Output attribute.
Definition: shbin.h:23
@ RESULT_DUMMY
Dummy attribute (used as passthrough for geometry shader input).
Definition: shbin.h:32
@ RESULT_TEXCOORD2
Texture coordinate 2.
Definition: shbin.h:30
@ RESULT_VIEW
View.
Definition: shbin.h:31
@ RESULT_TEXCOORD1
Texture coordinate 1.
Definition: shbin.h:29
@ RESULT_POSITION
Position.
Definition: shbin.h:24
@ RESULT_TEXCOORD0
Texture coordinate 0.
Definition: shbin.h:27
@ RESULT_COLOR
Color.
Definition: shbin.h:26
@ RESULT_NORMALQUAT
Normal Quaternion.
Definition: shbin.h:25
@ RESULT_TEXCOORD0W
Texture coordinate 0 W.
Definition: shbin.h:28
DVLE_type
DVLE type.
Definition: shbin.h:10
@ GEOMETRY_SHDR
Geometry shader.
Definition: shbin.h:12
@ VERTEX_SHDR
Vertex shader.
Definition: shbin.h:11
DVLE_geoShaderMode
Geometry shader operation modes.
Definition: shbin.h:37
@ GSH_VARIABLE_PRIM
Variable-size primitive processing mode.
Definition: shbin.h:39
@ GSH_POINT
Point processing mode.
Definition: shbin.h:38
@ GSH_FIXED_PRIM
Fixed-size primitive processing mode.
Definition: shbin.h:40
DVLB_s * DVLB_ParseFile(u32 *shbinData, u32 shbinSize)
Parses a shader binary.
DVLB data.
Definition: shbin.h:98
DVLE_s * DVLE
Contained DVLE.
Definition: shbin.h:101
DVLP_s DVLP
Primary DVLP.
Definition: shbin.h:100
u32 numDVLE
DVLE count.
Definition: shbin.h:99
DVLE constant entry data.
Definition: shbin.h:52
u16 id
Constant ID.
Definition: shbin.h:54
u16 type
Constant type. See DVLE_constantType.
Definition: shbin.h:53
DVLE output entry data.
Definition: shbin.h:59
u8 mask
Output mask.
Definition: shbin.h:62
u16 type
Output type. See DVLE_outputAttribute_t.
Definition: shbin.h:60
u16 regID
Output register ID.
Definition: shbin.h:61
DVLE data.
Definition: shbin.h:74
DVLE_constEntry_s * constTableData
Constant table data.
Definition: shbin.h:85
u32 outmapMode
Output map mode.
Definition: shbin.h:93
DVLE_uniformEntry_s * uniformTableData
Uniform table data.
Definition: shbin.h:89
DVLE_geoShaderMode gshMode
Geometry shader operation mode.
Definition: shbin.h:77
DVLE_type type
DVLE type.
Definition: shbin.h:75
u32 mainOffset
Offset of the start of the main function.
Definition: shbin.h:82
u8 gshFixedVtxNum
Number of vertices in the fixed-size primitive vertex array.
Definition: shbin.h:80
u8 gshFixedVtxStart
Starting float uniform register number for storing the fixed-size primitive vertex array.
Definition: shbin.h:78
u32 outmapClock
Output map attribute clock.
Definition: shbin.h:94
DVLP_s * dvlp
Contained DVLPs.
Definition: shbin.h:81
u32 outTableSize
Output table size.
Definition: shbin.h:86
DVLE_outEntry_s * outTableData
Output table data.
Definition: shbin.h:87
char * symbolTableData
Symbol table data.
Definition: shbin.h:90
u8 outmapMask
Output map mask.
Definition: shbin.h:91
u32 endmainOffset
Offset of the end of the main function.
Definition: shbin.h:83
bool mergeOutmaps
true = merge vertex/geometry shader outmaps ('dummy' output attribute is present).
Definition: shbin.h:76
u8 gshVariableVtxNum
Number of fully-defined vertices in the variable-size primitive vertex array.
Definition: shbin.h:79
u32 constTableSize
Constant table size.
Definition: shbin.h:84
u32 uniformTableSize
Uniform table size.
Definition: shbin.h:88
DVLE uniform entry data.
Definition: shbin.h:67
u16 endReg
End register.
Definition: shbin.h:70
u32 symbolOffset
Symbol offset.
Definition: shbin.h:68
u16 startReg
Start register.
Definition: shbin.h:69
DVLP data.
Definition: shbin.h:44
u32 * opcdescData
Operand description data.
Definition: shbin.h:48
u32 * codeData
Code data.
Definition: shbin.h:46
u32 codeSize
Code size.
Definition: shbin.h:45
u32 opdescSize
Operand description size.
Definition: shbin.h:47
uint8_t u8
would be nice if newlib had this already
Definition: types.h:21
int8_t s8
8-bit signed integer
Definition: types.h:26
uint16_t u16
16-bit unsigned integer
Definition: types.h:22
uint32_t u32
32-bit unsigned integer
Definition: types.h:23