OpenBarnyard
 
Loading...
Searching...
No Matches
TTexture_Rev.h
Go to the documentation of this file.
1#pragma once
2
3#include "Toshi/T2ResourceManager.h"
4
5
6
8
10{
11
12 enum GXTexFmt
13 {
14 I4 = 0x0,
15 I8 = 0x1,
16 IA4 = 0x2,
17 IA8 = 0x3,
18 RGB565 = 0x4,
19 RGB5A3 = 0x5,
20 RGBA8 = 0x6,
21 C4 = 0x8,
22 C8 = 0x9,
23 C14X2 = 0xA,
24 CMPR = 0xE,
25 };
26
27 enum GXTlutFmt
28 {
29 GX_TL_IA8 = 0x0,
30 GX_TL_RGB565 = 0x1,
31 GX_TL_RGB5A3 = 0x2,
32 };
33
34 enum GXTexWrapMode
35 {
36 GX_CLAMP,
37 GX_REPEAT,
38 GX_MIRROR
39 };
40
41 enum GXTexFilter
42 {
43 GX_NEAR,
44 GX_LINEAR,
45 GX_NEAR_MIP_NEAR,
46 GX_LIN_MIP_NEAR,
47 GX_NEAR_MIP_LIN,
48 GX_LIN_MIP_LIN
49 };
50
51 TCHAR* m_szFileName; //0x4
52 TINT m_iHash; //0x8
53 GXTexFmt m_texFmt; //0x38
54 GXTlutFmt m_tlutFmt; //0x3C
55 TUINT32 m_unk2; //0x40
56 uint8_t* m_pImageData; //0x44
57 TUINT32 m_iImageSize; //0x48
58 TUINT32 m_wrapS; //0x58
59 TUINT32 m_wrapT; //0x5C
60 TUINT32 m_unk3; //0x60
61 GXTexFilter m_minFilter; //0x64
62 GXTexFilter m_magFilter; //0x68
63 TUINT32 m_unk4; //0x70
64 TUINT32 m_width; //0x78
65 TUINT32 m_height; //0x7A
66 TUINT32 m_mipMaps; //0x80
67
68 //static t_CreateDestroyCallbk ResourceCallback;
69
70 TINT GetBitsPerTexel( GXTexFmt a_texFmt );
71 void CreateResource();
72
73 TINT ComputeHash( const TCHAR* str );
74 void CheckValid();
75 void InitTexObj();
76 void InitRuntime( GXTexFmt a_texFmt, GXTlutFmt a_tlutFmt, TUINT a_unk, TUINT a_unk2, TUINT a_unk3, TUINT a_unk4, void* a_unk5, void* a_unk6, TCHAR const* a_szFileName );
77
78 void GetPhysicalSize( TUINT32& width, TUINT32& height, TUINT32 bitsPerTexel );
79
80 void Swizzle();
81 void Swizzle32Bit();
82 void Swizzle16Bit();
83 void Swizzle8Bit();
84 void Swizzle4Bit();
85
86 //void CreateResource() { T2Resource::CreateResource(m_szFileName, this, ResourceCallback, this); }
87};
88
#define TOSHI_NAMESPACE_START
Definition Defines.h:47
#define TOSHI_NAMESPACE_END
Definition Defines.h:50
unsigned int TUINT
Definition Typedefs.h:8
char TCHAR
Definition Typedefs.h:20
uint32_t TUINT32
Definition Typedefs.h:13
int TINT
Definition Typedefs.h:7