Mercurial > mm7
comparison ParticleEngine.h @ 0:9c0607679772
init
author | Ritor1 |
---|---|
date | Sat, 12 Jan 2013 09:45:18 +0600 |
parents | |
children | 8ab4484c22e0 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:9c0607679772 |
---|---|
1 #pragma once | |
2 #include "Render.h" | |
3 | |
4 | |
5 | |
6 /* 305 */ | |
7 #pragma pack(push, 1) | |
8 struct Particle_ | |
9 { | |
10 int bFree; | |
11 float x; | |
12 float y; | |
13 float z; | |
14 float flt_10; | |
15 float flt_14; | |
16 float flt_18; | |
17 unsigned int uDiffuse; | |
18 int timeToLive; | |
19 unsigned int uTextureID; | |
20 float flt_28; | |
21 int field_2C; | |
22 int field_30; | |
23 int field_34; | |
24 int field_38[12]; | |
25 }; | |
26 #pragma pack(pop) | |
27 | |
28 | |
29 /* 109 */ | |
30 #pragma pack(push, 1) | |
31 struct Particle | |
32 { | |
33 int uType; // 0x0000: empty | |
34 // 0x0100: color plane | |
35 // 0x0200: line | |
36 // 0x0400: bitmap plane | |
37 // 0x0800: sprite plane | |
38 float x; | |
39 float y; | |
40 float z; | |
41 float flt_10; | |
42 float flt_14; | |
43 float flt_18; | |
44 union | |
45 { | |
46 struct | |
47 { | |
48 unsigned char r, g, b, a; | |
49 }; | |
50 unsigned int uParticleColor; | |
51 }; | |
52 int timeToLive; | |
53 unsigned int uTextureID; | |
54 float flt_28; | |
55 float _x; | |
56 float _y; | |
57 float _z; | |
58 int field_38; | |
59 int _rotation; | |
60 int uScreenSpaceX; | |
61 int uScreenSpaceY; | |
62 int uScreenSpaceZ; // line end x | |
63 int uScreenSpaceW; // line end y | |
64 int sZValue; | |
65 int sZValue2; // line end z | |
66 int field_58; | |
67 float flt_5C; | |
68 float flt_60; | |
69 int uLightColor; | |
70 }; | |
71 #pragma pack(pop) | |
72 | |
73 | |
74 | |
75 /* 111 */ | |
76 #pragma pack(push, 1) | |
77 struct stru2_LineList | |
78 { | |
79 unsigned int uNumLines; | |
80 RenderVertexD3D3 pLineVertices[48]; | |
81 char field_604[60]; | |
82 }; | |
83 #pragma pack(pop) | |
84 | |
85 | |
86 | |
87 | |
88 | |
89 /* 110 */ | |
90 #pragma pack(push, 1) | |
91 struct ParticleEngine | |
92 { | |
93 ParticleEngine(); | |
94 | |
95 void ResetParticles(); | |
96 void AddParticle(Particle_ *a2); | |
97 void Draw(); | |
98 void UpdateParticles(); | |
99 bool ViewProject_TrueIfStillVisible(unsigned int uParticleID); | |
100 bool _48B5B3(unsigned int uID); | |
101 void DrawParticles_BLV(); | |
102 void DrawParticles_ODM(); | |
103 | |
104 Particle pParticles[500]; | |
105 stru2_LineList pLines; | |
106 char field_D160[4800]; | |
107 float field_E420; | |
108 int uStartParticle; | |
109 int uEndParticle; | |
110 int uTimeElapsed; | |
111 }; | |
112 #pragma pack(pop) |