Functions | |
void | sceGuDepthBuffer (void *zbp, int zbw) |
Set depth buffer parameters. | |
void | sceGuDispBuffer (int width, int height, void *dispbp, int dispbw) |
Set display buffer parameters. | |
void | sceGuDrawBuffer (int psm, void *fbp, int fbw) |
Set draw buffer parameters (and store in context for buffer-swap). | |
void | sceGuDrawBufferList (int psm, void *fbp, int fbw) |
Set draw buffer directly, not storing parameters in the context. | |
int | sceGuDisplay (int state) |
Turn display on or off. | |
void | sceGuDepthFunc (int function) |
Select which depth-test function to use. | |
void | sceGuDepthMask (int mask) |
Mask depth buffer writes. | |
void | sceGuDepthOffset (unsigned int offset) |
void | sceGuDepthRange (int near, int far) |
Set which range to use for depth calculations. | |
void | sceGuFog (float near, float far, unsigned int color) |
void | sceGuInit (void) |
Initalize the GU system. | |
void | sceGuTerm (void) |
Shutdown the GU system. | |
void | sceGuBreak (int a0) |
void | sceGuContinue (void) |
void * | sceGuSetCallback (int signal, void(*callback)(int)) |
Setup signal handler. | |
void | sceGuSignal (int signal, int behavior) |
Trigger signal to call code from the command stream. | |
void | sceGuSendCommandf (int cmd, float argument) |
Send raw float-command to the GE. | |
void | sceGuSendCommandi (int cmd, int argument) |
Send raw command to the GE. | |
void * | sceGuGetMemory (int size) |
Allocate memory on the current display list for temporary storage. | |
void | sceGuStart (int cid, void *list) |
Start filling a new display-context. | |
int | sceGuFinish (void) |
Finish current display list and go back to the parent context. | |
int | sceGuFinishId (unsigned int id) |
Finish current display list and go back to the parent context, sending argument id for the finish callback. | |
void | sceGuCallList (const void *list) |
Call previously generated display-list. | |
void | sceGuCallMode (int mode) |
Set wether to use stack-based calls or signals to handle execution of called lists. | |
int | sceGuCheckList (void) |
Check how large the current display-list is. | |
void | sceGuSendList (int mode, const void *list, PspGeContext *context) |
Send a list to the GE directly. | |
void * | sceGuSwapBuffers (void) |
Swap display and draw buffer. | |
int | sceGuSync (int mode, int what) |
Wait until display list has finished executing. | |
void | sceGuDrawArray (int prim, int vtype, int count, const void *indices, const void *vertices) |
Draw array of vertices forming primitives. | |
void | sceGuBeginObject (int vtype, int count, const void *indices, const void *vertices) |
Begin conditional rendering of object. | |
void | sceGuEndObject (void) |
End conditional rendering of object. | |
void | sceGuSetStatus (int state, int status) |
Enable or disable GE state. | |
int | sceGuGetStatus (int state) |
Get if state is currently enabled or disabled. | |
void | sceGuSetAllStatus (int status) |
Set the status on all 22 available states. | |
int | sceGuGetAllStatus (void) |
Query status on all 22 available states. | |
void | sceGuEnable (int state) |
Enable GE state. | |
void | sceGuDisable (int state) |
Disable GE state. | |
void | sceGuLight (int light, int type, int components, const ScePspFVector3 *position) |
Set light parameters. | |
void | sceGuLightAtt (int light, float atten0, float atten1, float atten2) |
Set light attenuation. | |
void | sceGuLightColor (int light, int component, unsigned int color) |
Set light color. | |
void | sceGuLightMode (int mode) |
Set light mode. | |
void | sceGuLightSpot (int light, const ScePspFVector3 *direction, float exponent, float cutoff) |
Set spotlight parameters. | |
void | sceGuClear (int flags) |
Clear current drawbuffer. | |
void | sceGuClearColor (unsigned int color) |
Set the current clear-color. | |
void | sceGuClearDepth (unsigned int depth) |
Set the current clear-depth. | |
void | sceGuClearStencil (unsigned int stencil) |
Set the current stencil clear value. | |
void | sceGuPixelMask (unsigned int mask) |
Set mask for which bits of the pixels to write. | |
void | sceGuColor (unsigned int color) |
Set current primitive color. | |
void | sceGuColorFunc (int func, unsigned int color, unsigned int mask) |
Set the color test function. | |
void | sceGuColorMaterial (int components) |
Set which color components that the material will receive. | |
void | sceGuAlphaFunc (int func, int value, int mask) |
Set the alpha test parameters. | |
void | sceGuAmbient (unsigned int color) |
void | sceGuAmbientColor (unsigned int color) |
void | sceGuBlendFunc (int op, int src, int dest, unsigned int srcfix, unsigned int destfix) |
Set the blending-mode. | |
void | sceGuMaterial (int mode, int color) |
void | sceGuModelColor (unsigned int emissive, unsigned int ambient, unsigned int diffuse, unsigned int specular) |
void | sceGuStencilFunc (int func, int ref, int mask) |
Set stencil function and reference value for stencil testing. | |
void | sceGuStencilOp (int fail, int zfail, int zpass) |
Set the stencil test actions. | |
void | sceGuSpecular (float power) |
Set the specular power for the material. | |
void | sceGuFrontFace (int order) |
Set the current face-order (for culling). | |
void | sceGuLogicalOp (int op) |
Set color logical operation. | |
void | sceGuSetDither (const ScePspIMatrix4 *matrix) |
Set ordered pixel dither matrix. | |
void | sceGuShadeModel (int mode) |
Set how primitives are shaded. | |
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. | |
void | sceGuTexEnvColor (unsigned int color) |
Specify the texture environment color. | |
void | sceGuTexFilter (int min, int mag) |
Set how the texture is filtered. | |
void | sceGuTexFlush (void) |
Flush texture page-cache. | |
void | sceGuTexFunc (int tfx, int tcc) |
Set how textures are applied. | |
void | sceGuTexImage (int mipmap, int width, int height, int tbw, const void *tbp) |
Set current texturemap. | |
void | sceGuTexLevelMode (unsigned int mode, float bias) |
Set texture-level mode (mipmapping). | |
void | sceGuTexMapMode (int mode, unsigned int a1, unsigned int a2) |
Set the texture-mapping mode. | |
void | sceGuTexMode (int tpsm, int maxmips, int a2, int swizzle) |
Set texture-mode parameters. | |
void | sceGuTexOffset (float u, float v) |
Set texture offset. | |
void | sceGuTexProjMapMode (int mode) |
Set texture projection-map mode. | |
void | sceGuTexScale (float u, float v) |
Set texture scale. | |
void | sceGuTexSlope (float slope) |
void | sceGuTexSync () |
Synchronize rendering pipeline with image upload. | |
void | sceGuTexWrap (int u, int v) |
Set if the texture should repeat or clamp. | |
void | sceGuClutLoad (int num_blocks, const void *cbp) |
Upload CLUT (Color Lookup Table). | |
void | sceGuClutMode (unsigned int cpsm, unsigned int shift, unsigned int mask, unsigned int a3) |
Set current CLUT mode. | |
void | sceGuOffset (unsigned int x, unsigned int y) |
Set virtual coordinate offset. | |
void | sceGuScissor (int x, int y, int w, int h) |
Set what to scissor within the current viewport. | |
void | sceGuViewport (int cx, int cy, int width, int height) |
Set current viewport. | |
void | sceGuDrawBezier (int vtype, int ucount, int vcount, const void *indices, const void *vertices) |
Draw bezier surface. | |
void | sceGuPatchDivide (unsigned int ulevel, unsigned int vlevel) |
Set dividing for patches (beziers and splines). | |
void | sceGuPatchFrontFace (unsigned int a0) |
void | sceGuPatchPrim (int prim) |
Set primitive for patches (beziers and splines). | |
void | sceGuDrawSpline (int vtype, int ucount, int vcount, int uedge, int vedge, const void *indices, const void *vertices) |
void | sceGuSetMatrix (int type, const ScePspFMatrix4 *matrix) |
Set transform matrices. | |
void | sceGuBoneMatrix (unsigned int index, const ScePspFMatrix4 *matrix) |
Specify skinning matrix entry. | |
void | sceGuMorphWeight (int index, float weight) |
Specify morph weight entry. | |
void | sceGuDrawArrayN (int primitive_type, int vertex_type, int count, int a3, const void *indices, const void *vertices) |
void | guSwapBuffersBehaviour (int behaviour) |
Set how the display should be set. | |
void | guSwapBuffersCallback (GuSwapBuffersCallback callback) |
Set a buffer swap callback to allow for more advanced buffer methods without hacking the library. |
void guSwapBuffersBehaviour | ( | int | behaviour | ) |
Set how the display should be set.
Available behaviours are:
Do remember that this swaps the pointers internally, regardless of setting, so be careful to wait until the next vertical blank or use another buffering algorithm (see guSwapBuffersCallback()).
void guSwapBuffersCallback | ( | GuSwapBuffersCallback | callback | ) |
Set a buffer swap callback to allow for more advanced buffer methods without hacking the library.
The GuSwapBuffersCallback is defined like this:
void swapBuffersCallback(void** display, void** render);
void* doneBuffer; void swapBuffersCallback(void** display, void** render) { void* active = doneBuffer; doneBuffer = *display; *display = active; }
callback | - Callback to access when buffers are swapped. Pass 0 to disable. |
void sceGuAlphaFunc | ( | int | func, | |
int | value, | |||
int | mask | |||
) |
Set the alpha test parameters.
Available comparison functions are:
func | - Specifies the alpha comparison function. | |
value | - Specifies the reference value that incoming alpha values are compared to. | |
mask | - Specifies the mask that both values are ANDed with before comparison. |
void sceGuAmbient | ( | unsigned int | color | ) |
void sceGuAmbientColor | ( | unsigned int | color | ) |
void sceGuBeginObject | ( | int | vtype, | |
int | count, | |||
const void * | indices, | |||
const void * | vertices | |||
) |
Begin conditional rendering of object.
If no vertices passed into this function are inside the scissor region, it will skip rendering the object. There can be up to 32 levels of conditional testing, and all levels HAVE to be terminated by sceGuEndObject().
sceGuBeginObject(GU_VERTEX_32BITF,8,0,boundingBox); sceGuDrawArray(GU_TRIANGLES,GU_TEXTURE_32BITF|GU_VERTEX_32BITF,vertexCount,0,vertices); sceGuEndObject();
vtype | - Vertex type to process | |
count | - Number of vertices to test | |
indices | - Optional list to an index-list | |
vertices | - Pointer to a vertex-list |
void sceGuBlendFunc | ( | int | op, | |
int | src, | |||
int | dest, | |||
unsigned int | srcfix, | |||
unsigned int | destfix | |||
) |
Set the blending-mode.
Keys for the blending operations:
Available blending-operations are:
Available blending-functions are:
op | - Blending Operation | |
src | - Blending function for source operand | |
dest | - Blending function for dest operand | |
srcfix | - Fix value for GU_FIX (source operand) | |
destfix | - Fix value for GU_FIX (dest operand) |
void sceGuBoneMatrix | ( | unsigned int | index, | |
const ScePspFMatrix4 * | matrix | |||
) |
Specify skinning matrix entry.
To enable vertex skinning, pass GU_WEIGHTS(n), where n is between 1-8, and pass available GU_WEIGHT_??? declaration. This will change the amount of weights passed in the vertex araay, and by setting the skinning, matrices, you will multiply each vertex every weight and vertex passed.
Please see sceGuDrawArray() for vertex format information.
index | - Skinning matrix index (0-7) | |
matrix | - Matrix to set |
void sceGuBreak | ( | int | a0 | ) |
void sceGuCallList | ( | const void * | list | ) |
Call previously generated display-list.
list | - Display list to call |
void sceGuCallMode | ( | int | mode | ) |
Set wether to use stack-based calls or signals to handle execution of called lists.
mode | - GU_TRUE(1) to enable signals, GU_FALSE(0) to disable signals and use normal calls instead. |
int sceGuCheckList | ( | void | ) |
Check how large the current display-list is.
void sceGuClear | ( | int | flags | ) |
Clear current drawbuffer.
Available clear-flags are (OR them together to get final clear-mode):
flags | - Which part of the buffer to clear |
void sceGuClearColor | ( | unsigned int | color | ) |
Set the current clear-color.
color | - Color to clear with |
void sceGuClearDepth | ( | unsigned int | depth | ) |
Set the current clear-depth.
depth | - Set which depth to clear with (0x0000-0xffff) |
void sceGuClearStencil | ( | unsigned int | stencil | ) |
Set the current stencil clear value.
stencil | - Set which stencil value to clear with (0-255) |
void sceGuClutLoad | ( | int | num_blocks, | |
const void * | cbp | |||
) |
Upload CLUT (Color Lookup Table).
num_blocks | - How many blocks of 8 entries to upload (32*8 is 256 colors) | |
cbp | - Pointer to palette (16 byte aligned) |
void sceGuClutMode | ( | unsigned int | cpsm, | |
unsigned int | shift, | |||
unsigned int | mask, | |||
unsigned int | a3 | |||
) |
Set current CLUT mode.
Available pixel formats for palettes are:
cpsm | - Which pixel format to use for the palette | |
shift | - Shifts color index by that many bits to the right | |
mask | - Masks the color index with this bitmask after the shift (0-0xFF) | |
a3 | - Unknown, set to 0 |
void sceGuColor | ( | unsigned int | color | ) |
Set current primitive color.
color | - Which color to use (overriden by vertex-colors) |
void sceGuColorFunc | ( | int | func, | |
unsigned int | color, | |||
unsigned int | mask | |||
) |
Set the color test function.
The color test is only performed while GU_COLOR_TEST is enabled.
Available functions are:
sceGuColorFunc(GU_EQUAL,0,0xff0000);
func | - Color test function | |
color | - Color to test against | |
mask | - Mask ANDed against both source and destination when testing |
void sceGuColorMaterial | ( | int | components | ) |
Set which color components that the material will receive.
The components are ORed together from the following values:
components | - Which components to receive |
void sceGuContinue | ( | void | ) |
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.
sceGuCopyImage(GU_PSM_8888,0,0,480,272,512,pixels,0,0,512,(void*)(((unsigned int)framebuffer)+0x4000000));
psm | - Pixel format for buffer | |
sx | - Source X | |
sy | - Source Y | |
width | - Image width | |
height | - Image height | |
srcw | - Source buffer width (block aligned) | |
src | - Source pointer | |
dx | - Destination X | |
dy | - Destination Y | |
destw | - Destination buffer width (block aligned) | |
dest | - Destination pointer |
void sceGuDepthBuffer | ( | void * | zbp, | |
int | zbw | |||
) |
Set depth buffer parameters.
zbp | - VRAM pointer where the depthbuffer should start | |
zbw | - The width of the depth-buffer (block-aligned) |
void sceGuDepthFunc | ( | int | function | ) |
Select which depth-test function to use.
Valid choices for the depth-test are:
function | - Depth test function to use |
void sceGuDepthMask | ( | int | mask | ) |
void sceGuDepthOffset | ( | unsigned int | offset | ) |
void sceGuDepthRange | ( | int | near, | |
int | far | |||
) |
Set which range to use for depth calculations.
sceGuDepthRange(65535,0);
near | - Value to use for the near plane | |
far | - Value to use for the far plane |
void sceGuDisable | ( | int | state | ) |
Disable GE state.
Look at sceGuEnable() for a list of states
state | - Which state to disable |
void sceGuDispBuffer | ( | int | width, | |
int | height, | |||
void * | dispbp, | |||
int | dispbw | |||
) |
Set display buffer parameters.
sceGuDispBuffer(480,272,(void*)512*272*2,512); // 480*272, skipping the draw buffer located at address 0
width | - Width of the display buffer in pixels | |
height | - Width of the display buffer in pixels | |
dispbp | - VRAM pointer to where the display-buffer starts | |
dispbw | - Display buffer width (block aligned) |
int sceGuDisplay | ( | int | state | ) |
Turn display on or off.
Available states are:
state | - Turn display on or off |
void sceGuDrawArray | ( | int | prim, | |
int | vtype, | |||
int | count, | |||
const void * | indices, | |||
const void * | vertices | |||
) |
Draw array of vertices forming primitives.
Available primitive-types are:
The vertex-type decides how the vertices align and what kind of information they contain. The following flags are ORed together to compose the final vertex format:
sceGuDrawArray(GU_TRIANGLES,GU_TEXTURE_32BITF|GU_VERTEX_32BITF,400*3,0,vertices);
prim | - What kind of primitives to render | |
vtype | - Vertex type to process | |
count | - How many vertices to process | |
indices | - Optional pointer to an index-list | |
vertices | - Pointer to a vertex-list |
void sceGuDrawArrayN | ( | int | primitive_type, | |
int | vertex_type, | |||
int | count, | |||
int | a3, | |||
const void * | indices, | |||
const void * | vertices | |||
) |
void sceGuDrawBezier | ( | int | vtype, | |
int | ucount, | |||
int | vcount, | |||
const void * | indices, | |||
const void * | vertices | |||
) |
Draw bezier surface.
vtype | - Vertex type, look at sceGuDrawArray() for vertex definition | |
ucount | - Number of vertices used in the U direction | |
vcount | - Number of vertices used in the V direction | |
indices | - Pointer to index buffer | |
vertices | - Pointer to vertex buffer |
void sceGuDrawBuffer | ( | int | psm, | |
void * | fbp, | |||
int | fbw | |||
) |
Set draw buffer parameters (and store in context for buffer-swap).
Available pixel formats are:
sceGuDrawBuffer(GU_PSM_5551,(void*)0,512);
psm | - Pixel format to use for rendering (and display) | |
fbp | - VRAM pointer to where the draw buffer starts | |
fbw | - Frame buffer width (block aligned) |
void sceGuDrawBufferList | ( | int | psm, | |
void * | fbp, | |||
int | fbw | |||
) |
Set draw buffer directly, not storing parameters in the context.
psm | - Pixel format to use for rendering | |
fbp | - VRAM pointer to where the draw buffer starts | |
fbw | - Frame buffer width (block aligned) |
void sceGuDrawSpline | ( | int | vtype, | |
int | ucount, | |||
int | vcount, | |||
int | uedge, | |||
int | vedge, | |||
const void * | indices, | |||
const void * | vertices | |||
) |
void sceGuEnable | ( | int | state | ) |
Enable GE state.
The currently available states are:
state | - Which state to enable |
void sceGuEndObject | ( | void | ) |
End conditional rendering of object.
int sceGuFinish | ( | void | ) |
Finish current display list and go back to the parent context.
If the context is GU_DIRECT, the stall-address is updated so that the entire list will execute. Otherwise, only the terminating action is written to the list, depending on context-type.
The finish-callback will get a zero as argument when using this function.
This also restores control back to whatever context that was active prior to this call.
int sceGuFinishId | ( | unsigned int | id | ) |
Finish current display list and go back to the parent context, sending argument id for the finish callback.
If the context is GU_DIRECT, the stall-address is updated so that the entire list will execute. Otherwise, only the terminating action is written to the list, depending on context-type.
id | - Finish callback id (16-bit) |
void sceGuFog | ( | float | near, | |
float | far, | |||
unsigned int | color | |||
) |
void sceGuFrontFace | ( | int | order | ) |
Set the current face-order (for culling).
This only has effect when culling is enabled (GU_CULL_FACE)
Culling order can be:
order | - Which order to use |
int sceGuGetAllStatus | ( | void | ) |
Query status on all 22 available states.
Look at sceGuEnable() for a list of states
void* sceGuGetMemory | ( | int | size | ) |
Allocate memory on the current display list for temporary storage.
size | - How much memory to allocate |
int sceGuGetStatus | ( | int | state | ) |
Get if state is currently enabled or disabled.
Look at sceGuEnable() for a list of states
state | - Which state to query about |
void sceGuInit | ( | void | ) |
Initalize the GU system.
This function MUST be called as the first function, otherwise state is undetermined.
void sceGuLight | ( | int | light, | |
int | type, | |||
int | components, | |||
const ScePspFVector3 * | position | |||
) |
Set light parameters.
Available light types are:
Available light components are:
light | - Light index | |
type | - Light type | |
components | - Light components | |
position | - Light position |
void sceGuLightAtt | ( | int | light, | |
float | atten0, | |||
float | atten1, | |||
float | atten2 | |||
) |
Set light attenuation.
light | - Light index | |
atten0 | - Constant attenuation factor | |
atten1 | - Linear attenuation factor | |
atten2 | - Quadratic attenuation factor |
void sceGuLightColor | ( | int | light, | |
int | component, | |||
unsigned int | color | |||
) |
Set light color.
Available light components are:
light | - Light index | |
component | - Which component to set | |
color | - Which color to use |
void sceGuLightMode | ( | int | mode | ) |
Set light mode.
Available light modes are:
Separate specular colors are used to interpolate the specular component independently, so that it can be added to the fragment after the texture color.
mode | - Light mode to use |
void sceGuLightSpot | ( | int | light, | |
const ScePspFVector3 * | direction, | |||
float | exponent, | |||
float | cutoff | |||
) |
Set spotlight parameters.
light | - Light index | |
direction | - Spotlight direction | |
exponent | - Spotlight exponent | |
cutoff | - Spotlight cutoff angle (in radians) |
void sceGuLogicalOp | ( | int | op | ) |
Set color logical operation.
Available operations are:
This operation only has effect if GU_COLOR_LOGIC_OP is enabled.
op | - Operation to execute |
void sceGuMaterial | ( | int | mode, | |
int | color | |||
) |
void sceGuModelColor | ( | unsigned int | emissive, | |
unsigned int | ambient, | |||
unsigned int | diffuse, | |||
unsigned int | specular | |||
) |
void sceGuMorphWeight | ( | int | index, | |
float | weight | |||
) |
Specify morph weight entry.
To enable vertex morphing, pass GU_VERTICES(n), where n is between 1-8. This will change the amount of vertices passed in the vertex array, and by setting the morph weights for every vertex entry in the array, you can blend between them.
Please see sceGuDrawArray() for vertex format information.
index | - Morph weight index (0-7) | |
weight | - Weight to set |
void sceGuOffset | ( | unsigned int | x, | |
unsigned int | y | |||
) |
Set virtual coordinate offset.
The PSP has a virtual coordinate-space of 4096x4096, this controls where rendering is performed
sceGuOffset(2048-(480/2),2048-(480/2));
x | - Offset (0-4095) | |
y | - Offset (0-4095) |
void sceGuPatchDivide | ( | unsigned int | ulevel, | |
unsigned int | vlevel | |||
) |
Set dividing for patches (beziers and splines).
ulevel | - Number of division on u direction | |
vlevel | - Number of division on v direction |
void sceGuPatchFrontFace | ( | unsigned int | a0 | ) |
void sceGuPatchPrim | ( | int | prim | ) |
Set primitive for patches (beziers and splines).
prim | - Desired primitive type (GU_POINTS | GU_LINE_STRIP | GU_TRIANGLE_STRIP) |
void sceGuPixelMask | ( | unsigned int | mask | ) |
Set mask for which bits of the pixels to write.
mask | - Which bits to filter against writes |
void sceGuScissor | ( | int | x, | |
int | y, | |||
int | w, | |||
int | h | |||
) |
Set what to scissor within the current viewport.
Note that scissoring is only performed if the custom scissoring is enabled (GU_SCISSOR_TEST)
x | - Left of scissor region | |
y | - Top of scissor region | |
w | - Width of scissor region | |
h | - Height of scissor region |
void sceGuSendCommandf | ( | int | cmd, | |
float | argument | |||
) |
Send raw float-command to the GE.
The argument is converted into a 24-bit float before transfer.
cmd | - Which command to send | |
argument | - Argument to pass along |
void sceGuSendCommandi | ( | int | cmd, | |
int | argument | |||
) |
Send raw command to the GE.
Only the 24 lower bits of the argument is passed along.
cmd | - Which command to send | |
argument | - Argument to pass along |
void sceGuSendList | ( | int | mode, | |
const void * | list, | |||
PspGeContext * | context | |||
) |
Send a list to the GE directly.
Available modes are:
mode | - Whether to place the list first or last in queue | |
list | - List to send | |
context | - Temporary storage for the GE context |
void sceGuSetAllStatus | ( | int | status | ) |
Set the status on all 22 available states.
Look at sceGuEnable() for a list of states
status | - Bit-mask (0-21) containing the status of all 22 states |
void* sceGuSetCallback | ( | int | signal, | |
void(*)(int) | callback | |||
) |
Setup signal handler.
Available signals are:
signal | - Signal index to install a handler for | |
callback | - Callback to call when signal index is triggered |
void sceGuSetDither | ( | const ScePspIMatrix4 * | matrix | ) |
Set ordered pixel dither matrix.
This dither matrix is only applied if GU_DITHER is enabled.
matrix | - Dither matrix |
void sceGuSetMatrix | ( | int | type, | |
const ScePspFMatrix4 * | matrix | |||
) |
Set transform matrices.
Available matrices are:
type | - Which matrix-type to set | |
matrix | - Matrix to load |
void sceGuSetStatus | ( | int | state, | |
int | status | |||
) |
Enable or disable GE state.
Look at sceGuEnable() for a list of states
state | - Which state to change | |
status | - Wether to enable or disable the state |
void sceGuShadeModel | ( | int | mode | ) |
Set how primitives are shaded.
The available shading-methods are:
mode | - Which mode to use |
void sceGuSignal | ( | int | signal, | |
int | behavior | |||
) |
Trigger signal to call code from the command stream.
Available behaviors are:
signal | - Signal to trigger | |
behavior | - Behavior type |
void sceGuSpecular | ( | float | power | ) |
Set the specular power for the material.
power | - Specular power |
void sceGuStart | ( | int | cid, | |
void * | list | |||
) |
Start filling a new display-context.
Contexts available are:
The previous context-type is stored so that it can be restored at sceGuFinish().
cid | - Context Type | |
list | - Pointer to display-list (16 byte aligned) |
void sceGuStencilFunc | ( | int | func, | |
int | ref, | |||
int | mask | |||
) |
Set stencil function and reference value for stencil testing.
Available functions are:
func | - Test function | |
ref | - The reference value for the stencil test | |
mask | - Mask that is ANDed with both the reference value and stored stencil value when the test is done |
void sceGuStencilOp | ( | int | fail, | |
int | zfail, | |||
int | zpass | |||
) |
Set the stencil test actions.
Available actions are:
As stencil buffer shares memory with framebuffer alpha, resolution of the buffer is directly in relation.
fail | - The action to take when the stencil test fails | |
zfail | - The action to take when stencil test passes, but the depth test fails | |
zpass | - The action to take when both stencil test and depth test passes |
void* sceGuSwapBuffers | ( | void | ) |
Swap display and draw buffer.
int sceGuSync | ( | int | mode, | |
int | what | |||
) |
Wait until display list has finished executing.
sceGuSync(0,0);
Available what are:
mode | - Whether to wait or not | |
what | - What to sync to |
void sceGuTerm | ( | void | ) |
Shutdown the GU system.
Called when GU is no longer needed
void sceGuTexEnvColor | ( | unsigned int | color | ) |
Specify the texture environment color.
This is used in the texture function when a constant color is needed.
See sceGuTexFunc() for more information.
color | - Constant color (0x00BBGGRR) |
void sceGuTexFilter | ( | int | min, | |
int | mag | |||
) |
Set how the texture is filtered.
Available filters are:
min | - Minimizing filter | |
mag | - Magnifying filter |
void sceGuTexFlush | ( | void | ) |
Flush texture page-cache.
Do this if you have copied/rendered into an area currently in the texture-cache
void sceGuTexFunc | ( | int | tfx, | |
int | tcc | |||
) |
Set how textures are applied.
Key for the apply-modes:
Available apply-modes are: (TFX)
The fields TCC_RGB and TCC_RGBA specify components that differ between the two different component modes.
Available component-modes are: (TCC)
tfx | - Which apply-mode to use | |
tcc | - Which component-mode to use |
void sceGuTexImage | ( | int | mipmap, | |
int | width, | |||
int | height, | |||
int | tbw, | |||
const void * | tbp | |||
) |
Set current texturemap.
Textures may reside in main RAM, but it has a huge speed-penalty. Swizzle textures to get maximum speed.
mipmap | - Mipmap level | |
width | - Width of texture (must be a power of 2) | |
height | - Height of texture (must be a power of 2) | |
tbw | - Texture Buffer Width (block-aligned) | |
tbp | - Texture buffer pointer (16 byte aligned) |
void sceGuTexLevelMode | ( | unsigned int | mode, | |
float | bias | |||
) |
Set texture-level mode (mipmapping).
Available modes are:
mode | - Which mode to use | |
bias | - Which mipmap bias to use |
void sceGuTexMapMode | ( | int | mode, | |
unsigned int | a1, | |||
unsigned int | a2 | |||
) |
Set the texture-mapping mode.
Available modes are:
mode | - Which mode to use | |
a1 | - Unknown | |
a2 | - Unknown |
void sceGuTexMode | ( | int | tpsm, | |
int | maxmips, | |||
int | a2, | |||
int | swizzle | |||
) |
Set texture-mode parameters.
Available texture-formats are:
tpsm | - Which texture format to use | |
maxmips | - Number of mipmaps to use (0-8) | |
a2 | - Unknown, set to 0 | |
swizzle | - GU_TRUE(1) to swizzle texture-reads |
void sceGuTexOffset | ( | float | u, | |
float | v | |||
) |
Set texture offset.
u | - Offset to add to the U coordinate | |
v | - Offset to add to the V coordinate |
void sceGuTexProjMapMode | ( | int | mode | ) |
Set texture projection-map mode.
Available modes are:
mode | - Which mode to use |
void sceGuTexScale | ( | float | u, | |
float | v | |||
) |
Set texture scale.
u | - Scalar to multiply U coordinate with | |
v | - Scalar to multiply V coordinate with |
void sceGuTexSlope | ( | float | slope | ) |
void sceGuTexSync | ( | ) |
Synchronize rendering pipeline with image upload.
This will stall the rendering pipeline until the current image upload initiated by sceGuCopyImage() has completed.
void sceGuTexWrap | ( | int | u, | |
int | v | |||
) |
Set if the texture should repeat or clamp.
Available modes are:
u | - Wrap-mode for the U direction | |
v | - Wrap-mode for the V direction |
void sceGuViewport | ( | int | cx, | |
int | cy, | |||
int | width, | |||
int | height | |||
) |
Set current viewport.
sceGuViewport(2048,2048,480,272);
cx | - Center for horizontal viewport | |
cy | - Center for vertical viewport | |
width | - Width of viewport | |
height | - Height of viewport |