diff --git a/projects/fire_works/shaders/generation.comp b/projects/fire_works/shaders/generation.comp index ec0abbd31e7a25a59105a2ca860296f2b96608c3..4b7ba4f5020f7c219893ee330fa6fac2a1768ece 100644 --- a/projects/fire_works/shaders/generation.comp +++ b/projects/fire_works/shaders/generation.comp @@ -141,7 +141,7 @@ void main() { } } - if (0 == index && events[event_id].continuous < 1) { + if ((0 == index) && (events[event_id].continuous < 1)) { const uint sid = atomicAdd(smokeIndex, 1) % smokes.length(); smokes[sid].position = particles[id].position; diff --git a/projects/fire_works/shaders/motion.comp b/projects/fire_works/shaders/motion.comp index f607d3cf912869b25ffcb490e7d05747e2a93caa..51d6fc5f60f2eff380376fead6cc189af68b52e6 100644 --- a/projects/fire_works/shaders/motion.comp +++ b/projects/fire_works/shaders/motion.comp @@ -36,10 +36,10 @@ void main() { const float fading = 1.0f / (1.0f + friction); position = position + velocity * dt; - if(particles[id].mass > 0){ + + if (particles[id].mass > 0){ velocity = velocity * fading + vec3(0.0f, -g, 0.0f) * dt; - } - else{ + } else { velocity = velocity * fading; } diff --git a/projects/fire_works/src/main.cpp b/projects/fire_works/src/main.cpp index 357218a14f282397a514f76272a1b94d9de70802..692fbc14386f79e22a10021eb91b18d471eccea1 100644 --- a/projects/fire_works/src/main.cpp +++ b/projects/fire_works/src/main.cpp @@ -15,7 +15,7 @@ struct particle_t { glm::vec3 velocity; float size; glm::vec3 color; - float pad2; + float mass; glm::vec3 pad0; uint32_t eventId; }; @@ -29,7 +29,7 @@ struct event_t { uint32_t count; uint32_t index; uint32_t parent; - uint32_t continous; + uint32_t continuous; float lifetime; float mass; @@ -43,7 +43,7 @@ struct smoke_t { glm::vec3 velocity; float scaling; glm::vec3 color; - float pad; + float eventID; }; struct trail_t { @@ -154,11 +154,11 @@ void InitializeNestedFireworkEvents(std::vector<event_t>& events) { 1.0f, 1.0f, 0.5f, 0); - events.emplace_back(glm::vec3(0.0f), 1.0f, glm::vec3(0.0f, 1.0f, 1.0f), 7.0f, + events.emplace_back(glm::vec3(0.0f), 0.9f, glm::vec3(0.0f, 1.0f, 1.0f), 7.0f, 100, 0, events.size() - 1, 0, - 10.0f, 1.0f, 0.0f, 0); + 10.1f, 1.0f, 0.0f, 0); events.emplace_back(glm::vec3(0.0f), 2.0f, glm::vec3(0.0f, 0.0f, 0.0f), 10.0f, @@ -991,7 +991,7 @@ int main(int argc, const char **argv) { std::vector<uint32_t> startingIndex; startingIndex.resize(events.size()); uint32_t eventIdCheck = std::numeric_limits<uint32_t>::max(); - + for (size_t i = 0; i < particles.size(); i++) { if (particles[i].eventId != eventIdCheck) { eventIdCheck = particles [i].eventId;