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