[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [54576] trunk/blender/source/blender: Fix #34254: cycles brightness/ contrast node was missing for GLSL material view.
Brecht Van Lommel
brechtvanlommel at pandora.be
Fri Feb 15 12:46:32 CET 2013
Revision: 54576
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=54576
Author: blendix
Date: 2013-02-15 11:46:31 +0000 (Fri, 15 Feb 2013)
Log Message:
-----------
Fix #34254: cycles brightness/contrast node was missing for GLSL material view.
Modified Paths:
--------------
trunk/blender/source/blender/gpu/shaders/gpu_shader_material.glsl
trunk/blender/source/blender/nodes/shader/nodes/node_shader_brightness.c
Modified: trunk/blender/source/blender/gpu/shaders/gpu_shader_material.glsl
===================================================================
--- trunk/blender/source/blender/gpu/shaders/gpu_shader_material.glsl 2013-02-15 11:23:07 UTC (rev 54575)
+++ trunk/blender/source/blender/gpu/shaders/gpu_shader_material.glsl 2013-02-15 11:46:31 UTC (rev 54576)
@@ -390,6 +390,17 @@
outval = vec4(0.0);
}
+void brightness_contrast(vec4 col, float brightness, float contrast, out vec4 outcol)
+{
+ float a = 1.0 + contrast;
+ float b = brightness - contrast*0.5;
+
+ outcol.r = max(a*col.r + b, 0.0);
+ outcol.g = max(a*col.g + b, 0.0);
+ outcol.b = max(a*col.b + b, 0.0);
+ outcol.a = col.a;
+}
+
void mix_blend(float fac, vec4 col1, vec4 col2, out vec4 outcol)
{
fac = clamp(fac, 0.0, 1.0);
Modified: trunk/blender/source/blender/nodes/shader/nodes/node_shader_brightness.c
===================================================================
--- trunk/blender/source/blender/nodes/shader/nodes/node_shader_brightness.c 2013-02-15 11:23:07 UTC (rev 54575)
+++ trunk/blender/source/blender/nodes/shader/nodes/node_shader_brightness.c 2013-02-15 11:46:31 UTC (rev 54576)
@@ -43,6 +43,11 @@
{ -1, 0, "" }
};
+static int gpu_shader_brightcontrast(GPUMaterial *mat, bNode *node, GPUNodeStack *in, GPUNodeStack *out)
+{
+ return GPU_stack_link(mat, "brightness_contrast", in, out);
+}
+
void register_node_type_sh_brightcontrast(bNodeTreeType *ttype)
{
static bNodeType ntype;
@@ -54,7 +59,7 @@
node_type_init(&ntype, NULL);
node_type_storage(&ntype, "", NULL, NULL);
node_type_exec(&ntype, NULL);
- node_type_gpu(&ntype, NULL);
+ node_type_gpu(&ntype, gpu_shader_brightcontrast);
nodeRegisterType(ttype, &ntype);
}
More information about the Bf-blender-cvs
mailing list