Fix #134707: Dynamic paint brush object movement ignored

Caused by bcfe4c34da.

The code was missing a dirty tag for the positions.
This commit is contained in:
Hans Goudey
2025-02-18 10:54:41 -05:00
parent c0f0e2ca6f
commit d0a89a0950

View File

@@ -2198,7 +2198,16 @@ Mesh *dynamicPaint_Modifier_do(
/* Create a surface for uv image sequence format. */
#define JITTER_SAMPLES \
{ \
0.0f, 0.0f, -0.2f, -0.4f, 0.2f, 0.4f, 0.4f, -0.2f, -0.4f, 0.3f, \
0.0f, \
0.0f, \
-0.2f, \
-0.4f, \
0.2f, \
0.4f, \
0.4f, \
-0.2f, \
-0.4f, \
0.3f, \
}
struct DynamicPaintCreateUVSurfaceData {
@@ -4339,6 +4348,8 @@ static bool dynamicPaint_paintMesh(Depsgraph *depsgraph,
}
}
mesh->tag_positions_changed();
if (brush->flags & MOD_DPAINT_PROX_PROJECT && brush->collision != MOD_DPAINT_COL_VOLUME) {
mul_v3_fl(avg_brushNor, 1.0f / float(numOfVerts));
/* instead of null vector use positive z */