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() {
for(uint i = 0; i < inParticle.length(); i++)
{
vec3 dir = inParticle[id].position - inParticle[i].position;
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);
if (id != i)
{
vec3 dir = inParticle[id].position - inParticle[i].position;
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;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment