Skin_Z - widberg/fmtk GitHub Wiki
Chum World SKIN
ImZouna Skin_Z
This has an associated Data Class.
struct Skin_Z : Object_Z {
PascalArray<crc32_t> meshCRC32s;
// equals skinSections.size
std::uint32_t zero0;
// always 0
std::uint32_t zero1;
// always 0
std::uint32_t zero2;
// always 0
std::uint32_t zero3;
// always 0
float oneAndAHalf;
// always 1.5
std::uint32_t bone_names_count;
// always 21
PascalArray<struct SkinSection {
PascalArray<struct SkinSubsection {
crc32_t animationNodeName0;
crc32_t animationNodeName1;
crc32_t animationNodeName2;
crc32_t animationNodeName3;
crc32_t bone_names[bone_names_count];
}> skinSubsections;
}> skinSections;
// skinSections.size = meshCRC32s.size
};
//------------------------------------------------
//--- 010 Editor v11.0.1 Binary Template
//------------------------------------------------
struct Skin_Z
{
uint32 meshCRC32Count;
uint32 meshCRC32s[meshCRC32Count];
uint32 u0;
uint32 u1;
uint32 u2;
uint32 u3;
float oneAndAHalf;
uint32 dataCount;
uint32 skinSectionCount;
struct SkinSection
{
uint32 skinSubsectionCount;
struct SkinSubsection
{
uint32 vertexGroupCRC32;
uint32 unknown0;
uint32 unknown1;
uint32 unknown2;
uint32 data[dataCount];
} skinSubsections[skinSubsectionCount];
} skinSections[skinSectionCount] <optimize=false>;
} skin;
//------------------------------------------------
//--- 010 Editor v11.0.1 Binary Template
//------------------------------------------------
struct Skin_Z_Alt
{
uint32 meshCRC32Count;
uint32 meshCRC32s[meshCRC32Count];
uint32 u0;
uint32 u1;
byte u2;
float oneAndAHalf;
uint32 dataCount;
uint32 skinSectionCount;
struct SkinSection
{
uint32 skinSubsectionCount;
struct SkinSubsection
{
uint32 vertexGroupCRC32;
uint32 unknown0;
uint32 unknown1;
uint32 unknown2;
uint32 data[dataCount];
} skinSubsections[skinSubsectionCount];
} skinSections[skinSectionCount] <optimize=false>;
} skin;