SSBM Decomp
Loading...
Searching...
No Matches
GXGeometry.h
Go to the documentation of this file.
1#ifndef _DOLPHIN_GX_GXGEOMETRY_H_
2#define _DOLPHIN_GX_GXGEOMETRY_H_
3
4#include <dolphin/gx/GXEnum.h>
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11#define GXSETARRAY(attr, data, size, stride, le) GXSetArray((attr), (data), (stride))
12
14void GXSetVtxDescv(const GXVtxDescList *attrPtr);
15void GXClearVtxDesc(void);
16void GXSetVtxAttrFmt(GXVtxFmt vtxfmt, GXAttr attr, GXCompCnt cnt, GXCompType type, u8 frac);
17void GXSetVtxAttrFmtv(GXVtxFmt vtxfmt, const GXVtxAttrFmtList *list);
18void GXSetArray(GXAttr attr, const void *base_ptr, u8 stride);
20void GXSetTexCoordGen2(GXTexCoordID dst_coord, GXTexGenType func, GXTexGenSrc src_param, u32 mtx, GXBool normalize, u32 pt_texmtx);
21void GXSetNumTexGens(u8 nTexGens);
22
23static inline void GXSetTexCoordGen(GXTexCoordID dst_coord, GXTexGenType func,
24 GXTexGenSrc src_param, u32 mtx)
25{
26 GXSetTexCoordGen2(dst_coord, func, src_param, mtx, GX_FALSE, GX_PTIDENTITY);
27}
28
29void GXBegin(GXPrimitive type, GXVtxFmt vtxfmt, u16 nverts);
30static inline void GXEnd(void)
31{
32#if DEBUG
33 extern GXBool __GXinBegin;
34 extern void OSPanic(char *file, int line, char *msg, ...);
35 if (!__GXinBegin) {
36 OSPanic(__FILE__, 0x6D, "GXEnd: called without a GXBegin");
37 }
38 __GXinBegin = GX_FALSE;
39#endif
40}
41void GXSetLineWidth(u8 width, GXTexOffset texOffsets);
42void GXSetPointSize(u8 pointSize, GXTexOffset texOffsets);
43void GXEnableTexOffsets(GXTexCoordID coord, u8 line_enable, u8 point_enable);
44
45#ifdef __cplusplus
46}
47#endif
48
49#endif
GXTexOffset
Definition GXEnum.h:487
GXAttrType
Definition GXEnum.h:125
GXCompType
Definition GXEnum.h:404
GXTexGenSrc
Definition GXEnum.h:323
GXCompCnt
Definition GXEnum.h:391
GXAttr
Definition GXEnum.h:93
#define GX_FALSE
Definition GXEnum.h:8
@ GX_PTIDENTITY
Definition GXEnum.h:440
GXTexCoordID
Definition GXEnum.h:215
GXVtxFmt
Definition GXEnum.h:80
GXTexGenType
Definition GXEnum.h:265
u8 GXBool
Definition GXEnum.h:6
GXPrimitive
Definition GXEnum.h:69
void GXSetVtxDescv(const GXVtxDescList *attrPtr)
void GXClearVtxDesc(void)
void GXInvalidateVtxCache(void)
void GXSetTexCoordGen2(GXTexCoordID dst_coord, GXTexGenType func, GXTexGenSrc src_param, u32 mtx, GXBool normalize, u32 pt_texmtx)
void GXSetVtxAttrFmtv(GXVtxFmt vtxfmt, const GXVtxAttrFmtList *list)
void GXSetArray(GXAttr attr, const void *base_ptr, u8 stride)
void GXSetVtxAttrFmt(GXVtxFmt vtxfmt, GXAttr attr, GXCompCnt cnt, GXCompType type, u8 frac)
void GXSetLineWidth(u8 width, GXTexOffset texOffsets)
static void GXEnd(void)
Definition GXGeometry.h:30
void GXSetPointSize(u8 pointSize, GXTexOffset texOffsets)
void GXSetNumTexGens(u8 nTexGens)
void GXBegin(GXPrimitive type, GXVtxFmt vtxfmt, u16 nverts)
static void GXSetTexCoordGen(GXTexCoordID dst_coord, GXTexGenType func, GXTexGenSrc src_param, u32 mtx)
Definition GXGeometry.h:23
void GXEnableTexOffsets(GXTexCoordID coord, u8 line_enable, u8 point_enable)
void GXSetVtxDesc(GXAttr attr, GXAttrType type)
unsigned long u32
Definition types.h:9
unsigned short int u16
Definition types.h:7
unsigned char u8
Definition types.h:5
Mtx mtx
Definition ftparts.static.h:8
DOLPHIN_ATTRIBUTE_NORETURN void OSPanic(char *file, int line, char *msg,...)
void(* func)(void)
Definition state.c:131
Definition GXStruct.h:73
Definition GXStruct.h:68