2
0
mirror of https://github.com/Laupetin/OpenAssetTools.git synced 2026-03-05 12:33:02 +00:00

chore: make sure TechsetCompilerT6 sets proper worldVertFormat

This commit is contained in:
Jan Laupetin
2026-01-22 21:43:06 +00:00
parent e61ec8582a
commit bf9beb1458
16 changed files with 255 additions and 17 deletions

View File

@@ -1425,10 +1425,26 @@ namespace IW3
TECHNIQUE_NONE = 0x24,
};
enum MaterialWorldVertexFormat : unsigned char
{
MTL_WORLDVERT_TEX_1_NRM_1 = 0x0,
MTL_WORLDVERT_TEX_2_NRM_1 = 0x1,
MTL_WORLDVERT_TEX_2_NRM_2 = 0x2,
MTL_WORLDVERT_TEX_3_NRM_1 = 0x3,
MTL_WORLDVERT_TEX_3_NRM_2 = 0x4,
MTL_WORLDVERT_TEX_3_NRM_3 = 0x5,
MTL_WORLDVERT_TEX_4_NRM_1 = 0x6,
MTL_WORLDVERT_TEX_4_NRM_2 = 0x7,
MTL_WORLDVERT_TEX_4_NRM_3 = 0x8,
MTL_WORLDVERT_TEX_5_NRM_1 = 0x9,
MTL_WORLDVERT_TEX_5_NRM_2 = 0xA,
MTL_WORLDVERT_TEX_5_NRM_3 = 0xB,
};
struct MaterialTechniqueSet
{
const char* name;
char worldVertFormat;
MaterialWorldVertexFormat worldVertFormat;
bool hasBeenUploaded;
char unused[1];
MaterialTechniqueSet* remappedTechniqueSet;

View File

@@ -1668,10 +1668,26 @@ namespace IW4
TECHNIQUE_COUNT
};
enum MaterialWorldVertexFormat : unsigned char
{
MTL_WORLDVERT_TEX_1_NRM_1 = 0x0,
MTL_WORLDVERT_TEX_2_NRM_1 = 0x1,
MTL_WORLDVERT_TEX_2_NRM_2 = 0x2,
MTL_WORLDVERT_TEX_3_NRM_1 = 0x3,
MTL_WORLDVERT_TEX_3_NRM_2 = 0x4,
MTL_WORLDVERT_TEX_3_NRM_3 = 0x5,
MTL_WORLDVERT_TEX_4_NRM_1 = 0x6,
MTL_WORLDVERT_TEX_4_NRM_2 = 0x7,
MTL_WORLDVERT_TEX_4_NRM_3 = 0x8,
MTL_WORLDVERT_TEX_5_NRM_1 = 0x9,
MTL_WORLDVERT_TEX_5_NRM_2 = 0xA,
MTL_WORLDVERT_TEX_5_NRM_3 = 0xB,
};
struct MaterialTechniqueSet
{
const char* name;
unsigned char worldVertFormat;
MaterialWorldVertexFormat worldVertFormat;
bool hasBeenUploaded;
unsigned char unused[1];
MaterialTechniqueSet* remappedTechniqueSet;

View File

@@ -1046,10 +1046,26 @@ namespace IW5
MaterialPass passArray[1];
};
enum MaterialWorldVertexFormat : unsigned char
{
MTL_WORLDVERT_TEX_1_NRM_1 = 0x0,
MTL_WORLDVERT_TEX_2_NRM_1 = 0x1,
MTL_WORLDVERT_TEX_2_NRM_2 = 0x2,
MTL_WORLDVERT_TEX_3_NRM_1 = 0x3,
MTL_WORLDVERT_TEX_3_NRM_2 = 0x4,
MTL_WORLDVERT_TEX_3_NRM_3 = 0x5,
MTL_WORLDVERT_TEX_4_NRM_1 = 0x6,
MTL_WORLDVERT_TEX_4_NRM_2 = 0x7,
MTL_WORLDVERT_TEX_4_NRM_3 = 0x8,
MTL_WORLDVERT_TEX_5_NRM_1 = 0x9,
MTL_WORLDVERT_TEX_5_NRM_2 = 0xA,
MTL_WORLDVERT_TEX_5_NRM_3 = 0xB,
};
struct MaterialTechniqueSet
{
const char* name;
unsigned char worldVertFormat;
MaterialWorldVertexFormat worldVertFormat;
unsigned char unused[2];
MaterialTechniqueSet* remappedTechniqueSet;
MaterialTechnique* techniques[54];

View File

@@ -1668,10 +1668,23 @@ namespace T5
TECHNIQUE_COUNT
};
enum MaterialWorldVertexFormat : unsigned char
{
MTL_WORLDVERT_TEX_1_NRM_1 = 0x0,
MTL_WORLDVERT_TEX_2_NRM_1 = 0x1,
MTL_WORLDVERT_TEX_2_NRM_2 = 0x2,
MTL_WORLDVERT_TEX_3_NRM_1 = 0x3,
MTL_WORLDVERT_TEX_3_NRM_2 = 0x4,
MTL_WORLDVERT_TEX_3_NRM_3 = 0x5,
MTL_WORLDVERT_TEX_4_NRM_1 = 0x6,
MTL_WORLDVERT_TEX_4_NRM_2 = 0x7,
MTL_WORLDVERT_TEX_4_NRM_3 = 0x8,
};
struct MaterialTechniqueSet
{
const char* name;
char worldVertFormat;
MaterialWorldVertexFormat worldVertFormat;
char unused[1];
uint16_t techsetFlags;
MaterialTechnique* techniques[130];

View File

@@ -770,10 +770,23 @@ namespace T6
TECHNIQUE_COUNT
};
enum MaterialWorldVertexFormat : unsigned char
{
MTL_WORLDVERT_TEX_1_NRM_1 = 0x0,
MTL_WORLDVERT_TEX_2_NRM_1 = 0x1,
MTL_WORLDVERT_TEX_2_NRM_2 = 0x2,
MTL_WORLDVERT_TEX_3_NRM_1 = 0x3,
MTL_WORLDVERT_TEX_3_NRM_2 = 0x4,
MTL_WORLDVERT_TEX_3_NRM_3 = 0x5,
MTL_WORLDVERT_TEX_4_NRM_1 = 0x6,
MTL_WORLDVERT_TEX_4_NRM_2 = 0x7,
MTL_WORLDVERT_TEX_4_NRM_3 = 0x8,
};
struct MaterialTechniqueSet
{
const char* name;
char worldVertFormat;
MaterialWorldVertexFormat worldVertFormat;
MaterialTechnique* techniques[36];
};