ps2sdk  1.1
A collection of Open Source libraries used for developing applications on Sony's PlayStation 2® (PS2).
draw_primitives.h File Reference
#include <tamtypes.h>
+ Include dependency graph for draw_primitives.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  prim_t
 

Macros

#define PRIM_POINT   0x00
 
#define PRIM_LINE   0x01
 
#define PRIM_LINE_STRIP   0x02
 
#define PRIM_TRIANGLE   0x03
 
#define PRIM_TRIANGLE_STRIP   0x04
 
#define PRIM_TRIANGLE_FAN   0x05
 
#define PRIM_SPRITE   0x06
 
#define PRIM_SHADE_FLAT   0
 
#define PRIM_SHADE_GOURAUD   1
 
#define PRIM_MAP_ST   0
 
#define PRIM_MAP_UV   1
 
#define PRIM_UNFIXED   0
 
#define PRIM_FIXED   1
 
#define PRIM_OVERRIDE_ENABLE   0
 
#define PRIM_OVERRIDE_DISABLE   1
 

Functions

qword_tdraw_primitive_xyoffset (qword_t *q, int context, float x, float y)
 
qword_tdraw_primitive_override (qword_t *q, int mode)
 
qword_tdraw_primitive_override_setting (qword_t *q, int context, prim_t *prim)
 

Detailed Description

Draw library primitive functions

Definition in file draw_primitives.h.

Macro Definition Documentation

◆ PRIM_FIXED

#define PRIM_FIXED   1

Definition at line 30 of file draw_primitives.h.

◆ PRIM_LINE

#define PRIM_LINE   0x01

Definition at line 13 of file draw_primitives.h.

◆ PRIM_LINE_STRIP

#define PRIM_LINE_STRIP   0x02

Definition at line 14 of file draw_primitives.h.

◆ PRIM_MAP_ST

#define PRIM_MAP_ST   0

Texture Mapping Coordinates

Definition at line 25 of file draw_primitives.h.

◆ PRIM_MAP_UV

#define PRIM_MAP_UV   1

Definition at line 26 of file draw_primitives.h.

◆ PRIM_OVERRIDE_DISABLE

#define PRIM_OVERRIDE_DISABLE   1

Definition at line 34 of file draw_primitives.h.

◆ PRIM_OVERRIDE_ENABLE

#define PRIM_OVERRIDE_ENABLE   0

Primitive Override Control

Definition at line 33 of file draw_primitives.h.

◆ PRIM_POINT

#define PRIM_POINT   0x00

Types

Definition at line 12 of file draw_primitives.h.

◆ PRIM_SHADE_FLAT

#define PRIM_SHADE_FLAT   0

Shading

Definition at line 21 of file draw_primitives.h.

◆ PRIM_SHADE_GOURAUD

#define PRIM_SHADE_GOURAUD   1

Definition at line 22 of file draw_primitives.h.

◆ PRIM_SPRITE

#define PRIM_SPRITE   0x06

Definition at line 18 of file draw_primitives.h.

◆ PRIM_TRIANGLE

#define PRIM_TRIANGLE   0x03

Definition at line 15 of file draw_primitives.h.

◆ PRIM_TRIANGLE_FAN

#define PRIM_TRIANGLE_FAN   0x05

Definition at line 17 of file draw_primitives.h.

◆ PRIM_TRIANGLE_STRIP

#define PRIM_TRIANGLE_STRIP   0x04

Definition at line 16 of file draw_primitives.h.

◆ PRIM_UNFIXED

#define PRIM_UNFIXED   0

Fixed Color Value

Definition at line 29 of file draw_primitives.h.

Function Documentation

◆ draw_primitive_override()

qword_t* draw_primitive_override ( qword_t q,
int  mode 
)

Primitive Control

Definition at line 202 of file draw_environment.c.

203 {
204 
206  q++;
207 
209  q++;
210 
211  return q;
212 
213 }
#define PACK_GIFTAG(Q, D0, D1)
Definition: gif_tags.h:76
#define GIF_SET_TAG(NLOOP, EOP, PRE, PRIM, FLG, NREG)
Definition: gif_tags.h:80
#define GIF_REG_AD
Definition: gif_tags.h:72
#define GIF_FLG_PACKED
Definition: gif_tags.h:35
#define GS_SET_PRMODECONT(CTRL)
Definition: gs_gp.h:250
#define GS_REG_PRMODECONT
Definition: gs_gp.h:61
s32 mode
Definition: rpc_client.c:15

References GIF_FLG_PACKED, GIF_REG_AD, GIF_SET_TAG, GS_REG_PRMODECONT, GS_SET_PRMODECONT, mode, and PACK_GIFTAG.

◆ draw_primitive_override_setting()

qword_t* draw_primitive_override_setting ( qword_t q,
int  context,
prim_t prim 
)

Overridden Primitive Attributes

Definition at line 215 of file draw_environment.c.

216 {
217 
219  q++;
220 
224  q++;
225 
226  return q;
227 
228 }
prim_t prim
Definition: main.c:74
u8 context
Definition: main.c:71
#define GS_SET_PRMODE(IIP, TME, FGE, ABE, AA1, FST, CTXT, FIX)
Definition: gs_gp.h:244
#define GS_REG_PRMODE
Definition: gs_gp.h:63
unsigned char blending
unsigned char antialiasing
unsigned char colorfix
unsigned char shading
unsigned char fogging
unsigned char mapping_type
unsigned char mapping

References prim_t::antialiasing, prim_t::blending, prim_t::colorfix, context, prim_t::fogging, GIF_FLG_PACKED, GIF_REG_AD, GIF_SET_TAG, GS_REG_PRMODE, GS_SET_PRMODE, prim_t::mapping, prim_t::mapping_type, PACK_GIFTAG, prim, and prim_t::shading.

◆ draw_primitive_xyoffset()

qword_t* draw_primitive_xyoffset ( qword_t q,
int  context,
float  x,
float  y 
)

Primitive Coordinate System offset

Definition at line 189 of file draw_environment.c.

190 {
191 
193  q++;
194 
195  PACK_GIFTAG(q, GS_SET_XYOFFSET((int)(x*16.0f),(int)(y*16.0f)), GS_REG_XYOFFSET + context);
196  q++;
197 
198  return q;
199 
200 }
#define GS_SET_XYOFFSET(X, Y)
Definition: gs_gp.h:323
#define GS_REG_XYOFFSET
Definition: gs_gp.h:55
s32 x
Definition: libmouse.c:34
s32 y
Definition: libmouse.c:34

References context, GIF_FLG_PACKED, GIF_REG_AD, GIF_SET_TAG, GS_REG_XYOFFSET, GS_SET_XYOFFSET, PACK_GIFTAG, x, and y.

Referenced by init_drawing_environment().