ParticuleEngine.hpp
Go to the documentation of this file.
1 
6 #pragma once
7 namespace ege {
8  class Environement;
9  class Particule;
10 };
11 #include <etk/types.hpp>
12 #include <vector>
13 #include <ege/camera/Camera.hpp>
14 
15 namespace ege {
17  private:
18  ege::Environement* m_env;
19  public:
20  ParticuleEngine(ege::Environement* _env); // note : need the engine to register has an dynamic element ... (the first ...)
21  ~ParticuleEngine();
22  private:
23  std::vector<Particule*> m_particuleList;
24  std::vector<Particule*> m_particuleRemoved;
25  public:
29  void clear();
34  void add(Particule* _particule);
35  private:
40  void addRemoved(Particule* _particule);
41  public:
46  void update(float _deltaTime);
51  void draw(const ege::Camera& _camera);
59  Particule* respown(const char* _particuleType);
60 
61  };
62 }
63 
64 
Definition: Environement.hpp:79
Particule * respown(const char *_particuleType)
get a particue with his type, we get particule that has been already removed, otherwise, you will create new
void clear()
clear the particule engine
void add(Particule *_particule)
add a particule in the engine (internal acces only)
Definition: AudioElement.hpp:8
Definition: Camera.hpp:18
Definition: ParticuleEngine.hpp:16
void update(float _deltaTime)
update particule properties
The particule class is an element with no control, when it will be created, it does not have any cont...
Definition: Particule.hpp:23
void draw(const ege::Camera &_camera)
draw all the active Particule