diff --git a/src/GameWorld.cpp b/src/GameWorld.cpp index 455c105..1743d6d 100755 --- a/src/GameWorld.cpp +++ b/src/GameWorld.cpp @@ -91,18 +91,18 @@ void GameWorld::Initialize() GetSystem("SoundSystem")->PlaySound(emitter); }*/ -// { -// // Particle emitter -// auto ent = CreateEntity(); -// auto transform = AddComponent(ent, "Transform"); -// transform->Position = glm::vec3(0); -// auto emitter = AddComponent(ent, "ParticleEmitter"); -// emitter->LifeTime = 4; -// emitter->SpawnCount = 3; -// emitter->SpreadAngle = 35; -// emitter->SpawnFrequency = 0.3; -// //emitter-> -// } + { + // Particle emitter + auto ent = CreateEntity(); + auto transform = AddComponent(ent, "Transform"); + transform->Position = glm::vec3(0); + auto emitter = AddComponent(ent, "ParticleEmitter"); + emitter->LifeTime = 4; + emitter->SpawnCount = 3; + emitter->SpreadAngle = 35; + emitter->SpawnFrequency = 0.3; + //emitter-> + } } void GameWorld::Update(double dt) diff --git a/src/Systems/ParticleSystem.cpp b/src/Systems/ParticleSystem.cpp index d379ba9..048832d 100644 --- a/src/Systems/ParticleSystem.cpp +++ b/src/Systems/ParticleSystem.cpp @@ -28,11 +28,14 @@ void Systems::ParticleSystem::UpdateEntity(double dt, EntityID entity, EntityID SpawnParticles(entity, emitterComponent->SpawnCount, emitterComponent->SpreadAngle); m_TimeSinceLastSpawn = 0; } + std::cout<::iterator it; for(it = m_ParticleEmitter[entity].begin(); it == m_ParticleEmitter[entity].end();) { auto particleComponent = m_World->GetComponent(it->ParticleID, "Particle"); + if(!particleComponent) + break; double timeLived = glfwGetTime() - it->SpawnTime; std::cout<