Commit: 3a4a2a942703762bd8c999af5b910f92b13df180
Author: Campbell Barton
Date:   Sat Apr 18 05:03:29 2015 +1000
Branches: master
https://developer.blender.org/rB3a4a2a942703762bd8c999af5b910f92b13df180

Fix T44390: Clay brush weirdness part-2

Use the normal of the plane instead of the vertex normal,
since projecting using the vertex normal frequently causes artifacts.

===================================================================

M       source/blender/editors/sculpt_paint/sculpt.c

===================================================================

diff --git a/source/blender/editors/sculpt_paint/sculpt.c 
b/source/blender/editors/sculpt_paint/sculpt.c
index 41f5376..95eddbf 100644
--- a/source/blender/editors/sculpt_paint/sculpt.c
+++ b/source/blender/editors/sculpt_paint/sculpt.c
@@ -2645,8 +2645,10 @@ static void do_clay_brush(Sculpt *sd, Object *ob, 
PBVHNode **nodes, int totnode)
                                        sub_v3_v3v3(val, intr, vd.co);
 
                                        if (plane_trim(ss->cache, brush, val)) {
+                                               /* note, the normal from the 
vertices is ignored,
+                                                * causes glitch with planes, 
see: T44390 */
                                                const float fade = bstrength * 
tex_strength(ss, brush, vd.co, sqrtf(test.dist),
-                                                                               
            vd.no, vd.fno, vd.mask ? *vd.mask : 0.0f);
+                                                                               
            NULL, an, vd.mask ? *vd.mask : 0.0f);
 
                                                mul_v3_v3fl(proxy[vd.i], val, 
fade);
 
@@ -2746,9 +2748,11 @@ static void do_clay_strips_brush(Sculpt *sd, Object *ob, 
PBVHNode **nodes, int t
                                        sub_v3_v3v3(val, intr, vd.co);
 
                                        if (plane_trim(ss->cache, brush, val)) {
+                                               /* note, the normal from the 
vertices is ignored,
+                                                * causes glitch with planes, 
see: T44390 */
                                                const float fade = bstrength * 
tex_strength(ss, brush, vd.co,
                                                                                
            ss->cache->radius * test.dist,
-                                                                               
            vd.no, vd.fno, vd.mask ? *vd.mask : 0.0f);
+                                                                               
            NULL, an, vd.mask ? *vd.mask : 0.0f);
 
                                                mul_v3_v3fl(proxy[vd.i], val, 
fade);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to