-
Notifications
You must be signed in to change notification settings - Fork 0
/
XB2.bt
65 lines (56 loc) · 1.32 KB
/
XB2.bt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
//------------------------------------------------
//--- 010 Editor v13.0.2 Binary Template
//
// File: XB2.bt
// Authors: WarpZephyr
// Version: 1.0.0
// Purpose: Murakumo: Renegade Mech Pursuit models.
// Category: Model
// File Mask:
// ID Bytes: 58 42 32 00
// History:
//------------------------------------------------
LittleEndian();
//------------------------------------------------
typedef struct
{
float x;
float y;
float z;
float w;
} Vector4 <read=ReadVector4>;
string ReadVector4(Vector4& vec)
{
return Str("<%7.2f, %7.2f, %7.2f, %7.2f>", vec.x, vec.y, vec.z, vec.w);
}
//------------------------------------------------
typedef struct
{
char magic[4]; Assert(magic == "XB2\0");
int version; // I think?
int size;
int unk0C;
int unk10;
int unk14;
int unk18;
int unk1C;
int indicesCount;
int verticesOffset;
int indicesOffset;
int unk2C;
int unk30;
int unk34;
int unk38;
int unk3C;
Vector4 boundingBoxMin; // I think?
int unk50;
int unk54;
int unk58;
int unk5C;
Vector4 boundingBoxMax; // I think?
} XB2 <bgcolor=cLtRed>;
//------------------------------------------------
local quad xbm_start <hidden=true> = FTell();
XB2 xbm;
FSeek(xbm_start + xbm.indicesOffset);
ushort indices[xbm.indicesCount];