diff --git a/projects/sph/shaders/pressure.comp b/projects/sph/shaders/pressure.comp
index c921616383a932242cc28dd6d4bd4e3624dd1912..5bd9aa13305b49f2029bcab0e77e1a4f04e35d71 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;