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:
authorClément Foucault <foucault.clem@gmail.com>2018-08-01 20:37:18 +0300
committerClément Foucault <foucault.clem@gmail.com>2018-08-01 23:08:36 +0300
commite8dd5e5cc6b7366c36f19035f94864a1b320cb83 (patch)
tree9d8eb3e799872aaccc69883c0b0a7b49e4cacafc /source/blender/gpu/shaders
parentad64cb63448d69ec1667bfa2e4941dfb996841dd (diff)
GPUMaterial: Make Mapping node use UBO storage
This means tweaking parameter is now interactive and does not need to recompile the shaders.
Diffstat (limited to 'source/blender/gpu/shaders')
-rw-r--r--source/blender/gpu/shaders/gpu_shader_material.glsl8
1 files changed, 3 insertions, 5 deletions
diff --git a/source/blender/gpu/shaders/gpu_shader_material.glsl b/source/blender/gpu/shaders/gpu_shader_material.glsl
index 8cc603696df..064ee42907e 100644
--- a/source/blender/gpu/shaders/gpu_shader_material.glsl
+++ b/source/blender/gpu/shaders/gpu_shader_material.glsl
@@ -238,13 +238,11 @@ void point_map_to_tube(vec3 vin, out vec3 vout)
vout = vec3(u, v, 0.0);
}
-void mapping(vec3 vec, mat4 mat, vec3 minvec, vec3 maxvec, float domin, float domax, out vec3 outvec)
+void mapping(vec3 vec, vec4 m0, vec4 m1, vec4 m2, vec4 m3, vec3 minvec, vec3 maxvec, out vec3 outvec)
{
+ mat4 mat = mat4(m0, m1, m2, m3);
outvec = (mat * vec4(vec, 1.0)).xyz;
- if (domin == 1.0)
- outvec = max(outvec, minvec);
- if (domax == 1.0)
- outvec = min(outvec, maxvec);
+ outvec = clamp(outvec, minvec, maxvec);
}
void camera(vec3 co, out vec3 outview, out float outdepth, out float outdist)