My Project
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 
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 
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 }
Definition: math.h:42
Definition: math.h:10
Definition: mdx.h:32
different physics engine has different winding order.
Definition: EventBinding.h:32
Definition: mdx.h:48
Definition: mdx.h:14
Definition: mdx.h:77
Definition: mdx.h:56
Definition: mdx.h:19