30 #include "object/interface/trace_drawing_object.h" 44 const short MAXPARTICULE = 500;
45 const short MAXPARTITYPE = 6;
46 const short MAXTRACK = 100;
47 const short MAXTRACKLEN = 10;
48 const short MAXPARTIFOG = 100;
49 const short MAXWHEELTRACE = 1000;
51 const short SH_WORLD = 0;
52 const short SH_FRONT = 1;
53 const short SH_INTERFACE = 2;
54 const short SH_MAX = 3;
170 ParticlePhase phase = {};
173 float duration = 0.0f;
177 float windSensitivity = 0.0f;
182 float intensity = 0.0f;
186 float phaseTime = 0.0f;
187 float testTime = 0.0f;
199 char drawParticle = 0;
202 float intensity = 0.0f;
207 float len[MAXTRACKLEN] = {};
212 TraceColor color = TraceColor::Black;
230 void SetDevice(
CDevice* device);
233 void FlushParticle();
236 void FlushParticle(
int sheet);
240 ParticleType type,
float duration = 1.0f,
float mass = 0.0f,
241 float windSensitivity = 1.0f,
int sheet = 0);
245 ParticleType type,
float duration = 1.0f,
float mass = 0.0f,
246 float windSensitivity = 1.0f,
int sheet = 0);
250 float duration = 1.0f,
float mass = 0.0f,
float weight = 0.0f,
251 float windSensitivity = 1.0f,
int sheet = 0);
255 float duration = 1.0f,
int sheet = 0);
259 float duration = 1.0f,
float mass = 0.0f,
float length = 10.0f,
float width = 1.0f);
268 void DeleteParticle(
int channel);
270 void SetObjectLink(
int channel,
CObject *
object);
272 void SetObjectFather(
int channel,
CObject *
object);
275 void SetZoom(
int channel,
float zoom);
276 void SetAngle(
int channel,
float angle);
277 void SetIntensity(
int channel,
float intensity);
279 void SetPhase(
int channel, ParticlePhase phase,
float duration);
288 void SetFrameUpdate(
int sheet,
bool update);
290 void FrameParticle(
float rTime);
292 void DrawParticle(
int sheet);
295 bool ParticleExists(
int channel);
299 void DeleteRank(
int rank);
305 void GetRankFromChannel(
int &channel);
307 void DrawParticleTriangle(
int i);
309 void DrawParticleNorm(
int i);
311 void DrawParticleFlat(
int i);
313 void DrawParticleFog(
int i);
315 void DrawParticleRay(
int i);
317 void DrawParticleSphere(
int i);
319 void DrawParticleCylinder(
int i);
321 void DrawParticleText(
int i);
323 void DrawParticleWheel(
int i);
331 bool TrackMove(
int i,
Math::Vector pos,
float progress);
339 CWater* m_water =
nullptr;
343 Particle m_particle[MAXPARTICULE*MAXPARTITYPE];
345 Track m_track[MAXTRACK];
346 int m_wheelTraceTotal = 0;
347 int m_wheelTraceIndex = 0;
349 int m_totalInterface[MAXPARTITYPE][SH_MAX] = {};
350 bool m_frameUpdate[SH_MAX] = {};
352 int m_fog[MAXPARTIFOG] = {};
353 int m_uniqueStamp = 0;
354 int m_exploGunCounter = 0;
355 float m_lastTimeGunDel = 0.0f;
356 float m_absTime = 0.0f;
< gravity root smoke
Definition: particle.h:138
< drag 12 (TODO: unused?)
Definition: particle.h:126
< drag 5
Definition: particle.h:119
< black smoke
Definition: particle.h:87
< reflection
Definition: particle.h:69
< red robot lights
Definition: particle.h:77
< gas from the reactor
Definition: particle.h:72
< fog 4
Definition: particle.h:145
ParticleType
Definition: particle.h:63
Main graphics engine - CEngine class.
< drag 10
Definition: particle.h:124
< drag 1
Definition: particle.h:115
< dust after fall
Definition: particle.h:71
< Robby says blah
Definition: particle.h:103
< Robby's reactor
Definition: particle.h:101
< shows a place
Definition: particle.h:134
< bullet destroyed by shield
Definition: particle.h:113
< black smoke
Definition: particle.h:86
< red reflection
Definition: particle.h:128
< bullet 4 (orgaball)
Definition: particle.h:81
< drop of water
Definition: particle.h:152
< drop
Definition: particle.h:140
< human blood
Definition: particle.h:89
< drag 9
Definition: particle.h:123
< Robby says yes
Definition: particle.h:104
unsigned short uniqueStamp
unique marker added to particle channel ID to make sure this is still the same particle ...
Definition: particle.h:167
< AlienQueen blood
Definition: particle.h:90
< the engine exhaust gas
Definition: particle.h:68
< lightning recharging battery
Definition: particle.h:70
< shows if the ground is flat
Definition: particle.h:136
< brilliance 2 (yellow)
Definition: particle.h:130
< ray 3 (ExchangePost)
Definition: particle.h:95
< drag 6
Definition: particle.h:120
< inflamed tail (TODO: unused?)
Definition: particle.h:83
< brilliance 1 (orange)
Definition: particle.h:129
< shows the limits 1
Definition: particle.h:149
< fog 6
Definition: particle.h:147
< reflection on button
Definition: particle.h:133
A triangle drawn by the graphics engine.
Definition: engine.h:154
< information sphere (emit)
Definition: particle.h:110
< yellow robot lights
Definition: particle.h:76
< drag 11
Definition: particle.h:125
< organic ball mother
Definition: particle.h:84
< shows the limits 2
Definition: particle.h:150
Definition: robotmain.h:159
Particle engine.
Definition: particle.h:223
< blue ball recycler
Definition: particle.h:137
< shows the limits 3
Definition: particle.h:151
< flame
Definition: particle.h:96
Definition: particle.h:210
< drag 3
Definition: particle.h:117
< explosion sphere
Definition: particle.h:106
< blue reflection
Definition: particle.h:127
< technology explosion
Definition: particle.h:66
< ray 1 (turn)
Definition: particle.h:93
2D point
Definition: point.h:50
< drag 8
Definition: particle.h:122
< triangular fragment
Definition: particle.h:82
< Robby says no
Definition: particle.h:102
< fireball grows
Definition: particle.h:74
< circles in the water
Definition: particle.h:98
Terrain loader/generator and manager.
Definition: terrain.h:147
Definition: particle.h:196
< black smoke
Definition: particle.h:88
< drag 4
Definition: particle.h:118
Namespace for (new) graphics code.
Definition: app.h:49
< fog 1
Definition: particle.h:142
< ball explosion 1
Definition: particle.h:153
The graphics engine.
Definition: engine.h:585
< fog 2
Definition: particle.h:143
< botanical sphere (gravity root)
Definition: particle.h:111
< splash
Definition: particle.h:139
SoundType
Enum representing sound file.
Definition: sound_type.h:34
< shock wave
Definition: particle.h:135
< waste from the reactor
Definition: particle.h:100
< fireball shrinks
Definition: particle.h:73
< bubble
Definition: particle.h:97
Water manager/renderer.
Definition: water.h:72
< fog 5
Definition: particle.h:146
< fog 7
Definition: particle.h:148
< energy sphere
Definition: particle.h:107
< ejection from the reactor
Definition: particle.h:99
3D (3x1) vector
Definition: vector.h:53
Defines the SoundType enum.
< fog 0
Definition: particle.h:141
< organic ball daughter
Definition: particle.h:85
< object part
Definition: particle.h:114
RGBA color.
Definition: color.h:39
< blue ball
Definition: particle.h:75
bool used
true if this channel is used, false if not
Definition: particle.h:165
< drag 7
Definition: particle.h:121
< bullet 3 (spider)
Definition: particle.h:80
< bullet 2 (ant)
Definition: particle.h:79
< shield sphere
Definition: particle.h:109
< analysis sphere
Definition: particle.h:108
< reflection crystal
Definition: particle.h:105
< organic explosion
Definition: particle.h:67
< virus (random letter)
Definition: particle.h:92
Base class for all 3D in-game objects.
Definition: object.h:63
< ray 2 (electric arc)
Definition: particle.h:94
< brilliance 3 (red)
Definition: particle.h:131
< brilliance 4 (violet)
Definition: particle.h:132
< bullet 1 (fireball)
Definition: particle.h:78
Sound plugin interface.
Definition: sound.h:60
< drag 2
Definition: particle.h:116
< steam
Definition: particle.h:91
< fog 3
Definition: particle.h:144
Abstract interface of graphics device.
Definition: device.h:323
< ball explosion 2
Definition: particle.h:154
< information sphere (receive)
Definition: particle.h:112
Definition: particle.h:163