[Bf-blender-cvs] [ae977d13f8e] master: Improve slightly the stability of wireframes in old GPUs from AMD.
mano-wii
noreply at git.blender.org
Sun Mar 3 01:01:57 CET 2019
Commit: ae977d13f8e9440294b00a510fc1d25c6609e2dd
Author: mano-wii
Date: Sat Mar 2 21:00:37 2019 -0300
Branches: master
https://developer.blender.org/rBae977d13f8e9440294b00a510fc1d25c6609e2dd
Improve slightly the stability of wireframes in old GPUs from AMD.
Tested on `AMD Radeon HD 7570M`.
The reason for crash reduction is still unknown.
===================================================================
M source/blender/draw/modes/shaders/overlay_face_wireframe_vert.glsl
===================================================================
diff --git a/source/blender/draw/modes/shaders/overlay_face_wireframe_vert.glsl b/source/blender/draw/modes/shaders/overlay_face_wireframe_vert.glsl
index 8cb4db23b7e..0424a49dd5d 100644
--- a/source/blender/draw/modes/shaders/overlay_face_wireframe_vert.glsl
+++ b/source/blender/draw/modes/shaders/overlay_face_wireframe_vert.glsl
@@ -7,10 +7,14 @@ uniform mat3 NormalMatrix;
uniform float wireStepParam;
uniform float ofs;
+in vec3 pos;
+in vec3 nor;
+in float wd; /* wiredata */
+
#ifndef USE_SCULPT
float get_edge_sharpness(float wd)
{
- return ((wd == 1.0) ? 1.0 : ((wd == 0.0) ? -1.5 : wd)) + wireStepParam;
+ return ((wd == 0.0) ? -1.5 : wd) + wireStepParam;
}
#else
float get_edge_sharpness(float wd) { return 1.0; }
@@ -18,11 +22,6 @@ float get_edge_sharpness(float wd) { return 1.0; }
/* Geometry shader version */
#if defined(SELECT_EDGES) || defined(USE_GEOM)
-
-in vec3 pos;
-in vec3 nor;
-in float wd; /* wiredata */
-
out float facing_g;
out float edgeSharpness_g;
@@ -43,23 +42,18 @@ void main()
}
#else /* USE_GEOM */
-
-in vec3 pos;
-in vec3 nor;
-in float wd;
-
out float facing;
flat out float edgeSharpness;
void main()
{
+ edgeSharpness = get_edge_sharpness(wd);
+
mat4 projmat = ProjectionMatrix;
projmat[3][2] -= ofs;
gl_Position = projmat * (ModelViewMatrix * vec4(pos, 1.0));
- edgeSharpness = get_edge_sharpness(wd);
-
facing = normalize(NormalMatrix * nor).z;
#ifdef USE_WORLD_CLIP_PLANES
More information about the Bf-blender-cvs
mailing list