Fix #144701: Wrong falling fluid behaviour

Error introduced with performance improvement in #137733.

Pull Request: https://projects.blender.org/blender/blender/pulls/144884
This commit is contained in:
Bartosz Kosiorek
2025-08-22 19:19:29 +02:00
committed by Brecht Van Lommel
parent 628f53a28c
commit 55bdaab4da
2 changed files with 24 additions and 24 deletions

View File

@@ -16,12 +16,12 @@ index 31e43483b49..9856d84a8b1 100644
-
if (tmp(i, j, k) != 0)
return;
+ static const Vec3i nb[6] = {Vec3i(i+1, j, k),
+ Vec3i(i-1, j, k),
+ Vec3i(i, j+1, k),
+ Vec3i(i, j-1, k),
+ Vec3i(i, j, k+1),
+ Vec3i(i, j, k-1)};
+ const Vec3i nb[6] = {Vec3i(i+1, j, k),
+ Vec3i(i-1, j, k),
+ Vec3i(i, j+1, k),
+ Vec3i(i, j-1, k),
+ Vec3i(i, j, k+1),
+ Vec3i(i, j, k-1)};
+ const int dim = (vel.is3D() ? 3 : 2);
// copy from initialized neighbors
@@ -51,12 +51,12 @@ index 31e43483b49..9856d84a8b1 100644
-
if (weight(i, j, k)[c] != 0)
return;
+ static const Vec3i nb[6] = {Vec3i(i+1, j, k),
+ Vec3i(i-1, j, k),
+ Vec3i(i, j+1, k),
+ Vec3i(i, j-1, k),
+ Vec3i(i, j, k+1),
+ Vec3i(i, j, k-1)};
+ const Vec3i nb[6] = {Vec3i(i+1, j, k),
+ Vec3i(i-1, j, k),
+ Vec3i(i, j+1, k),
+ Vec3i(i, j-1, k),
+ Vec3i(i, j, k+1),
+ Vec3i(i, j, k-1)};
+ const int dim = (vel.is3D() ? 3 : 2);
// copy from initialized neighbors

View File

@@ -308,12 +308,12 @@ struct knExtrapolateMACSimple : public KernelBase {
{
if (tmp(i, j, k) != 0)
return;
static const Vec3i nb[6] = {Vec3i(i+1, j, k),
Vec3i(i-1, j, k),
Vec3i(i, j+1, k),
Vec3i(i, j-1, k),
Vec3i(i, j, k+1),
Vec3i(i, j, k-1)};
const Vec3i nb[6] = {Vec3i(i+1, j, k),
Vec3i(i-1, j, k),
Vec3i(i, j+1, k),
Vec3i(i, j-1, k),
Vec3i(i, j, k+1),
Vec3i(i, j, k-1)};
const int dim = (vel.is3D() ? 3 : 2);
// copy from initialized neighbors
@@ -715,12 +715,12 @@ struct knExtrapolateMACFromWeight : public KernelBase {
{
if (weight(i, j, k)[c] != 0)
return;
static const Vec3i nb[6] = {Vec3i(i+1, j, k),
Vec3i(i-1, j, k),
Vec3i(i, j+1, k),
Vec3i(i, j-1, k),
Vec3i(i, j, k+1),
Vec3i(i, j, k-1)};
const Vec3i nb[6] = {Vec3i(i+1, j, k),
Vec3i(i-1, j, k),
Vec3i(i, j+1, k),
Vec3i(i, j-1, k),
Vec3i(i, j, k+1),
Vec3i(i, j, k-1)};
const int dim = (vel.is3D() ? 3 : 2);
// copy from initialized neighbors