pokeplatinum/include/easy3d.h
2024-06-29 13:23:45 +02:00

20 lines
1.1 KiB
C

#ifndef POKEPLATINUM_EASY3D_H
#define POKEPLATINUM_EASY3D_H
#include <nitro/fx/fx.h>
#include <nnsys.h>
void Easy3D_LoadModelFromPath(const u8 heapID, const char *path, NNSG3dResMdl **outModel, NNSG3dResFileHeader **outResource);
void Easy3D_LoadModelFromResource(NNSG3dResMdl **outModel, NNSG3dResFileHeader **resource);
void Easy3D_InitRenderObjFromPath(const u8 heapID, const char *path, NNSG3dRenderObj *obj, NNSG3dResMdl **outModel, NNSG3dResFileHeader **outResource);
void Easy3D_InitRenderObjFromResource(NNSG3dRenderObj *renderObj, NNSG3dResMdl **model, NNSG3dResFileHeader **resource);
BOOL Easy3D_IsTextureUploadedToVRAM(NNSG3dResTex *texture);
void Easy3D_DrawRenderObj(NNSG3dRenderObj *renderObj, const VecFx32 *pos, const MtxFx33 *rot, const VecFx32 *scale);
void Easy3D_DrawRenderObjSimple(NNSG3dRenderObj *renderObj, const VecFx32 *pos, const MtxFx33 *rot, const VecFx32 *scale);
void Easy3D_Init(const u8 heapID);
void Easy3D_Shutdown(void);
BOOL Easy3D_BindTextureToResource(void *resource, NNSG3dResTex *texture);
BOOL Easy3D_UploadTextureToVRAM(NNSG3dResTex *texture);
#endif // POKEPLATINUM_EASY3D_H