Skip to content
Snippets Groups Projects
Verified Commit d721f9be authored by Josch Morgenstern's avatar Josch Morgenstern
Browse files

[#111] prevent force calculation for particle with itself

parent dfcc629a
No related branches found
No related tags found
1 merge request!95Resolve "Wassersimulation mit Interaktion"
...@@ -62,10 +62,13 @@ void main() { ...@@ -62,10 +62,13 @@ void main() {
for(uint i = 0; i < inParticle.length(); i++) for(uint i = 0; i < inParticle.length(); i++)
{ {
vec3 dir = inParticle[id].position - inParticle[i].position; if (id != i)
float dist = length(dir); {
pressureForce += mass * -(inParticle[id].pressure + inParticle[i].pressure)/(2.f * inParticle[i].density) * spiky(dist) * normalize(dir); vec3 dir = inParticle[id].position - inParticle[i].position;
viscosityForce += mass * (inParticle[id].velocity - inParticle[i].velocity)/inParticle[i].density * laplacian(dist); float dist = length(dir);
pressureForce += mass * -(inParticle[id].pressure + inParticle[i].pressure)/(2.f * inParticle[i].density) * spiky(dist) * normalize(dir);
viscosityForce += mass * (inParticle[id].velocity - inParticle[i].velocity)/inParticle[i].density * laplacian(dist);
}
} }
viscosityForce *= viscosity; viscosityForce *= viscosity;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment