[Bf-blender-cvs] [7e77787] strand_gpu: Removed the deprecated curve-loop shader variant.
Lukas Tönne
noreply at git.blender.org
Tue Jul 5 09:57:24 CEST 2016
Commit: 7e77787e770588b5d4d535b85e5a7df925ecd823
Author: Lukas Tönne
Date: Tue Jul 5 08:11:25 2016 +0200
Branches: strand_gpu
https://developer.blender.org/rB7e77787e770588b5d4d535b85e5a7df925ecd823
Removed the deprecated curve-loop shader variant.
===================================================================
M source/blender/gpu/shaders/gpu_shader_strand_geom.glsl
===================================================================
diff --git a/source/blender/gpu/shaders/gpu_shader_strand_geom.glsl b/source/blender/gpu/shaders/gpu_shader_strand_geom.glsl
index f0b9128..a02760b 100644
--- a/source/blender/gpu/shaders/gpu_shader_strand_geom.glsl
+++ b/source/blender/gpu/shaders/gpu_shader_strand_geom.glsl
@@ -1,8 +1,3 @@
-// Define which one is the outer loop.
-// TODO Have to determine which variant is better
-//#define LOOP_CURVES
-#define LOOP_VERTS
-
#define MAX_CURVE_VERTS 64
layout(points) in;
@@ -66,23 +61,16 @@ void main()
croot[k] = texelFetch(control_points, cvert_begin[k]);
offset[k] = root - croot[k];
}
-#ifdef LOOP_CURVES
- int num_verts = clamp(int(ceil(fnum_verts)), 2, MAX_CURVE_VERTS);
-#else
int num_verts = max(int(ceil(fnum_verts)), 2);
-#endif
-#ifdef LOOP_VERTS
float dt[4];
for (int k = 0; k < 4; ++k) {
dt[k] = float(num_cverts[k] - 1) / float(num_verts - 1);
}
-#endif
//fColor = vec3(0.0, 1.0, 0.0);
emit_vertex(root);
-#ifdef LOOP_VERTS
float t[4] = float[4](dt[0], dt[1], dt[2], dt[3]);
for (int i = 1; i < num_verts; ++i) {
vec4 loc = vec4(0.0, 0.0, 0.0, 1.0);
@@ -107,38 +95,6 @@ void main()
//fColor = vec3(float(t[0]), 0.0, 0.0);
emit_vertex(loc);
}
-#endif
-
-#ifdef LOOP_CURVES
- vec4 loc[MAX_CURVE_VERTS];
-
- for (int i = 1; i < num_verts; ++i) {
- loc[i] = vec4(0.0, 0.0, 0.0, 0.0);
- }
- for (int k = 0; k < 4; ++k) {
- float cdt = 1.0 / float(max(num_cverts[k], 2) - 1);
-
- float t = dt;
- float ct = cdt;
- for (int i = 1; i < num_verts; ++i) {
- float lambda = ct - floor(ct);
- int ci0 = clamp(int(ct), 0, num_cverts[k] - 2);
- int ci1 = ci0 + 1;
- /* XXX could use texture filtering to do this for us? */
- vec4 cloc0 = texelFetch(control_points, cvert_begin[k] + ci0);
- vec4 cloc1 = texelFetch(control_points, cvert_begin[k] + ci1);
- vec4 cloc = mix(cloc0, cloc1, lambda) + offset[k];
-
- loc[i] += weight[k] * cloc;
-
- t += dt;
- ct += cdt;
- }
- }
- for (int i = 1; i < num_verts; ++i) {
- emit_vertex(loc[i]);
- }
-#endif
EndPrimitive();
}
More information about the Bf-blender-cvs
mailing list