mirror of
https://github.com/PrimeDecomp/PrimeRemasterStructs.git
synced 2026-07-12 18:18:58 -07:00
Initial work on MP4 models (incompatible with MPR due to laziness)
This commit is contained in:
@@ -35,7 +35,7 @@ typedef struct CFont {
|
||||
GUID id;
|
||||
} Guids[guidCount];
|
||||
|
||||
uint32 unknowValue;
|
||||
// uint32 unknowValue;
|
||||
|
||||
uint32 floatCount01;
|
||||
float floatValues01[floatCount01];
|
||||
@@ -58,4 +58,4 @@ typedef struct CFont {
|
||||
Kerning kernings[kerningCount];
|
||||
} key_value_vector_node[glyphCount] <optimize = false>;
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
+16
-9
@@ -30,8 +30,8 @@ struct SModelWindData {
|
||||
CVector3f WindMax;
|
||||
float unk;
|
||||
} windset[windSets];
|
||||
uint32 unkD;
|
||||
byte unkData[unkD];
|
||||
// uint32 unkD;
|
||||
// byte unkData[unkD];
|
||||
};
|
||||
|
||||
struct SCausticData {
|
||||
@@ -329,6 +329,8 @@ typedef struct(int readerVersion, int writerVersion) {
|
||||
CLayeredTextureData data;
|
||||
} else if (IsTextureMaterialDataId(dataId)) {
|
||||
// TODO
|
||||
} else if (dataId == DATA_ID_XCH0) {
|
||||
byte unk[56];
|
||||
}
|
||||
}
|
||||
break;
|
||||
@@ -498,11 +500,12 @@ struct SVertexDataComponent {
|
||||
};
|
||||
|
||||
struct SVertexBufferInfo {
|
||||
uint32 vertexCount;
|
||||
// uint32 vertexCount;
|
||||
uint32 numAttributes;
|
||||
SVertexDataComponent component[numAttributes];
|
||||
if (!isDKCTF)
|
||||
{
|
||||
uint32 unk2;
|
||||
byte unk;
|
||||
}
|
||||
};
|
||||
@@ -565,12 +568,15 @@ typedef struct(int readerVersion, int writerVersion) {
|
||||
case "MESH":
|
||||
SMeshLoadInformation loadInformation;
|
||||
break;
|
||||
case "VBUF":
|
||||
CGraphicsVertexBufferToken data;
|
||||
break;
|
||||
case "IBUF":
|
||||
CGraphicsIndexBufferToken data;
|
||||
break;
|
||||
case "VBUF":
|
||||
CGraphicsVertexBufferToken data;
|
||||
break;
|
||||
case "IBUF":
|
||||
CGraphicsIndexBufferToken data;
|
||||
break;
|
||||
case "GPU ":
|
||||
byte data[chunk.size];
|
||||
break;
|
||||
}
|
||||
FSeek(pos + chunk.size);
|
||||
} ModelChunk <name=(Str("%s chunk", chunk.id))>;
|
||||
@@ -596,6 +602,7 @@ struct SModelBufferInfo
|
||||
uint32 offset <format=hex>;
|
||||
uint32 size <format=hex>;
|
||||
uint32 destSize <format=hex>;
|
||||
uint32 unk <format=hex>;
|
||||
};
|
||||
|
||||
// NModelFormat::SMetaData
|
||||
|
||||
+49
-10
@@ -39,9 +39,40 @@ struct ModConVisualData {
|
||||
} objectXf[objectTransformCount];
|
||||
}
|
||||
|
||||
uint32 byteCount;
|
||||
if (byteCount > 0) {
|
||||
byte bytes[byteCount];
|
||||
uint32 unkCount;
|
||||
if (unkCount > 0) {
|
||||
// ?
|
||||
struct {
|
||||
float x;
|
||||
float y;
|
||||
uint32 z;
|
||||
uint32 w[z];
|
||||
} unk[unkCount] <optimize = false>;
|
||||
}
|
||||
|
||||
uint32 byteCount2;
|
||||
if (byteCount2 > 0) {
|
||||
byte bytes2[byteCount2];
|
||||
}
|
||||
|
||||
uint32 byteCount3;
|
||||
if (byteCount3 > 0) {
|
||||
byte bytes3[byteCount3];
|
||||
}
|
||||
|
||||
uint32 byteCount4;
|
||||
if (byteCount4 > 0) {
|
||||
byte bytes4[byteCount4];
|
||||
}
|
||||
|
||||
uint32 byteCount5;
|
||||
if (byteCount5 > 0) {
|
||||
byte bytes5[byteCount5];
|
||||
}
|
||||
|
||||
uint32 byteCount6;
|
||||
if (byteCount6 > 0) {
|
||||
byte bytes6[byteCount6];
|
||||
}
|
||||
|
||||
uint32 shortCount;
|
||||
@@ -54,16 +85,24 @@ struct ModConVisualData {
|
||||
uint16 shorts2[shortCount2];
|
||||
}
|
||||
|
||||
uint32 byteCount2;
|
||||
if (byteCount2 > 0) {
|
||||
byte bytes2[byteCount2];
|
||||
uint32 byteCount7;
|
||||
if (byteCount7 > 0) {
|
||||
byte bytes7[byteCount7];
|
||||
}
|
||||
|
||||
uint32 byteCount3;
|
||||
if (byteCount3 > 0) {
|
||||
byte bytes3[byteCount3];
|
||||
uint32 byteCount8;
|
||||
if (byteCount8 > 0) {
|
||||
byte bytes8[byteCount8];
|
||||
}
|
||||
|
||||
uint32 dwordCount;
|
||||
if (dwordCount > 0) {
|
||||
uint32 dwords[dwordCount];
|
||||
}
|
||||
|
||||
uint32 unkCount1;
|
||||
uint32 unkCount2;
|
||||
|
||||
uint32 atlasLookupCount1;
|
||||
if (atlasLookupCount1 > 0) {
|
||||
SAtlasLookup atlasLookup1[atlasLookupCount1];
|
||||
@@ -155,7 +194,7 @@ typedef struct {
|
||||
|
||||
struct CModConData(uint64 size) {
|
||||
local uint64 start <hidden = true> = FTell();
|
||||
while (FTell() < start + size) {
|
||||
while (FTell() + 4 < start + size) {
|
||||
ModConChunk data;
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user