Commit: c0ae38f65642da42909420e444ef464686773e49
Author: Alexander Romanov
Date:   Wed Apr 27 19:14:13 2016 +1000
Branches: master
https://developer.blender.org/rBc0ae38f65642da42909420e444ef464686773e49

Fix artifacts w/ low near clear in bglPolygonOffset

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

M       source/blender/editors/screen/glutil.c

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

diff --git a/source/blender/editors/screen/glutil.c 
b/source/blender/editors/screen/glutil.c
index b7ad911..a1c330d 100644
--- a/source/blender/editors/screen/glutil.c
+++ b/source/blender/editors/screen/glutil.c
@@ -795,8 +795,13 @@ void bglPolygonOffset(float viewdist, float dist)
 #endif
                }
                else {
-                       /* should be clipping value or so... */
-                       offs = 0.0005f * dist;
+                       /* This adjustment effectively results in reducing the 
Z value by 0.25%.
+                        *
+                        * winmat[14] actually evaluates to `-2 * far * near / 
(far - near)`,
+                        * is very close to -0.2 with default clip range, and 
is used as the coefficient multiplied by `w / z`,
+                        * thus controlling the z dependent part of the depth 
value.
+                        */
+                       offs = winmat[14] * -0.0025f * dist;
                }
                
                winmat[14] -= offs;

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to