[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [11885] branches/soc-2007-maike/source/ blender: Added defines for geometry node to send uniforms afterwards

Miguel Torres Lima torreslima at gmail.com
Wed Aug 29 19:50:22 CEST 2007


Revision: 11885
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=11885
Author:   maike
Date:     2007-08-29 19:50:22 +0200 (Wed, 29 Aug 2007)

Log Message:
-----------
Added defines for geometry node to send uniforms afterwards
Added camera node

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

Modified: branches/soc-2007-maike/source/blender/include/BIF_glsl_materialtree.h
===================================================================
--- branches/soc-2007-maike/source/blender/include/BIF_glsl_materialtree.h	2007-08-29 16:42:08 UTC (rev 11884)
+++ branches/soc-2007-maike/source/blender/include/BIF_glsl_materialtree.h	2007-08-29 17:50:22 UTC (rev 11885)
@@ -4,6 +4,8 @@
 #define GLSL_MAT     0
 #define GLSL_NODES   1
 
+#define GLSL_NODES_GEOMETRY   1
+#define GLSL_NODES_CAMERA     2
 
 /* ------------------------------------------------ */
 

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-29 16:42:08 UTC (rev 11884)
+++ branches/soc-2007-maike/source/blender/src/glsl_node_util.c	2007-08-29 17:50:22 UTC (rev 11885)
@@ -1340,7 +1340,7 @@
 
   for(sock = node->outputs.first; sock; sock = sock->next){
     char *var = glsl_node_geometry_output_vars(name, i, 0, 0);
-    stack = &sock->ns;
+
     
     code = glsl_string(2, GFREE, code, GFREE, glsl_assign_var_value(var, stack, sock->type));
 
@@ -1402,15 +1402,11 @@
   bNodeSocket *sock;
   int i = 0;
 
-  for(sock = node->outputs.first; sock; sock = sock->next){
-    char *var = glsl_node_camera_output_vars(name, i, 0, 0);
-    stack = &sock->ns;
-    
-    code = glsl_string(2, GFREE, code, GFREE, glsl_assign_var_value(var, stack, sock->type));
+  code = glsl_string(6,
+		     GFREE, glsl_generate_node_out_vars(node, name, 0), 0, " = normalize(pos);\n",
+		     GFREE, glsl_generate_node_out_vars(node, name, 1), 0, " = abs(pos.z);\n",
+		     GFREE, glsl_generate_node_out_vars(node, name, 2), 0, " = max(sqrt(pos.x * pos.x + pos.y * pos.y + pos.z * pos.z), 0.0);\n");
 
-    i++;
-  }
-
   return code;
 }
 





More information about the Bf-blender-cvs mailing list