// enum TexEnvFlags
// {
// Alpha = 0x20000,
// Software = 0x40000,
// MipMap = 0x80000
// }
struct gfxBitmap
{
void *lpAlloc;
short Width;
short Height;
IDirectDrawSurface7 *DDrawSurface;
unsigned int RefCount;
gfxBitmap *PreviousBitmap;
};
struct gfxImage
{
enum gfxImageFormat
{
ARGB_8888 = 1,
RGB_0888 = 2,
ARGB_1555 = 3,
RGB_0555 = 4, // 555 or 565
Palette8 = 5,
Palette4 = 6,
};
short Width;
short Height;
short Size;
short Type; // gfxImageFormat
unsigned int TexEnv;
void *lpImage;
unsigned int *Array14;
unsigned int RefCount;
gfxImage *PreviousImage;
unsigned int dword20;
unsigned int dword24;
};
struct gfxTexture
{
unsigned int VglBindIndex;
const char *Name;
unsigned short Width;
unsigned short Height;
unsigned int TexEnv;
unsigned int DominantColor;
IDirectDrawSurface7 *DirectDrawSurface;
IDirectDrawPalette *DirectDrawPalette;
gfxTextureCacheEntry *CacheEntry;
gfxTextureCachePool *CachePool;
unsigned int RefCount;
gfxTexture *PrevLOD;
gfxTexture *NextLOD;
unsigned char MaxLODCount;
unsigned char LODCount;
};
struct gfxTextureCachePool
{
unsigned short Width;
unsigned short Height;
unsigned short MipMapCount;
unsigned short TextureCount;
unsigned short EntryCount;
unsigned short HasNoSurface;
gfxTextureCacheEntry *FirstEntry;
gfxTextureCachePool *PrevPool;
DDPIXELFORMAT PixelFormat;
};
struct gfxTextureCacheEntry
{
gfxTexture *GfxTexture;
IDirectDrawSurface7 *DirectDrawSurface;
unsigned int LastAccessTime;
gfxTextureCacheEntry *PrevEntry;
};
Comments
0 B
|👍
/👎