From d309036d2f6a554c3555d9c11cc791d003f4d81a Mon Sep 17 00:00:00 2001 From: Josh Morgenstern <josh@morgenstern.dev> Date: Tue, 14 Sep 2021 13:05:22 +0200 Subject: [PATCH] [#111] prevent pressure calculation for particle with itself --- projects/sph/shaders/pressure.comp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/projects/sph/shaders/pressure.comp b/projects/sph/shaders/pressure.comp index c9216163..5bd9aa13 100644 --- a/projects/sph/shaders/pressure.comp +++ b/projects/sph/shaders/pressure.comp @@ -53,8 +53,11 @@ void main() { for(uint i = 0; i < inParticle.length(); i++) { - float dist = distance(inParticle[id].position, inParticle[i].position); - densitySum += mass * poly6(dist); + if (id != i) + { + float dist = distance(inParticle[id].position, inParticle[i].position); + densitySum += mass * poly6(dist); + } } outParticle[id].density = densitySum; outParticle[id].pressure = max((densitySum - offset), 0) * gasConstant; -- GitLab