WUT
0.1
Wii U Toolchain
Main Page
Modules
Data Structures
Files
File List
Globals
include
gx2
surface.h
Go to the documentation of this file.
1
#pragma once
2
#include <
wut.h
>
3
10
#ifdef __cplusplus
11
extern
"C"
{
12
#endif
13
14
typedef
enum
15
{
16
GX2_SURFACE_DIM_TEXTURE_1D
= 0,
17
GX2_SURFACE_DIM_TEXTURE_2D
= 1,
18
GX2_SURFACE_DIM_TEXTURE_3D
= 2,
19
GX2_SURFACE_DIM_TEXTURE_CUBE
= 3,
20
GX2_SURFACE_DIM_TEXTURE_1D_ARRAY
= 4,
21
GX2_SURFACE_DIM_TEXTURE_2D_ARRAY
= 5,
22
GX2_SURFACE_DIM_TEXTURE_2D_MSAA
= 6,
23
GX2_SURFACE_DIM_TEXTURE_2D_MSAA_ARRAY
= 7,
24
}
GX2SurfaceDim
;
25
26
typedef
enum
27
{
28
GX2_SURFACE_FORMAT_INVALID
= 0x00,
29
GX2_SURFACE_FORMAT_UNORM_R4_G4
= 0x02,
30
GX2_SURFACE_FORMAT_UNORM_R4_G4_B4_A4
= 0x0b,
31
GX2_SURFACE_FORMAT_UNORM_R8
= 0x01,
32
GX2_SURFACE_FORMAT_UNORM_R8_G8
= 0x07,
33
GX2_SURFACE_FORMAT_UNORM_R8_G8_B8_A8
= 0x01a,
34
GX2_SURFACE_FORMAT_UNORM_R16
= 0x05,
35
GX2_SURFACE_FORMAT_UNORM_R16_G16
= 0x0f,
36
GX2_SURFACE_FORMAT_UNORM_R16_G16_B16_A16
= 0x01f,
37
GX2_SURFACE_FORMAT_UNORM_R5_G6_B5
= 0x08,
38
GX2_SURFACE_FORMAT_UNORM_R5_G5_B5_A1
= 0x0a,
39
GX2_SURFACE_FORMAT_UNORM_A1_B5_G5_R5
= 0x0c,
40
GX2_SURFACE_FORMAT_UNORM_R24_X8
= 0x011,
41
GX2_SURFACE_FORMAT_UNORM_A2_B10_G10_R10
= 0x01b,
42
GX2_SURFACE_FORMAT_UNORM_R10_G10_B10_A2
= 0x019,
43
GX2_SURFACE_FORMAT_UNORM_BC1
= 0x031,
44
GX2_SURFACE_FORMAT_UNORM_BC2
= 0x032,
45
GX2_SURFACE_FORMAT_UNORM_BC3
= 0x033,
46
GX2_SURFACE_FORMAT_UNORM_BC4
= 0x034,
47
GX2_SURFACE_FORMAT_UNORM_BC5
= 0x035,
48
GX2_SURFACE_FORMAT_UNORM_NV12
= 0x081,
49
50
GX2_SURFACE_FORMAT_UINT_R8
= 0x101,
51
GX2_SURFACE_FORMAT_UINT_R8_G8
= 0x107,
52
GX2_SURFACE_FORMAT_UINT_R8_G8_B8_A8
= 0x11a,
53
GX2_SURFACE_FORMAT_UINT_R16
= 0x105,
54
GX2_SURFACE_FORMAT_UINT_R16_G16
= 0x10f,
55
GX2_SURFACE_FORMAT_UINT_R16_G16_B16_A16
= 0x11f,
56
GX2_SURFACE_FORMAT_UINT_R32
= 0x10d,
57
GX2_SURFACE_FORMAT_UINT_R32_G32
= 0x11d,
58
GX2_SURFACE_FORMAT_UINT_R32_G32_B32_A32
= 0x122,
59
GX2_SURFACE_FORMAT_UINT_A2_B10_G10_R10
= 0x11b,
60
GX2_SURFACE_FORMAT_UINT_R10_G10_B10_A2
= 0x119,
61
GX2_SURFACE_FORMAT_UINT_X24_G8
= 0x111,
62
GX2_SURFACE_FORMAT_UINT_G8_X24
= 0x11c,
63
64
GX2_SURFACE_FORMAT_SNORM_R8
= 0x201,
65
GX2_SURFACE_FORMAT_SNORM_R8_G8
= 0x207,
66
GX2_SURFACE_FORMAT_SNORM_R8_G8_B8_A8
= 0x21a,
67
GX2_SURFACE_FORMAT_SNORM_R16
= 0x205,
68
GX2_SURFACE_FORMAT_SNORM_R16_G16
= 0x20f,
69
GX2_SURFACE_FORMAT_SNORM_R16_G16_B16_A16
= 0x21f,
70
GX2_SURFACE_FORMAT_SNORM_R10_G10_B10_A2
= 0x219,
71
GX2_SURFACE_FORMAT_SNORM_BC4
= 0x234,
72
GX2_SURFACE_FORMAT_SNORM_BC5
= 0x235,
73
74
GX2_SURFACE_FORMAT_SINT_R8
= 0x301,
75
GX2_SURFACE_FORMAT_SINT_R8_G8
= 0x307,
76
GX2_SURFACE_FORMAT_SINT_R8_G8_B8_A8
= 0x31a,
77
GX2_SURFACE_FORMAT_SINT_R16
= 0x305,
78
GX2_SURFACE_FORMAT_SINT_R16_G16
= 0x30f,
79
GX2_SURFACE_FORMAT_SINT_R16_G16_B16_A16
= 0x31f,
80
GX2_SURFACE_FORMAT_SINT_R32
= 0x30d,
81
GX2_SURFACE_FORMAT_SINT_R32_G32
= 0x31d,
82
GX2_SURFACE_FORMAT_SINT_R32_G32_B32_A32
= 0x322,
83
GX2_SURFACE_FORMAT_SINT_R10_G10_B10_A2
= 0x319,
84
85
GX2_SURFACE_FORMAT_SRGB_R8_G8_B8_A8
= 0x41a,
86
GX2_SURFACE_FORMAT_SRGB_BC1
= 0x431,
87
GX2_SURFACE_FORMAT_SRGB_BC2
= 0x432,
88
GX2_SURFACE_FORMAT_SRGB_BC3
= 0x433,
89
90
GX2_SURFACE_FORMAT_FLOAT_R32
= 0x80e,
91
GX2_SURFACE_FORMAT_FLOAT_R32_G32
= 0x81e,
92
GX2_SURFACE_FORMAT_FLOAT_R32_G32_B32_A32
= 0x823,
93
GX2_SURFACE_FORMAT_FLOAT_R16
= 0x806,
94
GX2_SURFACE_FORMAT_FLOAT_R16_G16
= 0x810,
95
GX2_SURFACE_FORMAT_FLOAT_R16_G16_B16_A16
= 0x820,
96
GX2_SURFACE_FORMAT_FLOAT_R11_G11_B10
= 0x816,
97
GX2_SURFACE_FORMAT_FLOAT_D24_S8
= 0x811,
98
GX2_SURFACE_FORMAT_FLOAT_X8_X24
= 0x81c,
99
}
GX2SurfaceFormat
;
100
101
typedef
enum
GX2AAMode
102
{
103
GX2_AA_MODE1X
= 0,
104
}
GX2AAMode
;
105
106
typedef
enum
GX2SurfaceUse
107
{
108
GX2_SURFACE_USE_TEXTURE
= 1 << 0,
109
GX2_SURFACE_USE_COLOR_BUFFER
= 1 << 1,
110
GX2_SURFACE_USE_DEPTH_BUFFER
= 1 << 2,
111
GX2_SURFACE_USE_SCAN_BUFFER
= 1 << 3,
112
}
GX2SurfaceUse
;
113
114
typedef
enum
GX2RResourceFlags
115
{
116
GX2R_RESOURCE_FLAGS_BIND_TEXTURE
= 1 << 0,
117
GX2R_RESOURCE_FLAGS_BIND_COLOR_BUFFER
= 1 << 1,
118
GX2R_RESOURCE_FLAGS_BIND_DEPTH_BUFFER
= 1 << 2,
119
GX2R_RESOURCE_FLAGS_BIND_SCAN_BUFFER
= 1 << 3,
120
GX2R_RESOURCE_FLAGS_BIND_VERTEX_BUFFER
= 1 << 4,
121
GX2R_RESOURCE_FLAGS_BIND_INDEX_BUFFER
= 1 << 5,
122
GX2R_RESOURCE_FLAGS_BIND_UNIFORM_BLOCK
= 1 << 6,
123
GX2R_RESOURCE_FLAGS_BIND_SHADER_PROGRAM
= 1 << 7,
124
GX2R_RESOURCE_FLAGS_BIND_STREAM_OUTPUT
= 1 << 8,
125
GX2R_RESOURCE_FLAGS_BIND_DISPLAY_LIST
= 1 << 9,
126
GX2R_RESOURCE_FLAGS_BIND_GS_RING
= 1 << 10,
127
GX2R_RESOURCE_FLAGS_USAGE_CPU_READ
= 1 << 11,
128
GX2R_RESOURCE_FLAGS_USAGE_CPU_WRITE
= 1 << 12,
129
GX2R_RESOURCE_FLAGS_USAGE_GPU_READ
= 1 << 13,
130
GX2R_RESOURCE_FLAGS_USAGE_GPU_WRITE
= 1 << 14,
131
GX2R_RESOURCE_FLAGS_USAGE_DMA_READ
= 1 << 15,
132
GX2R_RESOURCE_FLAGS_USAGE_DMA_WRITE
= 1 << 16,
133
GX2R_RESOURCE_FLAGS_USAGE_FORCE_MEM1
= 1 << 17,
134
GX2R_RESOURCE_FLAGS_USAGE_FORCE_MEM2
= 1 << 18,
135
GX2R_RESOURCE_FLAGS_USER_MEMORY
= 1 << 29,
136
GX2R_RESOURCE_FLAGS_LOCKED
= 1 << 30,
137
}
GX2RResourceFlags
;
138
139
typedef
enum
GX2TileMode
140
{
141
GX2_TILE_MODE_DEFAULT
= 0,
142
GX2_TILE_MODE_LINEAR_ALIGNED
= 1,
143
GX2_TILE_MODE_TILED_1D_THIN1
= 2,
144
GX2_TILE_MODE_TILED_1D_THICK
= 3,
145
GX2_TILE_MODE_TILED_2D_THIN1
= 4,
146
GX2_TILE_MODE_TILED_2D_THIN2
= 5,
147
GX2_TILE_MODE_TILED_2D_THIN4
= 6,
148
GX2_TILE_MODE_TILED_2D_THICK
= 7,
149
GX2_TILE_MODE_TILED_2B_THIN1
= 8,
150
GX2_TILE_MODE_TILED_2B_THIN2
= 9,
151
GX2_TILE_MODE_TILED_2B_THIN4
= 10,
152
GX2_TILE_MODE_TILED_2B_THICK
= 11,
153
GX2_TILE_MODE_TILED_3D_THIN1
= 12,
154
GX2_TILE_MODE_TILED_3D_THICK
= 13,
155
GX2_TILE_MODE_TILED_3B_THIN1
= 14,
156
GX2_TILE_MODE_TILED_3B_THICK
= 15,
157
GX2_TILE_MODE_LINEAR_SPECIAL
= 16,
158
}
GX2TileMode
;
159
160
struct
GX2Surface
161
{
162
GX2SurfaceDim
dim
;
163
uint32_t
width
;
164
uint32_t
height
;
165
uint32_t
depth
;
166
uint32_t
mipLevels
;
167
GX2SurfaceFormat
format
;
168
GX2AAMode
aa
;
169
union
170
{
171
GX2SurfaceUse
use
;
172
GX2RResourceFlags
resourceFlags
;
173
};
174
uint32_t
imageSize
;
175
void
*
image
;
176
uint32_t
mipmapSize
;
177
void
*
mipmaps
;
178
GX2TileMode
tileMode
;
179
uint32_t
swizzle
;
180
uint32_t
alignment
;
181
uint32_t
pitch
;
182
uint32_t
mipLevelOffset
[13];
183
};
184
CHECK_OFFSET(
GX2Surface
, 0x0, dim);
185
CHECK_OFFSET(
GX2Surface
, 0x4, width);
186
CHECK_OFFSET(
GX2Surface
, 0x8, height);
187
CHECK_OFFSET(
GX2Surface
, 0xc, depth);
188
CHECK_OFFSET(
GX2Surface
, 0x10, mipLevels);
189
CHECK_OFFSET(
GX2Surface
, 0x14, format);
190
CHECK_OFFSET(
GX2Surface
, 0x18, aa);
191
CHECK_OFFSET(
GX2Surface
, 0x1c, use);
192
CHECK_OFFSET(
GX2Surface
, 0x1c, resourceFlags);
193
CHECK_OFFSET(
GX2Surface
, 0x20, imageSize);
194
CHECK_OFFSET(
GX2Surface
, 0x24, image);
195
CHECK_OFFSET(
GX2Surface
, 0x28, mipmapSize);
196
CHECK_OFFSET(
GX2Surface
, 0x2c, mipmaps);
197
CHECK_OFFSET(
GX2Surface
, 0x30, tileMode);
198
CHECK_OFFSET(
GX2Surface
, 0x34, swizzle);
199
CHECK_OFFSET(
GX2Surface
, 0x38, alignment);
200
CHECK_OFFSET(
GX2Surface
, 0x3C, pitch);
201
CHECK_OFFSET(
GX2Surface
, 0x40, mipLevelOffset);
202
CHECK_SIZE(
GX2Surface
, 0x74);
203
204
struct
GX2DepthBuffer
205
{
206
GX2Surface
surface
;
207
208
uint32_t
viewMip
;
209
uint32_t
viewFirstSlice
;
210
uint32_t
viewNumSlices
;
211
void
*
hiZPtr
;
212
uint32_t
hiZSize
;
213
float
depthClear
;
214
uint32_t
stencilClear
;
215
216
uint32_t
regs
[7];
217
};
218
CHECK_OFFSET(
GX2DepthBuffer
, 0x74, viewMip);
219
CHECK_OFFSET(
GX2DepthBuffer
, 0x78, viewFirstSlice);
220
CHECK_OFFSET(
GX2DepthBuffer
, 0x7C, viewNumSlices);
221
CHECK_OFFSET(
GX2DepthBuffer
, 0x80, hiZPtr);
222
CHECK_OFFSET(
GX2DepthBuffer
, 0x84, hiZSize);
223
CHECK_OFFSET(
GX2DepthBuffer
, 0x88, depthClear);
224
CHECK_OFFSET(
GX2DepthBuffer
, 0x8C, stencilClear);
225
CHECK_OFFSET(
GX2DepthBuffer
, 0x90, regs);
226
CHECK_SIZE(
GX2DepthBuffer
, 0xAC);
227
228
struct
GX2ColorBuffer
229
{
230
GX2Surface
surface
;
231
232
uint32_t
viewMip
;
233
uint32_t
viewFirstSlice
;
234
uint32_t
viewNumSlices
;
235
void
*
aaBuffer
;
236
uint32_t
aaSize
;
237
238
uint32_t
regs
[5];
239
};
240
CHECK_OFFSET(
GX2ColorBuffer
, 0x74, viewMip);
241
CHECK_OFFSET(
GX2ColorBuffer
, 0x78, viewFirstSlice);
242
CHECK_OFFSET(
GX2ColorBuffer
, 0x7C, viewNumSlices);
243
CHECK_OFFSET(
GX2ColorBuffer
, 0x80, aaBuffer);
244
CHECK_OFFSET(
GX2ColorBuffer
, 0x84, aaSize);
245
CHECK_OFFSET(
GX2ColorBuffer
, 0x88, regs);
246
CHECK_SIZE(
GX2ColorBuffer
, 0x9C);
247
248
void
249
GX2CalcSurfaceSizeAndAlignment
(
GX2Surface
*surface);
250
251
void
252
GX2CalcDepthBufferHiZInfo
(
GX2DepthBuffer
*depthBuffer,
253
uint32_t *outSize,
254
uint32_t *outAlignment);
255
256
void
257
GX2SetColorBuffer
(
GX2ColorBuffer
*colorBuffer,
258
GX2RenderTarget target);
259
260
void
261
GX2SetDepthBuffer
(
GX2DepthBuffer
*depthBuffer);
262
263
void
264
GX2InitColorBufferRegs
(
GX2ColorBuffer
*colorBuffer);
265
266
void
267
GX2InitDepthBufferRegs
(
GX2DepthBuffer
*depthBuffer);
268
269
void
270
GX2InitDepthBufferHiZEnable
(
GX2DepthBuffer
*depthBuffer,
271
BOOL
enable);
272
273
uint32_t
274
GX2GetSurfaceSwizzle
(
GX2Surface
*surface);
275
276
void
277
GX2SetSurfaceSwizzle
(
GX2Surface
*surface,
278
uint32_t swizzle);
279
280
void
281
GX2CopySurface
(
GX2Surface
*src,
282
uint32_t srcLevel,
283
uint32_t srcDepth,
284
GX2Surface
*dst,
285
uint32_t dstLevel,
286
uint32_t dstDepth);
287
288
#ifdef __cplusplus
289
}
290
#endif
291
GX2R_RESOURCE_FLAGS_BIND_DISPLAY_LIST
Definition:
surface.h:125
GX2ColorBuffer::viewMip
uint32_t viewMip
Definition:
surface.h:232
GX2_SURFACE_FORMAT_UINT_G8_X24
Definition:
surface.h:62
GX2_TILE_MODE_LINEAR_SPECIAL
Definition:
surface.h:157
GX2SurfaceUse
GX2SurfaceUse
Definition:
surface.h:106
GX2R_RESOURCE_FLAGS_USER_MEMORY
Definition:
surface.h:135
GX2_SURFACE_FORMAT_SNORM_BC4
Definition:
surface.h:71
GX2_SURFACE_FORMAT_SINT_R8_G8_B8_A8
Definition:
surface.h:76
GX2R_RESOURCE_FLAGS_BIND_SCAN_BUFFER
Definition:
surface.h:119
GX2_SURFACE_FORMAT_SNORM_R8_G8_B8_A8
Definition:
surface.h:66
GX2Surface::pitch
uint32_t pitch
Definition:
surface.h:181
GX2_SURFACE_FORMAT_SNORM_BC5
Definition:
surface.h:72
GX2_SURFACE_FORMAT_SNORM_R16_G16
Definition:
surface.h:68
GX2Surface::tileMode
GX2TileMode tileMode
Definition:
surface.h:178
GX2_SURFACE_FORMAT_UNORM_BC2
Definition:
surface.h:44
GX2ColorBuffer::surface
GX2Surface surface
Definition:
surface.h:230
GX2SurfaceDim
GX2SurfaceDim
Definition:
surface.h:14
GX2_TILE_MODE_TILED_3D_THIN1
Definition:
surface.h:153
GX2_AA_MODE1X
Definition:
surface.h:103
GX2R_RESOURCE_FLAGS_BIND_VERTEX_BUFFER
Definition:
surface.h:120
GX2_SURFACE_DIM_TEXTURE_1D
Definition:
surface.h:16
GX2DepthBuffer::stencilClear
uint32_t stencilClear
Definition:
surface.h:214
GX2_SURFACE_FORMAT_FLOAT_R32
Definition:
surface.h:90
GX2SetDepthBuffer
void GX2SetDepthBuffer(GX2DepthBuffer *depthBuffer)
GX2R_RESOURCE_FLAGS_BIND_INDEX_BUFFER
Definition:
surface.h:121
GX2_TILE_MODE_TILED_2B_THICK
Definition:
surface.h:152
GX2_TILE_MODE_DEFAULT
Definition:
surface.h:141
GX2_SURFACE_DIM_TEXTURE_3D
Definition:
surface.h:18
GX2_SURFACE_USE_DEPTH_BUFFER
Definition:
surface.h:110
GX2DepthBuffer::surface
GX2Surface surface
Definition:
surface.h:206
GX2R_RESOURCE_FLAGS_USAGE_FORCE_MEM1
Definition:
surface.h:133
GX2_SURFACE_FORMAT_UINT_R8
Definition:
surface.h:50
GX2_SURFACE_FORMAT_UNORM_BC3
Definition:
surface.h:45
GX2R_RESOURCE_FLAGS_BIND_SHADER_PROGRAM
Definition:
surface.h:123
GX2_TILE_MODE_TILED_2D_THICK
Definition:
surface.h:148
GX2ColorBuffer::aaSize
uint32_t aaSize
Definition:
surface.h:236
GX2_SURFACE_FORMAT_SNORM_R10_G10_B10_A2
Definition:
surface.h:70
GX2_SURFACE_FORMAT_UINT_R8_G8_B8_A8
Definition:
surface.h:52
GX2ColorBuffer::viewFirstSlice
uint32_t viewFirstSlice
Definition:
surface.h:233
GX2R_RESOURCE_FLAGS_USAGE_GPU_READ
Definition:
surface.h:129
GX2_SURFACE_FORMAT_UNORM_R8_G8_B8_A8
Definition:
surface.h:33
GX2SetColorBuffer
void GX2SetColorBuffer(GX2ColorBuffer *colorBuffer, GX2RenderTarget target)
GX2_TILE_MODE_TILED_2B_THIN4
Definition:
surface.h:151
GX2R_RESOURCE_FLAGS_USAGE_CPU_WRITE
Definition:
surface.h:128
GX2R_RESOURCE_FLAGS_LOCKED
Definition:
surface.h:136
GX2DepthBuffer::viewMip
uint32_t viewMip
Definition:
surface.h:208
GX2_SURFACE_FORMAT_SNORM_R8
Definition:
surface.h:64
GX2ColorBuffer::viewNumSlices
uint32_t viewNumSlices
Definition:
surface.h:234
GX2_SURFACE_USE_SCAN_BUFFER
Definition:
surface.h:111
GX2_SURFACE_FORMAT_UNORM_NV12
Definition:
surface.h:48
GX2_SURFACE_FORMAT_FLOAT_X8_X24
Definition:
surface.h:98
GX2_SURFACE_FORMAT_UNORM_R16
Definition:
surface.h:34
GX2Surface::alignment
uint32_t alignment
Definition:
surface.h:180
GX2R_RESOURCE_FLAGS_BIND_GS_RING
Definition:
surface.h:126
GX2_SURFACE_FORMAT_UINT_R16_G16_B16_A16
Definition:
surface.h:55
GX2Surface::format
GX2SurfaceFormat format
Definition:
surface.h:167
GX2R_RESOURCE_FLAGS_USAGE_GPU_WRITE
Definition:
surface.h:130
GX2SetSurfaceSwizzle
void GX2SetSurfaceSwizzle(GX2Surface *surface, uint32_t swizzle)
GX2_SURFACE_FORMAT_SRGB_BC1
Definition:
surface.h:86
GX2_SURFACE_FORMAT_UINT_R32_G32
Definition:
surface.h:57
GX2_SURFACE_FORMAT_UNORM_BC5
Definition:
surface.h:47
GX2_SURFACE_FORMAT_UINT_R10_G10_B10_A2
Definition:
surface.h:60
GX2R_RESOURCE_FLAGS_USAGE_CPU_READ
Definition:
surface.h:127
GX2_SURFACE_DIM_TEXTURE_2D_MSAA_ARRAY
Definition:
surface.h:23
GX2_SURFACE_DIM_TEXTURE_1D_ARRAY
Definition:
surface.h:20
GX2_TILE_MODE_TILED_2D_THIN4
Definition:
surface.h:147
GX2_SURFACE_FORMAT_SINT_R8_G8
Definition:
surface.h:75
GX2_SURFACE_DIM_TEXTURE_2D_MSAA
Definition:
surface.h:22
GX2Surface::mipmaps
void * mipmaps
Definition:
surface.h:177
GX2_TILE_MODE_TILED_2B_THIN1
Definition:
surface.h:149
GX2TileMode
GX2TileMode
Definition:
surface.h:139
GX2_TILE_MODE_TILED_3B_THICK
Definition:
surface.h:156
GX2InitDepthBufferRegs
void GX2InitDepthBufferRegs(GX2DepthBuffer *depthBuffer)
GX2_TILE_MODE_TILED_2D_THIN2
Definition:
surface.h:146
GX2_SURFACE_FORMAT_FLOAT_R16_G16
Definition:
surface.h:94
GX2R_RESOURCE_FLAGS_BIND_UNIFORM_BLOCK
Definition:
surface.h:122
GX2_SURFACE_FORMAT_UNORM_R8
Definition:
surface.h:31
GX2_SURFACE_FORMAT_UNORM_R4_G4_B4_A4
Definition:
surface.h:30
GX2ColorBuffer::aaBuffer
void * aaBuffer
Definition:
surface.h:235
GX2_SURFACE_FORMAT_UNORM_A2_B10_G10_R10
Definition:
surface.h:41
GX2_SURFACE_USE_TEXTURE
Definition:
surface.h:108
GX2_SURFACE_FORMAT_UNORM_A1_B5_G5_R5
Definition:
surface.h:39
GX2_TILE_MODE_TILED_1D_THICK
Definition:
surface.h:144
GX2Surface::height
uint32_t height
Definition:
surface.h:164
GX2_SURFACE_FORMAT_SNORM_R16_G16_B16_A16
Definition:
surface.h:69
GX2_SURFACE_FORMAT_FLOAT_R11_G11_B10
Definition:
surface.h:96
GX2_TILE_MODE_TILED_2B_THIN2
Definition:
surface.h:150
GX2_SURFACE_FORMAT_FLOAT_R16_G16_B16_A16
Definition:
surface.h:95
GX2_SURFACE_FORMAT_UINT_R32_G32_B32_A32
Definition:
surface.h:58
GX2R_RESOURCE_FLAGS_BIND_TEXTURE
Definition:
surface.h:116
GX2_SURFACE_FORMAT_SRGB_R8_G8_B8_A8
Definition:
surface.h:85
GX2_SURFACE_USE_COLOR_BUFFER
Definition:
surface.h:109
GX2Surface
Definition:
surface.h:160
GX2GetSurfaceSwizzle
uint32_t GX2GetSurfaceSwizzle(GX2Surface *surface)
GX2_TILE_MODE_LINEAR_ALIGNED
Definition:
surface.h:142
GX2DepthBuffer::hiZSize
uint32_t hiZSize
Definition:
surface.h:212
GX2InitColorBufferRegs
void GX2InitColorBufferRegs(GX2ColorBuffer *colorBuffer)
GX2R_RESOURCE_FLAGS_BIND_DEPTH_BUFFER
Definition:
surface.h:118
GX2Surface::image
void * image
Definition:
surface.h:175
GX2AAMode
GX2AAMode
Definition:
surface.h:101
GX2_SURFACE_FORMAT_UNORM_BC1
Definition:
surface.h:43
wut.h
GX2_SURFACE_FORMAT_UNORM_BC4
Definition:
surface.h:46
GX2DepthBuffer::viewFirstSlice
uint32_t viewFirstSlice
Definition:
surface.h:209
GX2_SURFACE_FORMAT_UNORM_R4_G4
Definition:
surface.h:29
GX2_SURFACE_FORMAT_SNORM_R8_G8
Definition:
surface.h:65
GX2_SURFACE_FORMAT_UINT_R16_G16
Definition:
surface.h:54
GX2R_RESOURCE_FLAGS_USAGE_DMA_WRITE
Definition:
surface.h:132
GX2_TILE_MODE_TILED_3B_THIN1
Definition:
surface.h:155
GX2Surface::mipmapSize
uint32_t mipmapSize
Definition:
surface.h:176
GX2ColorBuffer::regs
uint32_t regs[5]
Definition:
surface.h:238
GX2_SURFACE_DIM_TEXTURE_CUBE
Definition:
surface.h:19
GX2DepthBuffer::viewNumSlices
uint32_t viewNumSlices
Definition:
surface.h:210
GX2_SURFACE_FORMAT_SINT_R8
Definition:
surface.h:74
GX2_SURFACE_FORMAT_SINT_R10_G10_B10_A2
Definition:
surface.h:83
GX2_SURFACE_FORMAT_UINT_X24_G8
Definition:
surface.h:61
GX2Surface::imageSize
uint32_t imageSize
Definition:
surface.h:174
GX2_TILE_MODE_TILED_1D_THIN1
Definition:
surface.h:143
GX2_SURFACE_FORMAT_UNORM_R8_G8
Definition:
surface.h:32
GX2Surface::resourceFlags
GX2RResourceFlags resourceFlags
Definition:
surface.h:172
GX2DepthBuffer::depthClear
float depthClear
Definition:
surface.h:213
BOOL
int BOOL
Definition:
wut_types.h:4
GX2_SURFACE_FORMAT_INVALID
Definition:
surface.h:28
GX2_TILE_MODE_TILED_3D_THICK
Definition:
surface.h:154
GX2R_RESOURCE_FLAGS_USAGE_FORCE_MEM2
Definition:
surface.h:134
GX2_SURFACE_FORMAT_UNORM_R24_X8
Definition:
surface.h:40
GX2_TILE_MODE_TILED_2D_THIN1
Definition:
surface.h:145
GX2Surface::swizzle
uint32_t swizzle
Definition:
surface.h:179
GX2InitDepthBufferHiZEnable
void GX2InitDepthBufferHiZEnable(GX2DepthBuffer *depthBuffer, BOOL enable)
GX2_SURFACE_FORMAT_SINT_R16_G16
Definition:
surface.h:78
GX2_SURFACE_FORMAT_SINT_R32
Definition:
surface.h:80
GX2CalcSurfaceSizeAndAlignment
void GX2CalcSurfaceSizeAndAlignment(GX2Surface *surface)
GX2_SURFACE_FORMAT_FLOAT_D24_S8
Definition:
surface.h:97
GX2_SURFACE_FORMAT_SINT_R16
Definition:
surface.h:77
GX2ColorBuffer
Definition:
surface.h:228
GX2_SURFACE_FORMAT_SRGB_BC2
Definition:
surface.h:87
GX2CalcDepthBufferHiZInfo
void GX2CalcDepthBufferHiZInfo(GX2DepthBuffer *depthBuffer, uint32_t *outSize, uint32_t *outAlignment)
GX2_SURFACE_FORMAT_UNORM_R10_G10_B10_A2
Definition:
surface.h:42
GX2_SURFACE_FORMAT_SINT_R32_G32
Definition:
surface.h:81
GX2Surface::mipLevels
uint32_t mipLevels
Definition:
surface.h:166
GX2_SURFACE_FORMAT_FLOAT_R16
Definition:
surface.h:93
GX2Surface::dim
GX2SurfaceDim dim
Definition:
surface.h:162
GX2_SURFACE_FORMAT_UINT_A2_B10_G10_R10
Definition:
surface.h:59
GX2R_RESOURCE_FLAGS_BIND_COLOR_BUFFER
Definition:
surface.h:117
GX2CopySurface
void GX2CopySurface(GX2Surface *src, uint32_t srcLevel, uint32_t srcDepth, GX2Surface *dst, uint32_t dstLevel, uint32_t dstDepth)
GX2DepthBuffer
Definition:
surface.h:204
GX2R_RESOURCE_FLAGS_BIND_STREAM_OUTPUT
Definition:
surface.h:124
GX2_SURFACE_FORMAT_UINT_R32
Definition:
surface.h:56
GX2_SURFACE_FORMAT_SNORM_R16
Definition:
surface.h:67
GX2_SURFACE_FORMAT_UNORM_R16_G16_B16_A16
Definition:
surface.h:36
GX2_SURFACE_FORMAT_SINT_R32_G32_B32_A32
Definition:
surface.h:82
GX2_SURFACE_DIM_TEXTURE_2D_ARRAY
Definition:
surface.h:21
GX2DepthBuffer::hiZPtr
void * hiZPtr
Definition:
surface.h:211
GX2Surface::aa
GX2AAMode aa
Definition:
surface.h:168
GX2_SURFACE_FORMAT_SRGB_BC3
Definition:
surface.h:88
GX2_SURFACE_FORMAT_UNORM_R5_G6_B5
Definition:
surface.h:37
GX2_SURFACE_FORMAT_UNORM_R5_G5_B5_A1
Definition:
surface.h:38
GX2_SURFACE_FORMAT_UNORM_R16_G16
Definition:
surface.h:35
GX2Surface::depth
uint32_t depth
Definition:
surface.h:165
GX2Surface::use
GX2SurfaceUse use
Definition:
surface.h:171
GX2RResourceFlags
GX2RResourceFlags
Definition:
surface.h:114
GX2_SURFACE_FORMAT_UINT_R16
Definition:
surface.h:53
GX2Surface::width
uint32_t width
Definition:
surface.h:163
GX2R_RESOURCE_FLAGS_USAGE_DMA_READ
Definition:
surface.h:131
GX2Surface::mipLevelOffset
uint32_t mipLevelOffset[13]
Definition:
surface.h:182
GX2_SURFACE_FORMAT_UINT_R8_G8
Definition:
surface.h:51
GX2DepthBuffer::regs
uint32_t regs[7]
Definition:
surface.h:216
GX2SurfaceFormat
GX2SurfaceFormat
Definition:
surface.h:26
GX2_SURFACE_DIM_TEXTURE_2D
Definition:
surface.h:17
GX2_SURFACE_FORMAT_FLOAT_R32_G32
Definition:
surface.h:91
GX2_SURFACE_FORMAT_FLOAT_R32_G32_B32_A32
Definition:
surface.h:92
GX2_SURFACE_FORMAT_SINT_R16_G16_B16_A16
Definition:
surface.h:79
Generated by
1.8.10