diff --git a/projects/particle_simulation/shaders/comp1.spv b/projects/particle_simulation/shaders/comp1.spv index 386bd33749f3e09b1fa3bf76fff23812fd7f87c1..e328ebb349371bff7bebebd787f04a2ffca07f24 100644 Binary files a/projects/particle_simulation/shaders/comp1.spv and b/projects/particle_simulation/shaders/comp1.spv differ diff --git a/projects/particle_simulation/shaders/shader1.comp b/projects/particle_simulation/shaders/shader1.comp index 7b58b55fbca9841caea7ec5e606cfc79f220bcd1..38abe941ec42bd6f20bb704763cc38a650cfc814 100644 --- a/projects/particle_simulation/shaders/shader1.comp +++ b/projects/particle_simulation/shaders/shader1.comp @@ -56,7 +56,7 @@ void main() { for(int i = 0; i < n; i++) { - pos += deltaTime * deltaTime * normalize(max(2 - distance(pos,gravityPoint[i]),0.1) * gravityPoint[i] - pos); + vel += deltaTime * deltaTime * deltaTime * normalize(max(2 - distance(pos,gravityPoint[i]),0.1) * gravityPoint[i] - pos); } // vec3 delta = respawnPos - pos; diff --git a/projects/particle_simulation/src/main.cpp b/projects/particle_simulation/src/main.cpp index 17104ddf94bf26012f1735243e7701c894d58fca..a0dc40127808a9e98d8537f31db9ce3f4d501fc8 100644 --- a/projects/particle_simulation/src/main.cpp +++ b/projects/particle_simulation/src/main.cpp @@ -122,8 +122,8 @@ int main(int argc, const char **argv) { glm::vec3 minVelocity = glm::vec3(-0.1f,-0.1f,0.f); glm::vec3 maxVelocity = glm::vec3(0.1f,0.1f,0.f); - glm::vec2 lifeTime = glm::vec2(0.f,5.f); - ParticleSystem particleSystem = ParticleSystem( 1000 , minVelocity, maxVelocity, lifeTime); + glm::vec2 lifeTime = glm::vec2(-1.f,8.f); + ParticleSystem particleSystem = ParticleSystem( 10000 , minVelocity, maxVelocity, lifeTime); vkcv::Buffer<Particle> particleBuffer = core.createBuffer<Particle>( vkcv::BufferType::STORAGE, @@ -155,9 +155,6 @@ int main(int argc, const char **argv) { vkcv::DescriptorSetUsage descriptorUsage(0, core.getDescriptorSet(descriptorSet).vulkanHandle); //vkcv::DrawcallInfo drawcalls(renderMesh, {vkcv::DescriptorSetUsage(0, core.getDescriptorSet(descriptorSet).vulkanHandle)}); - std::uniform_real_distribution<float> rdmVel(-0.1f, 0.1f); - std::default_random_engine rdmEngine; - glm::vec2 pos = glm::vec2(0.f); glm::vec3 spawnPosition = glm::vec3(0.f); glm::vec4 tempPosition = glm::vec4(0.f);