diff options
author | Philipp Oeser <info@graphics-engineer.com> | 2022-11-04 14:45:38 +0300 |
---|---|---|
committer | Philipp Oeser <info@graphics-engineer.com> | 2022-11-07 14:25:20 +0300 |
commit | ffc0db199482ecde2f87f3e344475b414bf60e4c (patch) | |
tree | 6c0c0f2083975a36ce42c2e210ca96ef55ff2ddc /source/blender/blenkernel/intern/displist.cc | |
parent | 94930da29b310fcf729141b219c4b1dcac6ea6f4 (diff) |
Fix Curves Smooth modifier appears to be able to act on control points
This is not the case though, the modifier act explicitly on mesh edges,
if no tesselated mesh is provided, it would simpy early out and do
nothing.
Now always disable the "Apply on Spline" option with a tip that this
modifier can only smooth the tesselated curve (not the underlying curve
control points). Similar to rB1a6b51e17502.
Fixes T102060.
Maniphest Tasks: T102060
Differential Revision: https://developer.blender.org/D16386
Diffstat (limited to 'source/blender/blenkernel/intern/displist.cc')
-rw-r--r-- | source/blender/blenkernel/intern/displist.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/displist.cc b/source/blender/blenkernel/intern/displist.cc index 2b4bd3eb8f6..f8117a89198 100644 --- a/source/blender/blenkernel/intern/displist.cc +++ b/source/blender/blenkernel/intern/displist.cc @@ -532,6 +532,11 @@ static ModifierData *curve_get_tessellate_point(const Scene *scene, return pretessellatePoint; } + if (md->type == eModifierType_Smooth) { + /* Smooth modifier works with mesh edges explicitly (so needs tesselation, thus cannnot work on control points). */ + md->mode &= ~eModifierMode_ApplyOnSpline; + return pretessellatePoint; + } if (ELEM(md->type, eModifierType_Hook, eModifierType_Softbody, eModifierType_MeshDeform)) { pretessellatePoint = md; |