mirror of
https://github.com/patchzyy/wiicompiled
synced 2026-09-12 09:45:04 -04:00
50 lines
2.4 KiB
C
50 lines
2.4 KiB
C
#ifndef DOLPHIN_GXTEXTURE_H
|
|
#define DOLPHIN_GXTEXTURE_H
|
|
|
|
#include <dolphin/gx/GXEnum.h>
|
|
#include <dolphin/gx/GXStruct.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef GXTexRegion* (*GXTexRegionCallback)(const GXTexObj* obj, GXTexMapID id);
|
|
|
|
void GXInitTexObj(GXTexObj* obj, const void* data, u16 width, u16 height, GXTexFmt format, GXTexWrapMode wrapS,
|
|
GXTexWrapMode wrapT, GXBool mipmap);
|
|
void GXInitTexObjCI(GXTexObj* obj, const void* data, u16 width, u16 height, GXCITexFmt format, GXTexWrapMode wrapS,
|
|
GXTexWrapMode wrapT, GXBool mipmap, u32 tlut);
|
|
void GXInitTexObjData(GXTexObj* obj, const void* data);
|
|
void GXInitTexObjLOD(GXTexObj* obj, GXTexFilter min_filt, GXTexFilter mag_filt, f32 min_lod, f32 max_lod, f32 lod_bias,
|
|
GXBool bias_clamp, GXBool do_edge_lod, GXAnisotropy max_aniso);
|
|
void GXInitTexObjFilter(GXTexObj* obj, GXTexFilter min_filt, GXTexFilter mag_filt);
|
|
void GXInitTexObjMaxLOD(GXTexObj* obj, f32 max_lod);
|
|
void GXInitTexObjMinLOD(GXTexObj* obj, f32 min_lod);
|
|
void GXInitTexObjLODBias(GXTexObj* obj, f32 lod_bias);
|
|
void GXInitTexObjBiasClamp(GXTexObj* obj, GXBool bias_clamp);
|
|
void GXInitTexObjEdgeLOD(GXTexObj* obj, GXBool do_edge_lod);
|
|
void GXInitTexObjMaxAniso(GXTexObj* obj, GXAnisotropy max_aniso);
|
|
void GXInitTexObjUserData(GXTexObj* obj, void* user_data);
|
|
void* GXGetTexObjUserData(const GXTexObj* obj);
|
|
void GXInitTexObjTlut(GXTexObj* obj_, u32 tlut);
|
|
void GXLoadTexObj(GXTexObj* obj, GXTexMapID id);
|
|
u32 GXGetTexBufferSize(u16 width, u16 height, u32 format, GXBool mipmap, u8 max_lod);
|
|
void GXInvalidateTexAll();
|
|
void GXInitTexObjWrapMode(GXTexObj* obj, GXTexWrapMode s, GXTexWrapMode t);
|
|
void GXInitTlutObj(GXTlutObj* obj, const void* data, GXTlutFmt format, u16 entries);
|
|
void GXInitTlutObjData(GXTlutObj* obj, const void* data);
|
|
void GXLoadTlut(const GXTlutObj* obj, u32 idx);
|
|
void GXSetTexCoordScaleManually(GXTexCoordID coord, GXBool enable, u16 ss, u16 ts);
|
|
void GXSetTexCoordCylWrap(GXTexCoordID coord, GXBool s_enable, GXBool t_enable);
|
|
void GXSetTexCoordBias(GXTexCoordID coord, GXBool s_enable, GXBool t_enable);
|
|
void GXInitTexCacheRegion(GXTexRegion* region, GXBool is_32b_mipmap, u32 tmem_even, GXTexCacheSize size_even,
|
|
u32 tmem_odd, GXTexCacheSize size_odd);
|
|
GXTexRegionCallback GXSetTexRegionCallback(GXTexRegionCallback callback);
|
|
void GXInvalidateTexRegion(const GXTexRegion* region);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|