aboutsummaryrefslogtreecommitdiff
path: root/src/libjin/Graphics/particle/je_particle_emitter.h
diff options
context:
space:
mode:
authorchai <chaifix@163.com>2018-10-23 22:09:22 +0800
committerchai <chaifix@163.com>2018-10-23 22:09:22 +0800
commitd74e03063095d43c654fa52c3868f7ef8fce69f1 (patch)
treeee91251c170edafacca3d3242e5b44444fb70e79 /src/libjin/Graphics/particle/je_particle_emitter.h
parent6551adeca70d4299a99d45245d4e13dbfdfa87e5 (diff)
*粒子系统
Diffstat (limited to 'src/libjin/Graphics/particle/je_particle_emitter.h')
-rw-r--r--src/libjin/Graphics/particle/je_particle_emitter.h37
1 files changed, 31 insertions, 6 deletions
diff --git a/src/libjin/Graphics/particle/je_particle_emitter.h b/src/libjin/Graphics/particle/je_particle_emitter.h
index e191e36..95b7875 100644
--- a/src/libjin/Graphics/particle/je_particle_emitter.h
+++ b/src/libjin/Graphics/particle/je_particle_emitter.h
@@ -1,5 +1,10 @@
-#ifndef __JE_PARTICLE_EMMITTER_H
-#define __JE_PARTICLE_EMMITTER_H
+#ifndef __JE_PARTICLE_EMITTER_H
+#define __JE_PARTICLE_EMITTER_H
+
+#include "../../common/je_temporary.h"
+#include "../../math/je_vector2.hpp"
+
+#include "je_particle.h"
namespace JinEngine
{
@@ -7,17 +12,37 @@ namespace JinEngine
{
///
- /// Particle emitter
+ /// Definition of particle emitter.
///
+ struct ParticleEmitterDef : public Temporary
+ {
+ Math::Vector2<float> position;
+
+ };
+
class ParticleEmitter
{
public:
+ ParticleEmitter(const ParticleEmitterDef& def);
+
+ ///
+ /// Create new particle.
+ ///
+ Particle* emit();
+
+ ///
+ /// Emitter position.
+ ///
+ Math::Vector2<float> mPosition;
- private:
+ ///
+ ///
+ ///
+ float mDirection;
};
- }
-}
+ } // namespace Graphics
+} // namespace JinEngine
#endif \ No newline at end of file