]> git.lizzy.rs Git - irrlicht.git/blob - include/IParticleFadeOutAffector.h
Add github workflow & gitignore
[irrlicht.git] / include / IParticleFadeOutAffector.h
1 // Copyright (C) 2002-2012 Nikolaus Gebhardt\r
2 // This file is part of the "Irrlicht Engine".\r
3 // For conditions of distribution and use, see copyright notice in irrlicht.h\r
4 \r
5 #ifndef __I_PARTICLE_FADE_OUT_AFFECTOR_H_INCLUDED__\r
6 #define __I_PARTICLE_FADE_OUT_AFFECTOR_H_INCLUDED__\r
7 \r
8 #include "IParticleAffector.h"\r
9 \r
10 namespace irr\r
11 {\r
12 namespace scene\r
13 {\r
14 \r
15 //! A particle affector which fades out the particles.\r
16 class IParticleFadeOutAffector : public IParticleAffector\r
17 {\r
18 public:\r
19 \r
20         //! Sets the targetColor, i.e. the color the particles will interpolate to over time.\r
21         virtual void setTargetColor( const video::SColor& targetColor ) = 0;\r
22 \r
23         //! Sets the time in milliseconds it takes for each particle to fade out (minimal 1 ms)\r
24         virtual void setFadeOutTime( u32 fadeOutTime ) = 0;\r
25 \r
26         //! Gets the targetColor, i.e. the color the particles will interpolate to over time.\r
27         virtual const video::SColor& getTargetColor() const = 0;\r
28 \r
29         //! Gets the time in milliseconds it takes for each particle to fade out.\r
30         virtual u32 getFadeOutTime() const = 0;\r
31 \r
32         //! Get emitter type\r
33         virtual E_PARTICLE_AFFECTOR_TYPE getType() const _IRR_OVERRIDE_ { return EPAT_FADE_OUT; }\r
34 };\r
35 \r
36 } // end namespace scene\r
37 } // end namespace irr\r
38 \r
39 \r
40 #endif // __I_PARTICLE_FADE_OUT_AFFECTOR_H_INCLUDED__\r
41 \r