diff options
Diffstat (limited to 'libraries/irrlicht-1.8/source/Irrlicht/CParticleScaleAffector.cpp')
-rw-r--r-- | libraries/irrlicht-1.8/source/Irrlicht/CParticleScaleAffector.cpp | 106 |
1 files changed, 53 insertions, 53 deletions
diff --git a/libraries/irrlicht-1.8/source/Irrlicht/CParticleScaleAffector.cpp b/libraries/irrlicht-1.8/source/Irrlicht/CParticleScaleAffector.cpp index 1817bcf..334cec9 100644 --- a/libraries/irrlicht-1.8/source/Irrlicht/CParticleScaleAffector.cpp +++ b/libraries/irrlicht-1.8/source/Irrlicht/CParticleScaleAffector.cpp | |||
@@ -1,53 +1,53 @@ | |||
1 | // Copyright (C) 2010-2012 Nikolaus Gebhardt | 1 | // Copyright (C) 2010-2012 Nikolaus Gebhardt |
2 | // This file is part of the "Irrlicht Engine". | 2 | // This file is part of the "Irrlicht Engine". |
3 | // For conditions of distribution and use, see copyright notice in irrlicht.h | 3 | // For conditions of distribution and use, see copyright notice in irrlicht.h |
4 | 4 | ||
5 | #include "CParticleScaleAffector.h" | 5 | #include "CParticleScaleAffector.h" |
6 | #include "IAttributes.h" | 6 | #include "IAttributes.h" |
7 | 7 | ||
8 | namespace irr | 8 | namespace irr |
9 | { | 9 | { |
10 | namespace scene | 10 | namespace scene |
11 | { | 11 | { |
12 | CParticleScaleAffector::CParticleScaleAffector(const core::dimension2df& scaleTo) | 12 | CParticleScaleAffector::CParticleScaleAffector(const core::dimension2df& scaleTo) |
13 | : ScaleTo(scaleTo) | 13 | : ScaleTo(scaleTo) |
14 | { | 14 | { |
15 | #ifdef _DEBUG | 15 | #ifdef _DEBUG |
16 | setDebugName("CParticleScaleAffector"); | 16 | setDebugName("CParticleScaleAffector"); |
17 | #endif | 17 | #endif |
18 | } | 18 | } |
19 | 19 | ||
20 | 20 | ||
21 | void CParticleScaleAffector::affect (u32 now, SParticle *particlearray, u32 count) | 21 | void CParticleScaleAffector::affect (u32 now, SParticle *particlearray, u32 count) |
22 | { | 22 | { |
23 | for(u32 i=0;i<count;i++) | 23 | for(u32 i=0;i<count;i++) |
24 | { | 24 | { |
25 | const u32 maxdiff = particlearray[i].endTime - particlearray[i].startTime; | 25 | const u32 maxdiff = particlearray[i].endTime - particlearray[i].startTime; |
26 | const u32 curdiff = now - particlearray[i].startTime; | 26 | const u32 curdiff = now - particlearray[i].startTime; |
27 | const f32 newscale = (f32)curdiff/maxdiff; | 27 | const f32 newscale = (f32)curdiff/maxdiff; |
28 | particlearray[i].size = particlearray[i].startSize+ScaleTo*newscale; | 28 | particlearray[i].size = particlearray[i].startSize+ScaleTo*newscale; |
29 | } | 29 | } |
30 | } | 30 | } |
31 | 31 | ||
32 | 32 | ||
33 | void CParticleScaleAffector::serializeAttributes(io::IAttributes* out, io::SAttributeReadWriteOptions* options) const | 33 | void CParticleScaleAffector::serializeAttributes(io::IAttributes* out, io::SAttributeReadWriteOptions* options) const |
34 | { | 34 | { |
35 | out->addFloat("ScaleToWidth", ScaleTo.Width); | 35 | out->addFloat("ScaleToWidth", ScaleTo.Width); |
36 | out->addFloat("ScaleToHeight", ScaleTo.Height); | 36 | out->addFloat("ScaleToHeight", ScaleTo.Height); |
37 | } | 37 | } |
38 | 38 | ||
39 | 39 | ||
40 | void CParticleScaleAffector::deserializeAttributes(io::IAttributes* in, io::SAttributeReadWriteOptions* options) | 40 | void CParticleScaleAffector::deserializeAttributes(io::IAttributes* in, io::SAttributeReadWriteOptions* options) |
41 | { | 41 | { |
42 | ScaleTo.Width = in->getAttributeAsFloat("ScaleToWidth"); | 42 | ScaleTo.Width = in->getAttributeAsFloat("ScaleToWidth"); |
43 | ScaleTo.Height = in->getAttributeAsFloat("ScaleToHeight"); | 43 | ScaleTo.Height = in->getAttributeAsFloat("ScaleToHeight"); |
44 | } | 44 | } |
45 | 45 | ||
46 | 46 | ||
47 | E_PARTICLE_AFFECTOR_TYPE CParticleScaleAffector::getType() const | 47 | E_PARTICLE_AFFECTOR_TYPE CParticleScaleAffector::getType() const |
48 | { | 48 | { |
49 | return scene::EPAT_SCALE; | 49 | return scene::EPAT_SCALE; |
50 | } | 50 | } |
51 | } | 51 | } |
52 | } | 52 | } |
53 | 53 | ||