Merge branch 'master' into blender2.8
[blender.git] / source / blender / gpu / shaders / gpu_shader_material.glsl
index 2496170db3ffe1098799aac250ed4fb1a61b6938..3890d7b52cf5e8e6da34982948759bb52b594205 100644 (file)
@@ -389,6 +389,29 @@ void math_atan2(float val1, float val2, out float outval)
        outval = atan(val1, val2);
 }
 
+void math_floor(float val, out float outval)
+{
+       outval = floor(val);
+}
+
+void math_ceil(float val, out float outval)
+{
+       outval = ceil(val);
+}
+
+void math_fract(float val, out float outval)
+{
+       outval = val - floor(val);
+}
+
+void math_sqrt(float val, out float outval)
+{
+       if (val > 0.0)
+               outval = sqrt(val);
+       else
+               outval = 0.0;
+}
+
 void squeeze(float val, float width, float center, out float outval)
 {
        outval = 1.0 / (1.0 + pow(2.71828183, -((val - center) * width)));