1#ifndef RVL_SDK_GX_ATTR_H
2#define RVL_SDK_GX_ATTR_H
5#include <revolution/GX/GXTypes.h>
22void GXSetVtxDesc(GXAttr name, GXAttrType type);
23void GXSetVtxDescv(
const GXVtxDescList* list);
24void GXGetVtxDesc(GXAttr name, GXAttrType* type);
25void GXGetVtxDescv(GXVtxDescList* list);
26void GXClearVtxDesc(
void);
27void GXSetVtxAttrFmt(GXVtxFmt fmt, GXAttr attr, GXCompCnt compCnt,
28 GXCompType compType, u8 shift);
31#ifdef GXATTR_MATCH_HACK
32void GXSetVtxAttrFmtv(s16 fmt,
const GXVtxAttrFmtList* list);
34void GXSetVtxAttrFmtv(GXVtxFmt fmt,
const GXVtxAttrFmtList* list);
37void GXGetVtxAttrFmt(GXVtxFmt fmt, GXAttr attr, GXCompCnt* compCnt,
38 GXCompType* compType, u8* shift);
39void GXGetVtxAttrFmtv(GXVtxFmt fmt, GXVtxAttrFmtList* list);
40void GXSetArray(GXAttr attr,
const void* base, u8 stride);
41void GXInvalidateVtxCache(
void);
42void GXSetTexCoordGen2(GXTexCoordID
id, GXTexGenType type, GXTexGenSrc src,
43 u32 texMtxIdx, GXBool normalize, u32 dualTexMtxIdx);
44void GXSetNumTexGens(u8 num);
47void __GXCalculateVLim(
void);
50static void GXSetTexCoordGen(GXTexCoordID
id, GXTexGenType type,
51 GXTexGenSrc src, u32 texMtxIdx) {
52 GXSetTexCoordGen2(
id, type, src, texMtxIdx, FALSE, GX_PTIDENTITY);