Bonjour,
Je bricole en c++ de façon occasionnelle et découvre en ce moment la smfl.
En partant du tuto suivant : http://www.sfml-dev.org/tutorials/2....x-array-fr.php, la partie sur les systèmes de particule
je tente de coder la classe ParticleSystem dans des fichers ParticleSystem.h et ParticleSystem.cpp, celle ci étant dans l'exemple mise directement dans le main.cpp.
J'ai un problème avec le code suivant :
J'ai donc crée un fichier .h dans lequel il y a :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 class ParticleSystem : public sf::Drawable, public sf::Transformable { public: ParticleSystem(unsigned int count) : m_particles(count), m_vertices(sf::Points, count), m_lifetime(sf::seconds(3)), m_emitter(0, 0) { } ... private: std::vector<Particle> m_particles; sf::VertexArray m_vertices; sf::Time m_lifetime; sf::Vector2f m_emitter; }
et un .cpp qui ressemble à cela pour le constructeur:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 class SystemParticules : public sf::Drawable, public sf::Transformable { SystemParticules(unsigned int count); //constructeur ... struct Particle { sf::Vector2f velocity; sf::Time lifetime; }; ... std::vector<Particle> m_particles; sf::VertexArray m_vertices; sf::Time m_lifetime; sf::Vector2f m_emitter; ... }
J'ai une erreur sur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 SystemParticules::SystemParticules(unsigned int count) { m_particles(count); m_vertices = sf::VertexArray(sf::Points, count); m_lifetime= sf::Time(sf::seconds(3)); m_emitter= sf::Vector2f(0, 0); }
logique.
Code : Sélectionner tout - Visualiser dans une fenêtre à part m_particles(count);
Je ne comprend pas cette déclaration ou affectation.
Que viens faire ce count dans m_particles qui sauf erreur est un vector<Particle> ?
Quelqu'un aurai t il une idée de la syntaxe correcte et/ou un début d'explication ?
Partager