mirror of
https://github.com/zeldaret/tp
synced 2026-05-28 08:25:48 -04:00
4dc0cd9d09
* Fix missing arg to JUT_ASSERT * Fix some MWCC version diff errors * Compile m_Do_ext, d_demo, actor_mng * Add VSCode task to quickly switch between versions * Unlink magLift for debug * Update the hash of the debug dol The old cbea5fa... hash here was for the dol generated by the alf2dol.py script, which produces incorrect alignment. The dol with the new hash can be obtained by using `dtk elf2dol` to convert the debug .alf file to a dol. The DOL now builds OK. * Fix all debug REL dtor splits All RELs now also build OK, meaning `ninja build/ShieldD/ok` now succeeds. * Add genMessage declarations to all HIO subclasses * Fixing more compilation errors * m_Do_mtx 100% on debug Cannot be linked due to weak function name mangling? * Improve various matches * Fix all remaining compilation errors * Fix new compilation errors from main * Fix retail regression * Link f_pc_profile_lst
48 lines
1.5 KiB
C
48 lines
1.5 KiB
C
#ifndef _DOLPHIN_GX_GXGEOMETRY_H_
|
|
#define _DOLPHIN_GX_GXGEOMETRY_H_
|
|
|
|
#include <dolphin/gx/GXEnum.h>
|
|
#include <dolphin/gx/GXStruct.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
void __GXCalculateVLim();
|
|
void GXSetVtxDesc(GXAttr attr, GXAttrType type);
|
|
void GXSetVtxDescv(const GXVtxDescList* attrPtr);
|
|
void GXClearVtxDesc(void);
|
|
void GXSetVtxAttrFmt(GXVtxFmt vtxfmt, GXAttr attr, GXCompCnt cnt, GXCompType type, u8 frac);
|
|
void GXSetVtxAttrFmtv(GXVtxFmt vtxfmt, const GXVtxAttrFmtList* list);
|
|
void GXSetArray(GXAttr attr, void* base_ptr, u8 stride);
|
|
void GXInvalidateVtxCache(void);
|
|
void GXSetTexCoordGen2(GXTexCoordID dst_coord, GXTexGenType func, GXTexGenSrc src_param, u32 mtx, GXBool normalize, u32 pt_texmtx);
|
|
void GXSetNumTexGens(u8 nTexGens);
|
|
|
|
static inline void GXSetTexCoordGen(GXTexCoordID dst_coord, GXTexGenType func, GXTexGenSrc src_param, u32 mtx) {
|
|
GXSetTexCoordGen2(dst_coord, func, src_param, mtx, GX_FALSE, GX_PTIDENTITY);
|
|
}
|
|
|
|
void GXBegin(GXPrimitive type, GXVtxFmt vtxfmt, u16 nverts);
|
|
|
|
static inline void GXEnd(void) {
|
|
#if DEBUG
|
|
extern GXBool __GXinBegin;
|
|
extern void OSPanic(const char* file, int line, const char* msg, ...);
|
|
if (!__GXinBegin) {
|
|
OSPanic(__FILE__, 118, "GXEnd: called without a GXBegin");
|
|
}
|
|
__GXinBegin = GX_FALSE;
|
|
#endif
|
|
}
|
|
|
|
void GXSetLineWidth(u8 width, GXTexOffset texOffsets);
|
|
void GXSetPointSize(u8 pointSize, GXTexOffset texOffsets);
|
|
void GXEnableTexOffsets(GXTexCoordID coord, u8 line_enable, u8 point_enable);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|