Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuca Rood <dev@lucarood.com>2017-05-23 17:56:53 +0300
committerLuca Rood <dev@lucarood.com>2017-05-23 19:39:22 +0300
commit9bc88b69d81fc1839733c0ffb7179fba22d9920c (patch)
tree81f49b619b93ba1ea28341865e85b75bcbdbec50 /source/blender/draw/modes/shaders/object_particle_dot_frag.glsl
parent99c6601a1ffe744ef8592de5da5920156a1097a6 (diff)
Implement particle velocity and acceleration visualization
Diffstat (limited to 'source/blender/draw/modes/shaders/object_particle_dot_frag.glsl')
-rw-r--r--source/blender/draw/modes/shaders/object_particle_dot_frag.glsl19
1 files changed, 17 insertions, 2 deletions
diff --git a/source/blender/draw/modes/shaders/object_particle_dot_frag.glsl b/source/blender/draw/modes/shaders/object_particle_dot_frag.glsl
index 044a949ef98..e8bf7884701 100644
--- a/source/blender/draw/modes/shaders/object_particle_dot_frag.glsl
+++ b/source/blender/draw/modes/shaders/object_particle_dot_frag.glsl
@@ -1,8 +1,11 @@
uniform vec3 color;
uniform vec3 outlineColor;
+uniform sampler1D ramp;
in vec4 radii;
+flat in float finalVal;
+
out vec4 fragColor;
void main() {
@@ -23,11 +26,23 @@ void main() {
float midStroke = 0.5 * (radii[1] + radii[2]);
if (dist > midStroke) {
- fragColor.rgb = outlineColor;
+ if (finalVal < 0.0) {
+ fragColor.rgb = outlineColor;
+ }
+ else {
+ fragColor.rgb = texture(ramp, finalVal).rgb;
+ }
+
fragColor.a = mix(1.0, 0.0, smoothstep(radii[1], radii[0], dist));
}
else {
- fragColor.rgb = mix(color, outlineColor, smoothstep(radii[3], radii[2], dist));
+ if (finalVal < 0.0) {
+ fragColor.rgb = mix(color, outlineColor, smoothstep(radii[3], radii[2], dist));
+ }
+ else {
+ fragColor.rgb = texture(ramp, finalVal).rgb;
+ }
+
fragColor.a = 1.0;
}