[DEV] Think at a particule engine

This commit is contained in:
Edouard DUPIN 2013-09-09 06:32:38 +02:00
parent 48099a92bb
commit d68acc1903
2 changed files with 51 additions and 2 deletions

View File

@ -10,7 +10,50 @@
#define __EGE_PARTICULE_H__
namespace ege {
class Particule
{
private:
etk::UString m_name; //!< name of the particule
bool m_standalone; //!< if true, no control of the particule...
public:
/**
* @brief Constructor.
* @param[in] _name Name of the particule.
* @param[in] _standalone The particule are created and have there own life (no dynamic control)
*/
Particule(const etk::UString& _name, bool _standalone) : m_name(_name) { };
/**
* @brief Destructor.
*/
~Particule(void) { };
/**
* @brief Get the particule type name.
* @return the particule name.
*/
const etk::UString& GetName(void) { return m_name; };
/**
* @brief Get the standalone status.
* @return true if standalone
*/
bool GetStandalone(void) { return m_standalone; };
/**
* @brief Update the paticule properties
* @param[in] _delta Delta time from the previous call
*/
virtual void Update(float _delta) { };
// note : For multiple instance only (standalone==false)
/**
*
*/
/*
virtual int32_t Add(void) { return -1; };
virtual void SetLife(int32_t _id, float _life);
virtual void SetLevel(int32_t _id, float _level);
virtual void SetPosition(int32_t _id, const vec3& _pos);
virtual void SetAngleSpeed(int32_t _id, const vec4& _angle);
virtual void SetMoveSpeed(int32_t _id, const vec3& _speed);
*/
};
};
#endif

View File

@ -10,7 +10,13 @@
#define __EGE_PARTICULE_ENGINE_H__
namespace ege {
class PariculeEngine
{
public:
PariculeEngine(ege::Environement& _env);
~PariculeEngine(void);
Keep(
};
};
#endif