My Project
Client
trunk
ParaEngineClient
mdxfile
mdx.h
1
#pragma once
2
3
#include "mdxCustomVertex.h"
4
namespace
ParaEngine
5
{
6
//
7
// we have to inverse the byte order, intel platform
8
//
9
#define TAG(x) (DWORD)( (((DWORD)x&0x0000ff00)<<8)+(((DWORD)x&0x000000ff)<<24)+(((DWORD)x&0x00ff0000)>>8)+(((DWORD)x&0xff000000)>>24) )
10
11
//
12
// 3-short vertex indexing Triangle
13
//
14
struct
Triangle
15
{
16
short
ind[3];
17
};
18
19
struct
Layer1
20
{
21
int
mLayerSize;
// in Bytes
22
int
mBlendMode;
23
int
mUnk3;
24
int
mTexture;
25
int
mUnk5;
26
int
mUnk6;
27
float
mUnk7;
// alpha ?
28
BOOL mKMTA;
29
};
30
31
32
struct
SequenceName
33
{
34
char
mName[80];
35
int
mUnk1;
36
37
int
mUnk2;
38
float
mUnk3;
39
int
mUnk4;
40
float
mUnk5;
41
int
mUnk6;
42
float
mUnk7;
43
44
Vec3
mMins;
45
Vec3
mMaxs;
46
};
47
48
struct
Texture
49
{
50
DWORD mUnk1;
51
char
mName[MAX_PATH];
// 260
52
DWORD mUnk2;
53
};
54
55
56
struct
Camera
57
{
58
char
cName[80];
59
float
posx;
60
float
posy;
61
float
posz;
62
float
cFOV;
63
float
farClip;
64
float
nearClip;
65
float
targetx;
66
float
targety;
67
float
targetz;
68
};
69
70
71
//
72
// Auxiliary union TypePointer
73
//
74
// Used for better readability
75
//
76
77
union
TypePointer1
78
{
79
DWORD* dw;
80
char
* c;
81
void
* p;
82
float
* f;
83
Vec3
* v3;
84
Vec2
* v2;
85
Triangle
* tri;
86
SequenceName
* seq;
87
Texture
* tex;
88
Camera
* cam;
89
90
TypePointer1
(
void
* in) :p(in)
91
{
92
}
93
};
94
}
ParaEngine::Vec3
Definition:
math.h:42
ParaEngine::Vec2
Definition:
math.h:10
ParaEngine::SequenceName
Definition:
mdx.h:32
ParaEngine
different physics engine has different winding order.
Definition:
EventBinding.h:32
ParaEngine::Texture
Definition:
mdx.h:48
ParaEngine::Triangle
Definition:
mdx.h:14
ParaEngine::TypePointer1
Definition:
mdx.h:77
ParaEngine::Camera
Definition:
mdx.h:56
ParaEngine::Layer1
Definition:
mdx.h:19
Generated by
1.8.12