PSPSDK 2024-10-31
Loading...
Searching...
No Matches
pspgu.h
Go to the documentation of this file.
1/*
2 * PSP Software Development Kit - https://github.com/pspdev
3 * -----------------------------------------------------------------------
4 * Licensed under the BSD license, see LICENSE in PSPSDK root for details.
5 *
6 * Copyright (c) 2005 Jesper Svennevid
7 */
8
9#ifndef __pspgu_h__
10#define __pspgu_h__
11
12#include <psptypes.h>
13#include <pspge.h>
14
19#if defined(__cplusplus)
20extern "C" {
21#endif
22
23/* PI, float-sized */
24#define GU_PI (3.141593f)
25
26/* Boolean values for convenience */
27#define GU_FALSE (0)
28#define GU_TRUE (1)
29
30/* Primitive types */
31#define GU_POINTS (0)
32#define GU_LINES (1)
33#define GU_LINE_STRIP (2)
34#define GU_TRIANGLES (3)
35#define GU_TRIANGLE_STRIP (4)
36#define GU_TRIANGLE_FAN (5)
37#define GU_SPRITES (6)
38
39/* States */
40#define GU_ALPHA_TEST (0)
41#define GU_DEPTH_TEST (1)
42#define GU_SCISSOR_TEST (2)
43#define GU_STENCIL_TEST (3)
44#define GU_BLEND (4)
45#define GU_CULL_FACE (5)
46#define GU_DITHER (6)
47#define GU_FOG (7)
48#define GU_CLIP_PLANES (8)
49#define GU_TEXTURE_2D (9)
50#define GU_LIGHTING (10)
51#define GU_LIGHT0 (11)
52#define GU_LIGHT1 (12)
53#define GU_LIGHT2 (13)
54#define GU_LIGHT3 (14)
55#define GU_LINE_SMOOTH (15)
56#define GU_PATCH_CULL_FACE (16)
57#define GU_COLOR_TEST (17)
58#define GU_COLOR_LOGIC_OP (18)
59#define GU_FACE_NORMAL_REVERSE (19)
60#define GU_PATCH_FACE (20)
61#define GU_FRAGMENT_2X (21)
62
63/* Matrix modes */
64#define GU_PROJECTION (0)
65#define GU_VIEW (1)
66#define GU_MODEL (2)
67#define GU_TEXTURE (3)
68
69/* Vertex Declarations Begin */
70#define GU_TEXTURE_SHIFT(n) ((n)<<0)
71#define GU_TEXTURE_8BIT GU_TEXTURE_SHIFT(1)
72#define GU_TEXTURE_16BIT GU_TEXTURE_SHIFT(2)
73#define GU_TEXTURE_32BITF GU_TEXTURE_SHIFT(3)
74#define GU_TEXTURE_BITS GU_TEXTURE_SHIFT(3)
75
76#define GU_COLOR_SHIFT(n) ((n)<<2)
77#define GU_COLOR_5650 GU_COLOR_SHIFT(4)
78#define GU_COLOR_5551 GU_COLOR_SHIFT(5)
79#define GU_COLOR_4444 GU_COLOR_SHIFT(6)
80#define GU_COLOR_8888 GU_COLOR_SHIFT(7)
81#define GU_COLOR_BITS GU_COLOR_SHIFT(7)
82
83#define GU_NORMAL_SHIFT(n) ((n)<<5)
84#define GU_NORMAL_8BIT GU_NORMAL_SHIFT(1)
85#define GU_NORMAL_16BIT GU_NORMAL_SHIFT(2)
86#define GU_NORMAL_32BITF GU_NORMAL_SHIFT(3)
87#define GU_NORMAL_BITS GU_NORMAL_SHIFT(3)
88
89#define GU_VERTEX_SHIFT(n) ((n)<<7)
90#define GU_VERTEX_8BIT GU_VERTEX_SHIFT(1)
91#define GU_VERTEX_16BIT GU_VERTEX_SHIFT(2)
92#define GU_VERTEX_32BITF GU_VERTEX_SHIFT(3)
93#define GU_VERTEX_BITS GU_VERTEX_SHIFT(3)
94
95#define GU_WEIGHT_SHIFT(n) ((n)<<9)
96#define GU_WEIGHT_8BIT GU_WEIGHT_SHIFT(1)
97#define GU_WEIGHT_16BIT GU_WEIGHT_SHIFT(2)
98#define GU_WEIGHT_32BITF GU_WEIGHT_SHIFT(3)
99#define GU_WEIGHT_BITS GU_WEIGHT_SHIFT(3)
100
101#define GU_INDEX_SHIFT(n) ((n)<<11)
102#define GU_INDEX_8BIT GU_INDEX_SHIFT(1)
103#define GU_INDEX_16BIT GU_INDEX_SHIFT(2)
104#define GU_INDEX_BITS GU_INDEX_SHIFT(3)
105
106#define GU_WEIGHTS(n) ((((n)-1)&7)<<14)
107#define GU_WEIGHTS_BITS GU_WEIGHTS(8)
108#define GU_VERTICES(n) ((((n)-1)&7)<<18)
109#define GU_VERTICES_BITS GU_VERTICES(8)
110
111#define GU_TRANSFORM_SHIFT(n) ((n)<<23)
112#define GU_TRANSFORM_3D GU_TRANSFORM_SHIFT(0)
113#define GU_TRANSFORM_2D GU_TRANSFORM_SHIFT(1)
114#define GU_TRANSFORM_BITS GU_TRANSFORM_SHIFT(1)
115/* Vertex Declarations End */
116
117/* Pixel Formats */
118#define GU_PSM_5650 (0) /* Display, Texture, Palette */
119#define GU_PSM_5551 (1) /* Display, Texture, Palette */
120#define GU_PSM_4444 (2) /* Display, Texture, Palette */
121#define GU_PSM_8888 (3) /* Display, Texture, Palette */
122#define GU_PSM_T4 (4) /* Texture */
123#define GU_PSM_T8 (5) /* Texture */
124#define GU_PSM_T16 (6) /* Texture */
125#define GU_PSM_T32 (7) /* Texture */
126#define GU_PSM_DXT1 (8) /* Texture */
127#define GU_PSM_DXT3 (9) /* Texture */
128#define GU_PSM_DXT5 (10) /* Texture */
129
130/* Spline Mode */
131#define GU_FILL_FILL (0)
132#define GU_OPEN_FILL (1)
133#define GU_FILL_OPEN (2)
134#define GU_OPEN_OPEN (3)
135
136/* Shading Model */
137#define GU_FLAT (0)
138#define GU_SMOOTH (1)
139
140/* Logical operation */
141#define GU_CLEAR (0)
142#define GU_AND (1)
143#define GU_AND_REVERSE (2)
144#define GU_COPY (3)
145#define GU_AND_INVERTED (4)
146#define GU_NOOP (5)
147#define GU_XOR (6)
148#define GU_OR (7)
149#define GU_NOR (8)
150#define GU_EQUIV (9)
151#define GU_INVERTED (10)
152#define GU_OR_REVERSE (11)
153#define GU_COPY_INVERTED (12)
154#define GU_OR_INVERTED (13)
155#define GU_NAND (14)
156#define GU_SET (15)
157
158/* Texture Filter */
159#define GU_NEAREST (0)
160#define GU_LINEAR (1)
161#define GU_NEAREST_MIPMAP_NEAREST (4)
162#define GU_LINEAR_MIPMAP_NEAREST (5)
163#define GU_NEAREST_MIPMAP_LINEAR (6)
164#define GU_LINEAR_MIPMAP_LINEAR (7)
165
166/* Texture Map Mode */
167#define GU_TEXTURE_COORDS (0)
168#define GU_TEXTURE_MATRIX (1)
169#define GU_ENVIRONMENT_MAP (2)
170
171/* Texture Level Mode */
172#define GU_TEXTURE_AUTO (0)
173#define GU_TEXTURE_CONST (1)
174#define GU_TEXTURE_SLOPE (2)
175
176/* Texture Projection Map Mode */
177#define GU_POSITION (0)
178#define GU_UV (1)
179#define GU_NORMALIZED_NORMAL (2)
180#define GU_NORMAL (3)
181
182/* Wrap Mode */
183#define GU_REPEAT (0)
184#define GU_CLAMP (1)
185
186/* Front Face Direction */
187#define GU_CW (0)
188#define GU_CCW (1)
189
190/* Test Function */
191#define GU_NEVER (0)
192#define GU_ALWAYS (1)
193#define GU_EQUAL (2)
194#define GU_NOTEQUAL (3)
195#define GU_LESS (4)
196#define GU_LEQUAL (5)
197#define GU_GREATER (6)
198#define GU_GEQUAL (7)
199
200/* Clear Buffer Mask */
201#define GU_COLOR_BUFFER_BIT (1)
202#define GU_STENCIL_BUFFER_BIT (2)
203#define GU_DEPTH_BUFFER_BIT (4)
204#define GU_FAST_CLEAR_BIT (16)
205
206/* Texture Effect */
207#define GU_TFX_MODULATE (0)
208#define GU_TFX_DECAL (1)
209#define GU_TFX_BLEND (2)
210#define GU_TFX_REPLACE (3)
211#define GU_TFX_ADD (4)
212
213/* Texture Color Component */
214#define GU_TCC_RGB (0)
215#define GU_TCC_RGBA (1)
216
217/* Blending Op */
218#define GU_ADD (0)
219#define GU_SUBTRACT (1)
220#define GU_REVERSE_SUBTRACT (2)
221#define GU_MIN (3)
222#define GU_MAX (4)
223#define GU_ABS (5)
224
225/* Blending Factor */
226#define GU_SRC_COLOR (0)
227#define GU_ONE_MINUS_SRC_COLOR (1)
228#define GU_SRC_ALPHA (2)
229#define GU_ONE_MINUS_SRC_ALPHA (3)
230#define GU_DST_COLOR (0)
231#define GU_ONE_MINUS_DST_COLOR (1)
232#define GU_DST_ALPHA (4)
233#define GU_ONE_MINUS_DST_ALPHA (5)
234#define GU_FIX (10)
235
236/* Stencil Operations */
237#define GU_KEEP (0)
238#define GU_ZERO (1)
239#define GU_REPLACE (2)
240#define GU_INVERT (3)
241#define GU_INCR (4)
242#define GU_DECR (5)
243
244/* Light Components */
245#define GU_AMBIENT (1)
246#define GU_DIFFUSE (2)
247#define GU_SPECULAR (4)
248#define GU_AMBIENT_AND_DIFFUSE (GU_AMBIENT|GU_DIFFUSE)
249#define GU_DIFFUSE_AND_SPECULAR (GU_DIFFUSE|GU_SPECULAR)
250#define GU_UNKNOWN_LIGHT_COMPONENT (8)
251
252/* Light modes */
253#define GU_SINGLE_COLOR (0)
254#define GU_SEPARATE_SPECULAR_COLOR (1)
255
256/* Light Type */
257#define GU_DIRECTIONAL (0)
258#define GU_POINTLIGHT (1)
259#define GU_SPOTLIGHT (2)
260
261/* Contexts */
262#define GU_DIRECT (0)
263#define GU_CALL (1)
264#define GU_SEND (2)
265
266/* List Queue */
267#define GU_TAIL (0)
268#define GU_HEAD (1)
269
270/* Sync behavior (mode) */
271#define GU_SYNC_FINISH (0)
272#define GU_SYNC_SIGNAL (1)
273#define GU_SYNC_DONE (2)
274#define GU_SYNC_LIST (3)
275#define GU_SYNC_SEND (4)
276
277/* behavior (what) */
278#define GU_SYNC_WAIT (0)
279#define GU_SYNC_NOWAIT (1)
280
281/* Sync behavior (what) [see pspge.h] */
282#define GU_SYNC_WHAT_DONE (0)
283#define GU_SYNC_WHAT_QUEUED (1)
284#define GU_SYNC_WHAT_DRAW (2)
285#define GU_SYNC_WHAT_STALL (3)
286#define GU_SYNC_WHAT_CANCEL (4)
287
288/* Signals */
289#define GU_CALLBACK_SIGNAL (1)
290#define GU_CALLBACK_FINISH (4)
291
292/* Signal behavior */
293#define GU_BEHAVIOR_SUSPEND (1)
294#define GU_BEHAVIOR_CONTINUE (2)
295
296/* Color Macros, maps 8 bit unsigned channels into one 32-bit value */
297#define GU_ABGR(a,b,g,r) (((a) << 24)|((b) << 16)|((g) << 8)|(r))
298#define GU_ARGB(a,r,g,b) GU_ABGR((a),(b),(g),(r))
299#define GU_RGBA(r,g,b,a) GU_ARGB((a),(r),(g),(b))
300
301/* Color Macro, maps floating point channels (0..1) into one 32-bit value */
302#define GU_COLOR(r,g,b,a) GU_RGBA((u32)((r) * 255.0f),(u32)((g) * 255.0f),(u32)((b) * 255.0f),(u32)((a) * 255.0f))
303
304typedef void (*GuSwapBuffersCallback)(void** display,void** render);
305
316void sceGuDepthBuffer(void* zbp, int zbw);
317
332void sceGuDispBuffer(int width, int height, void* dispbp, int dispbw);
333
352void sceGuDrawBuffer(int psm, void* fbp, int fbw);
353
361void sceGuDrawBufferList(int psm, void* fbp, int fbw);
362
373int sceGuDisplay(int state);
374
390void sceGuDepthFunc(int function);
391
397void sceGuDepthMask(int mask);
398
399void sceGuDepthOffset(unsigned int offset);
400
414void sceGuDepthRange(int near, int far);
415
416void sceGuFog(float near, float far, unsigned int color);
417
423void sceGuInit(void);
424
430void sceGuTerm(void);
431
432void sceGuBreak(int a0);
433void sceGuContinue(void);
434
446void* sceGuSetCallback(int signal, void (*callback)(int));
447
458void sceGuSignal(int signal, int behavior);
459
468void sceGuSendCommandf(int cmd, float argument);
469
478void sceGuSendCommandi(int cmd, int argument);
479
490void* sceGuGetMemory(int size);
491
505void sceGuStart(int cid, void* list);
506
520int sceGuFinish(void);
521
533int sceGuFinishId(unsigned int id);
534
540void sceGuCallList(const void* list);
541
548void sceGuCallMode(int mode);
549
555int sceGuCheckList(void);
556
569int sceGuSendList(int mode, const void* list, PspGeContext* context);
570
576void* sceGuSwapBuffers(void);
577
604int sceGuSync(int mode, int what);
605
695void sceGuDrawArray(int prim, int vtype, int count, const void* indices, const void* vertices);
696
716void sceGuBeginObject(int vtype, int count, const void* indices, const void* vertices);
717
721void sceGuEndObject(void);
722
731void sceGuSetStatus(int state, int status);
732
741int sceGuGetStatus(int state);
742
750void sceGuSetAllStatus(int status);
751
759int sceGuGetAllStatus(void);
760
782void sceGuEnable(int state);
783
791void sceGuDisable(int state);
792
811void sceGuLight(int light, int type, int components, const ScePspFVector3* position);
812
821void sceGuLightAtt(int light, float atten0, float atten1, float atten2);
822
837void sceGuLightColor(int light, int component, unsigned int color);
838
851void sceGuLightMode(int mode);
852
861void sceGuLightSpot(int light, const ScePspFVector3* direction, float exponent, float cutoff);
862
873void sceGuClear(int flags);
874
880void sceGuClearColor(unsigned int color);
881
887void sceGuClearDepth(unsigned int depth);
888
895void sceGuClearStencil(unsigned int stencil);
896
903void sceGuPixelMask(unsigned int mask);
904
910void sceGuColor(unsigned int color);
911
932void sceGuColorFunc(int func, unsigned int color, unsigned int mask);
933
945
963void sceGuAlphaFunc(int func, int value, int mask);
964
965void sceGuAmbient(unsigned int color);
966void sceGuAmbientColor(unsigned int color);
967
1002void sceGuBlendFunc(int op, int src, int dest, unsigned int srcfix, unsigned int destfix);
1003
1004void sceGuMaterial(int mode, int color);
1005
1009void sceGuModelColor(unsigned int emissive, unsigned int ambient, unsigned int diffuse, unsigned int specular);
1010
1028void sceGuStencilFunc(int func, int ref, int mask);
1029
1048void sceGuStencilOp(int fail, int zfail, int zpass);
1049
1056void sceGuSpecular(float power);
1057
1069void sceGuFrontFace(int order);
1070
1096void sceGuLogicalOp(int op);
1097
1106
1116void sceGuShadeModel(int mode);
1117
1140void sceGuCopyImage(int psm, int sx, int sy, int width, int height, int srcw, void* src, int dx, int dy, int destw, void* dest);
1141
1151void sceGuTexEnvColor(unsigned int color);
1152
1167void sceGuTexFilter(int min, int mag);
1168
1175void sceGuTexFlush(void);
1176
1207void sceGuTexFunc(int tfx, int tcc);
1208
1223void sceGuTexImage(int mipmap, int width, int height, int tbw, const void* tbp);
1224
1236void sceGuTexLevelMode(unsigned int mode, float bias);
1237
1250void sceGuTexMapMode(int mode, unsigned int a1, unsigned int a2);
1251
1268void sceGuTexMode(int tpsm, int maxmips, int a2, int swizzle);
1269
1279void sceGuTexOffset(float u, float v);
1280
1292void sceGuTexProjMapMode(int mode);
1293
1303void sceGuTexScale(float u, float v);
1304void sceGuTexSlope(float slope);
1305
1312void sceGuTexSync();
1313
1324void sceGuTexWrap(int u, int v);
1325
1334void sceGuClutLoad(int num_blocks, const void* cbp);
1335
1350void sceGuClutMode(unsigned int cpsm, unsigned int shift, unsigned int mask, unsigned int a3);
1351
1365void sceGuOffset(unsigned int x, unsigned int y);
1366
1377void sceGuScissor(int x, int y, int w, int h);
1378
1392void sceGuViewport(int cx, int cy, int width, int height);
1393
1403void sceGuDrawBezier(int vtype, int ucount, int vcount, const void* indices, const void* vertices);
1404
1411void sceGuPatchDivide(unsigned int ulevel, unsigned int vlevel);
1412
1413void sceGuPatchFrontFace(unsigned int a0);
1414
1420void sceGuPatchPrim(int prim);
1421
1422void sceGuDrawSpline(int vtype, int ucount, int vcount, int uedge, int vedge, const void* indices, const void* vertices);
1423
1436void sceGuSetMatrix(int type, const ScePspFMatrix4* matrix);
1437
1451void sceGuBoneMatrix(unsigned int index, const ScePspFMatrix4* matrix);
1452
1466void sceGuMorphWeight(int index, float weight);
1467
1468void sceGuDrawArrayN(int primitive_type, int vertex_type, int count, int a3, const void* indices, const void* vertices);
1469
1481
1504
1520void* guGetStaticVramBuffer(unsigned int width, unsigned int height, unsigned int psm);
1521
1539void* guGetStaticVramTexture(unsigned int width, unsigned int height, unsigned int psm);
1540
1550int guGetDisplayState();
1551
1554#if defined(__cplusplus)
1555};
1556#endif
1557
1558#endif
#define a3
Definition as_reg_compat.h:25
#define a2
Definition as_reg_compat.h:24
#define a0
Definition as_reg_compat.h:22
#define a1
Definition as_reg_compat.h:23
u32 flags
Definition fixup.c:1
void sceGuSpecular(float power)
Set the specular power for the material.
Definition sceGuSpecular.c:11
void sceGuDispBuffer(int width, int height, void *dispbp, int dispbw)
Set display buffer parameters.
Definition sceGuDispBuffer.c:20
void sceGuFog(float near, float far, unsigned int color)
Definition sceGuFog.c:11
void sceGuTexProjMapMode(int mode)
Set texture projection-map mode.
Definition sceGuTexProjMapMode.c:11
void sceGuTexScale(float u, float v)
Set texture scale.
Definition sceGuTexScale.c:11
void sceGuDepthRange(int near, int far)
Set which range to use for depth calculations.
Definition sceGuDepthRange.c:11
void * sceGuSwapBuffers(void)
Swap display and draw buffer.
Definition sceGuSwapBuffers.c:14
void sceGuClearStencil(unsigned int stencil)
Set the current stencil clear value.
Definition sceGuClearStencil.c:11
void sceGuSetMatrix(int type, const ScePspFMatrix4 *matrix)
Set transform matrices.
Definition sceGuSetMatrix.c:11
int sceGuFinishId(unsigned int id)
Finish current display list and go back to the parent context, sending argument id for the finish cal...
Definition sceGuFinish.c:47
void sceGuPatchDivide(unsigned int ulevel, unsigned int vlevel)
Set dividing for patches (beziers and splines)
Definition sceGuPatchDivide.c:11
void sceGuLogicalOp(int op)
Set color logical operation.
Definition sceGuLogicalOp.c:11
void sceGuClutLoad(int num_blocks, const void *cbp)
Upload CLUT (Color Lookup Table)
Definition sceGuClutLoad.c:11
void sceGuDisable(int state)
Disable GE state.
Definition sceGuDisable.c:11
void sceGuPatchPrim(int prim)
Set primitive for patches (beziers and splines)
Definition sceGuPatchPrim.c:11
int sceGuGetStatus(int state)
Get if state is currently enabled or disabled.
Definition sceGuGetStatus.c:11
void sceGuBeginObject(int vtype, int count, const void *indices, const void *vertices)
Begin conditional rendering of object.
Definition sceGuBeginObject.c:11
void sceGuStencilFunc(int func, int ref, int mask)
Set stencil function and reference value for stencil testing.
Definition sceGuStencilFunc.c:11
void * sceGuGetMemory(int size)
Allocate memory on the current display list for temporary storage.
Definition sceGuGetMemory.c:14
void sceGuDrawBezier(int vtype, int ucount, int vcount, const void *indices, const void *vertices)
Draw bezier surface.
Definition sceGuDrawBezier.c:11
void sceGuViewport(int cx, int cy, int width, int height)
Set current viewport.
Definition sceGuViewport.c:11
int sceGuSync(int mode, int what)
Wait until display list has finished executing.
Definition sceGuSync.c:14
void sceGuMaterial(int mode, int color)
Definition sceGuMaterial.c:11
void sceGuDrawBuffer(int psm, void *fbp, int fbw)
Set draw buffer parameters (and store in context for buffer-swap)
Definition sceGuDrawBuffer.c:11
void sceGuTexFlush(void)
Flush texture page-cache.
Definition sceGuTexFlush.c:11
void sceGuTerm(void)
Shutdown the GU system.
Definition sceGuTerm.c:14
int sceGuFinish(void)
Finish current display list and go back to the parent context.
Definition sceGuFinish.c:11
void sceGuBreak(int a0)
Definition sceGuBreak.c:11
void sceGuScissor(int x, int y, int w, int h)
Set what to scissor within the current viewport.
Definition sceGuScissor.c:11
void sceGuDepthMask(int mask)
Mask depth buffer writes.
Definition sceGuDepthMask.c:11
void sceGuMorphWeight(int index, float weight)
Specify morph weight entry.
Definition sceGuMorphWeight.c:11
void sceGuFrontFace(int order)
Set the current face-order (for culling)
Definition sceGuFrontFace.c:11
void * guGetStaticVramBuffer(unsigned int width, unsigned int height, unsigned int psm)
Allocate a draw buffer in vram.
Definition vram.c:39
void sceGuModelColor(unsigned int emissive, unsigned int ambient, unsigned int diffuse, unsigned int specular)
Definition sceGuModelColor.c:11
void sceGuContinue(void)
Definition sceGuContinue.c:11
void guSwapBuffersBehaviour(int behaviour)
Set how the display should be set.
Definition sceGuSwapBuffers.c:35
void sceGuInit(void)
Initalize the GU system.
Definition sceGuInit.c:257
void sceGuTexSync()
Synchronize rendering pipeline with image upload.
Definition sceGuTexSync.c:11
void sceGuTexFilter(int min, int mag)
Set how the texture is filtered.
Definition sceGuTexFilter.c:11
void sceGuCallList(const void *list)
Call previously generated display-list.
Definition sceGuCallList.c:11
int sceGuCheckList(void)
Check how large the current display-list is.
Definition sceGuCheckList.c:11
void sceGuLightMode(int mode)
Set light mode.
Definition sceGuLightMode.c:11
void sceGuTexFunc(int tfx, int tcc)
Set how textures are applied.
Definition sceGuTexFunc.c:11
void sceGuBoneMatrix(unsigned int index, const ScePspFMatrix4 *matrix)
Specify skinning matrix entry.
Definition sceGuBoneMatrix.c:11
void sceGuSignal(int signal, int behavior)
Trigger signal to call code from the command stream.
Definition sceGuSignal.c:11
void sceGuLight(int light, int type, int components, const ScePspFVector3 *position)
Set light parameters.
Definition sceGuLight.c:11
void sceGuStart(int cid, void *list)
Start filling a new display-context.
Definition sceGuStart.c:14
void sceGuCopyImage(int psm, int sx, int sy, int width, int height, int srcw, void *src, int dx, int dy, int destw, void *dest)
Image transfer using the GE.
Definition sceGuCopyImage.c:11
void sceGuDepthOffset(unsigned int offset)
Definition sceGuDepthOffset.c:11
void sceGuDrawArray(int prim, int vtype, int count, const void *indices, const void *vertices)
Draw array of vertices forming primitives.
Definition sceGuDrawArray.c:11
void sceGuLightAtt(int light, float atten0, float atten1, float atten2)
Set light attenuation.
Definition sceGuLightAtt.c:11
void sceGuTexEnvColor(unsigned int color)
Specify the texture environment color.
Definition sceGuTexEnvColor.c:11
void sceGuDrawArrayN(int primitive_type, int vertex_type, int count, int a3, const void *indices, const void *vertices)
Definition sceGuDrawArrayN.c:11
void sceGuSetAllStatus(int status)
Set the status on all 22 available states.
Definition sceGuSetAllStatus.c:11
void sceGuBlendFunc(int op, int src, int dest, unsigned int srcfix, unsigned int destfix)
Set the blending-mode.
Definition sceGuBlendFunc.c:11
void sceGuSetStatus(int state, int status)
Enable or disable GE state.
Definition sceGuSetStatus.c:11
void sceGuPatchFrontFace(unsigned int a0)
Definition sceGuPatchFrontFace.c:11
void sceGuColorMaterial(int components)
Set which color components that the material will receive.
Definition sceGuColorMaterial.c:11
int sceGuDisplay(int state)
Turn display on or off.
Definition sceGuDisplay.c:14
void sceGuClearDepth(unsigned int depth)
Set the current clear-depth.
Definition sceGuClearDepth.c:11
void * sceGuSetCallback(int signal, void(*callback)(int))
Setup signal handler.
Definition sceGuSetCallback.c:11
void * guGetStaticVramTexture(unsigned int width, unsigned int height, unsigned int psm)
Allocate a texture in vram.
Definition vram.c:48
void sceGuEndObject(void)
End conditional rendering of object.
Definition sceGuEndObject.c:11
void sceGuAmbient(unsigned int color)
Definition sceGuAmbient.c:11
void sceGuDepthBuffer(void *zbp, int zbw)
Set depth buffer parameters.
Definition sceGuDepthBuffer.c:11
int sceGuGetAllStatus(void)
Query status on all 22 available states.
Definition sceGuGetAllStatus.c:11
void sceGuPixelMask(unsigned int mask)
Set mask for which bits of the pixels to write.
Definition sceGuPixelMask.c:11
void sceGuColor(unsigned int color)
Set current primitive color.
Definition sceGuColor.c:11
void sceGuAlphaFunc(int func, int value, int mask)
Set the alpha test parameters.
Definition sceGuAlphaFunc.c:11
int sceGuSendList(int mode, const void *list, PspGeContext *context)
Send a list to the GE directly.
Definition sceGuSendList.c:14
void sceGuDepthFunc(int function)
Select which depth-test function to use.
Definition sceGuDepthFunc.c:11
void sceGuTexOffset(float u, float v)
Set texture offset.
Definition sceGuTexOffset.c:11
void sceGuDrawSpline(int vtype, int ucount, int vcount, int uedge, int vedge, const void *indices, const void *vertices)
Definition sceGuDrawSpline.c:11
void sceGuTexMode(int tpsm, int maxmips, int a2, int swizzle)
Set texture-mode parameters.
Definition sceGuTexMode.c:11
void sceGuSendCommandi(int cmd, int argument)
Send raw command to the GE.
Definition sceGuSendCommandi.c:11
void sceGuDrawBufferList(int psm, void *fbp, int fbw)
Set draw buffer directly, not storing parameters in the context.
Definition sceGuDrawBufferList.c:11
void sceGuLightSpot(int light, const ScePspFVector3 *direction, float exponent, float cutoff)
Set spotlight parameters.
Definition sceGuLightSpot.c:11
void sceGuCallMode(int mode)
Set wether to use stack-based calls or signals to handle execution of called lists.
Definition sceGuCallMode.c:11
void sceGuLightColor(int light, int component, unsigned int color)
Set light color.
Definition sceGuLightColor.c:11
void sceGuEnable(int state)
Enable GE state.
Definition sceGuEnable.c:11
int guGetDisplayState()
Get state of display.
Definition sceGuDisplay.c:25
void sceGuClutMode(unsigned int cpsm, unsigned int shift, unsigned int mask, unsigned int a3)
Set current CLUT mode.
Definition sceGuClutMode.c:11
void sceGuClear(int flags)
Clear current drawbuffer.
Definition sceGuClear.c:11
void sceGuStencilOp(int fail, int zfail, int zpass)
Set the stencil test actions.
Definition sceGuStencilOp.c:11
void sceGuColorFunc(int func, unsigned int color, unsigned int mask)
Set the color test function.
Definition sceGuColorFunc.c:11
void sceGuTexMapMode(int mode, unsigned int a1, unsigned int a2)
Set the texture-mapping mode.
Definition sceGuTexMapMode.c:11
void sceGuAmbientColor(unsigned int color)
Definition sceGuAmbientColor.c:11
void sceGuTexLevelMode(unsigned int mode, float bias)
Set texture-level mode (mipmapping)
Definition sceGuTexLevelMode.c:13
void sceGuTexSlope(float slope)
Definition sceGuTexSlope.c:11
void sceGuOffset(unsigned int x, unsigned int y)
Set virtual coordinate offset.
Definition sceGuOffset.c:11
void sceGuTexImage(int mipmap, int width, int height, int tbw, const void *tbp)
Set current texturemap.
Definition sceGuTexImage.c:16
void guSwapBuffersCallback(GuSwapBuffersCallback callback)
Set a buffer swap callback to allow for more advanced buffer methods without hacking the library.
Definition sceGuSwapBuffers.c:40
void sceGuClearColor(unsigned int color)
Set the current clear-color.
Definition sceGuClearColor.c:11
void sceGuSetDither(const ScePspIMatrix4 *matrix)
Set ordered pixel dither matrix.
Definition sceGuSetDither.c:11
void sceGuShadeModel(int mode)
Set how primitives are shaded.
Definition sceGuShadeModel.c:11
void sceGuSendCommandf(int cmd, float argument)
Send raw float-command to the GE.
Definition sceGuSendCommandf.c:11
void sceGuTexWrap(int u, int v)
Set if the texture should repeat or clamp.
Definition sceGuTexWrap.c:11
void(* GuSwapBuffersCallback)(void **display, void **render)
Definition pspgu.h:304
unsigned char size
Definition pspsysmem_kernel.h:6
struct _uidControlBlock * type
Definition pspsysmem_kernel.h:2
float w
Definition psptypes.h:3
float y
Definition psptypes.h:1
float x
Definition psptypes.h:0
Stores the state of the GE.
Definition pspge.h:23
Definition psptypes.h:300
Definition psptypes.h:182
Definition psptypes.h:286