Commit: 125abd4a943e854ae3ab93d54692f4df4a4c5693
Author: Lukas Tönne
Date:   Sun Jul 24 09:31:26 2016 +0200
Branches: strand_nodes
https://developer.blender.org/rB125abd4a943e854ae3ab93d54692f4df4a4c5693

Fix debug geometry shader for strands.

This geometry shader must be used regardless of the "use geometry shader" 
setting
for the primary shader.

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

M       source/blender/gpu/intern/gpu_strands_shader.c
M       source/blender/gpu/shaders/gpu_shader_strand_debug_geom.glsl

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

diff --git a/source/blender/gpu/intern/gpu_strands_shader.c 
b/source/blender/gpu/intern/gpu_strands_shader.c
index f8fa162..4edea90 100644
--- a/source/blender/gpu/intern/gpu_strands_shader.c
+++ b/source/blender/gpu/intern/gpu_strands_shader.c
@@ -221,7 +221,7 @@ GPUStrandsShader 
*GPU_strand_shader_create(GPUStrandsShaderParams *params)
        char *geometry_basecode = use_geometry_shader ? 
datatoc_gpu_shader_strand_geom_glsl : NULL;
        char *fragment_basecode = datatoc_gpu_shader_strand_frag_glsl;
        char *vertex_debug_basecode = datatoc_gpu_shader_strand_debug_vert_glsl;
-       char *geometry_debug_basecode = use_geometry_shader ? 
datatoc_gpu_shader_strand_debug_geom_glsl : NULL;
+       char *geometry_debug_basecode = 
datatoc_gpu_shader_strand_debug_geom_glsl;
        char *fragment_debug_basecode = 
datatoc_gpu_shader_strand_debug_frag_glsl;
        
        char *nodecode;
diff --git a/source/blender/gpu/shaders/gpu_shader_strand_debug_geom.glsl 
b/source/blender/gpu/shaders/gpu_shader_strand_debug_geom.glsl
index 0829a42..d858c25 100644
--- a/source/blender/gpu/shaders/gpu_shader_strand_debug_geom.glsl
+++ b/source/blender/gpu/shaders/gpu_shader_strand_debug_geom.glsl
@@ -40,7 +40,7 @@ void main()
 
 #if 1
        emit_vertex(loc, magenta);
-       emit_vertex(loc + vTangent[0] * debug_scale, magenta);
+       emit_vertex(loc + nor * debug_scale, magenta);
        EndPrimitive();
 #endif
 
@@ -55,32 +55,4 @@ void main()
        emit_vertex(loc + target_frame[2] * debug_scale, blue);
        EndPrimitive();
 #endif
-
-       CurlParams params = curl_params(vCurveParam[0], 1.0, target_loc, 
target_frame);
-       
-#if 0
-       vec3 dcurl = (params.dcurlvec - nor) * params.factor;
-       vec3 dshape = (target_loc + params.curlvec - loc) * params.dfactor;
-       emit_vertex(loc, cyan);
-       emit_vertex(loc + dcurl * debug_scale, cyan);
-       EndPrimitive();
-       emit_vertex(loc, yellow);
-       emit_vertex(loc + dshape * debug_scale, yellow);
-       EndPrimitive();
-
-       emit_vertex(loc, magenta);
-       emit_vertex(loc + (oldnor + dcurl + dshape) * debug_scale, magenta);
-       EndPrimitive();
-#endif
-
-#if 0
-       vec3 dloc = (target_loc + params.curlvec - loc) * params.factor;
-       vec3 nloc = loc + dloc;
-       vec3 dshape = dloc / (vCurveParam[0] * curl_shape);
-       vec3 dtarget = target_frame[2] + params.turns * params.dcurlvec;
-       vec3 nnor = normalize(dshape + mix(oldnor, dtarget, params.factor));
-       emit_vertex(loc, cyan);
-       emit_vertex(loc + nnor * debug_scale, cyan);
-       EndPrimitive();
-#endif
 }

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

Reply via email to