[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [11829] branches/soc-2007-maike/source/ blender/src/glsl_node_util.c: Added invert node

Miguel Torres Lima torreslima at gmail.com
Sat Aug 25 19:09:54 CEST 2007


Revision: 11829
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=11829
Author:   maike
Date:     2007-08-25 19:09:53 +0200 (Sat, 25 Aug 2007)

Log Message:
-----------
Added invert node

Modified Paths:
--------------
    branches/soc-2007-maike/source/blender/src/glsl_node_util.c

Modified: branches/soc-2007-maike/source/blender/src/glsl_node_util.c
===================================================================
--- branches/soc-2007-maike/source/blender/src/glsl_node_util.c	2007-08-25 17:09:37 UTC (rev 11828)
+++ branches/soc-2007-maike/source/blender/src/glsl_node_util.c	2007-08-25 17:09:53 UTC (rev 11829)
@@ -1498,6 +1498,14 @@
 {
   char *code = NULL;
 
+  files->invert = 1;
+
+  code = glsl_string(7, 0, "node_invert(",
+		     GFREE, glsl_generate_node_in_vars(node, name, 1),
+		     0, ", ", GFREE, glsl_generate_node_in_vars(node, name, 0), 
+		     0, ", ", GFREE, glsl_generate_node_out_vars(node, name, 0),
+		     0, ");\n");
+
   return code;
 }
 
@@ -2086,6 +2094,7 @@
   char *math_funcs = NULL;
   char *vectmath_funcs = NULL;
   char *squeeze_funcs = NULL;
+  char *invert_funcs = NULL;
   char *tex_funcs = NULL;
   char *tex_blend_funcs = NULL;
   char *tex_blendval_funcs = NULL;
@@ -2224,6 +2233,18 @@
       nodecode->node_code = glsl_string(2, GFREE, squeeze_funcs, GFREE, nodecode->node_code);
   }
 
+  if(files->invert){
+    if(!(invert_funcs = glsl_get_func("node_invert.gsl"))){
+      MEM_freeN(nodecode->uniform_code);
+      MEM_freeN(nodecode->node_code);
+      MEM_freeN(nodecode);
+      return NULL;
+    }
+    else
+      nodecode->node_code = glsl_string(2, GFREE, invert_funcs, GFREE, nodecode->node_code);
+  }
+
+
   glsl_free_node_hash();
   glsl_free_nodefiles();
 





More information about the Bf-blender-cvs mailing list