feat(profile): update 3.3.5a profile

This commit is contained in:
phaneron 2024-11-27 01:59:15 -05:00
parent 9053d61b6b
commit e1bab2b375
186 changed files with 1204 additions and 43942 deletions

View file

@ -0,0 +1,70 @@
#ifndef TEXTURE_BLP_H
#define TEXTURE_BLP_H
#include "system/types.h"
#include "storm/file.h"
#include "gx/types.h"
DECLARE_HANDLE(HCOLORMAP);
DECLARE_ENUM(MipMapAlgorithm);
DECLARE_STRUCT(CBLPFile);
DECLARE_STRUCT(BlpPalPixel);
DECLARE_STRUCT(BLPHeader);
DECLARE_STRUCT(BLPJPEGHeader);
enum MipMapAlgorithm {
MMA_BOX = 0x0,
MMA_CUBIC = 0x1,
MMA_FULLDFT = 0x2,
MMA_KAISER = 0x3,
MMA_LINEARLIGHTKAISER = 0x4
};
struct BlpPalPixel {
uint8_t b;
uint8_t g;
uint8_t r;
uint8_t pad;
};
struct BLPJPEGHeader {
uint32_t headerSize;
uint8_t headerData[1020];
};
struct BLPHeader {
uint32_t magic;
uint32_t formatVersion;
uint8_t colorEncoding;
uint8_t alphaSize;
uint8_t preferredFormat;
uint8_t hasMips;
uint32_t width;
uint32_t height;
uint32_t mipOffsets[16];
uint32_t mipSizes[16];
union {
BlpPalPixel palette[256];
BLPJPEGHeader jpeg;
} extended;
};
struct CBLPFile {
MipBits* m_images;
BLPHeader m_header;
void* m_inMemoryImage;
int32_t m_inMemoryNeedsFree;
uint32_t m_numLevels;
uint32_t m_quality;
HCOLORMAP m_colorMapping;
MipMapAlgorithm m_mipMapAlgorithm;
uint8_t* m_lockDecompMem;
};
#endif

View file

@ -0,0 +1,36 @@
#ifndef TEXTURE_TEXTURE_H
#define TEXTURE_TEXTURE_H
#include "common/handle.h"
#include "common/status.h"
#include "gx/types.h"
#include "gx/texture.h"
#include "async/object.h"
DECLARE_STRUCT(CTexture);
// struct CTexture : CHandleObject
struct CTexture {
CHandleObject b_base;
uint32_t dword8[6];
CGxTexFlags unkTexFlags1;
uint32_t dword10;
uint16_t flags;
int8_t bestMip;
int8_t alphaBits;
CStatus loadStatus;
CAsyncObject* asyncObject;
CGxTex* gxTex;
int32_t gxTexTarget;
uint16_t gxWidth;
uint16_t gxHeight;
EGxTexFormat gxTexFormat;
EGxTexFormat dataFormat;
CGxTexFlags gxTexFlags;
void* atlas;
uint32_t atlasBlockIndex;
uint32_t dword50[2];
char filename[260];
};
#endif

View file

@ -0,0 +1,66 @@
#ifndef TEXTURE_TGA_H
#define TEXTURE_TGA_H
#include "system/types.h"
#include "storm/file.h"
DECLARE_STRUCT(TGAFooter);
DECLARE_STRUCT(TGAHeader);
DECLARE_STRUCT(TGA32Pixel);
DECLARE_STRUCT(TGAImageDesc);
DECLARE_STRUCT(CTgaFile);
struct TGAFooter {
uint32_t dwExtensionOffset;
uint32_t dwDeveloperOffset;
uint8_t szSigniture[18];
};
#pragma pack(push, 1)
struct TGAImageDesc {
uint8_t bAlphaChannelBits : 4;
uint8_t bLeftRightOrder : 1;
uint8_t bTopBottomOrder : 1;
uint8_t bReserved : 2;
};
struct TGAHeader {
uint8_t bIDLength;
uint8_t bColorMapType;
uint8_t bImageType;
// byte packed
uint16_t wColorMapStartIndex;
uint16_t wColorMapEntries;
uint8_t bColorMapEntrySize;
uint16_t wXOrigin;
uint16_t wYOrigin;
uint16_t wWidth;
uint16_t wHeight;
uint8_t bPixelDepth;
union {
uint8_t bImageDescriptor;
TGAImageDesc desc;
};
};
#pragma pack(pop)
struct TGA32Pixel {
uint8_t b;
uint8_t g;
uint8_t r;
uint8_t a;
};
struct CTgaFile {
SFile* m_file;
uint8_t* m_image;
TGAHeader m_header;
uint8_t* m_addlHeaderData;
TGAFooter m_footer;
uint32_t m_imageBytes;
uint8_t* m_colorMap;
};
#endif