[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [11905] branches/soc-2007-maike/release/ glsl: Changed material glsl generic functions to fit material and extended material nodes

Miguel Torres Lima torreslima at gmail.com
Fri Aug 31 18:54:42 CEST 2007


Revision: 11905
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=11905
Author:   maike
Date:     2007-08-31 18:54:42 +0200 (Fri, 31 Aug 2007)

Log Message:
-----------
Changed material glsl generic functions to fit material and extended material nodes

Modified Paths:
--------------
    branches/soc-2007-maike/release/glsl/material.gsl
    branches/soc-2007-maike/release/glsl/material_return.gsl
    branches/soc-2007-maike/release/glsl/material_return_cb_diff.gsl
    branches/soc-2007-maike/release/glsl/material_return_cb_spec.gsl

Modified: branches/soc-2007-maike/release/glsl/material.gsl
===================================================================
--- branches/soc-2007-maike/release/glsl/material.gsl	2007-08-31 16:16:33 UTC (rev 11904)
+++ branches/soc-2007-maike/release/glsl/material.gsl	2007-08-31 16:54:42 UTC (rev 11905)
@@ -1,7 +1,8 @@
-vec3 MATERIAL_FUNC(inout vec3 diff_color, inout vec3 spec_color, inout vec3 normal, inout float alpha, float diff1, float diff2, float diff3, float spec1, float spec2, float spec3, float amb_fac, float emit, float hard, float tanv, float shless){
+void MATERIAL_FUNC(inout vec4 color, inout float alpha, inout vec3 normal, inout vec4 diff_color, inout vec4 spec_color, inout vec4 ao, float diff1, float diff2, float diff3, float spec1, float spec2, float spec3, vec4 mirror, vec3 ambcolor, float amb_fac, float spectra, float raymir, float transl, float emit, float hard, float tanv, float shless){
+
   vec3 diff_rslt = vec3(0.0, 0.0, 0.0);
   vec3 spec_rslt = vec3(0.0, 0.0, 0.0);
-  vec3 amb_rslt = amb_color * amb_fac;
+  vec3 amb_rslt = ambcolor.rgb * amb_fac;
   float vis = 0.0, rslt1, rslt2, diff_fac, spec_fac;
   vec4 diff_cb, spec_cb;
   float diff_cb_res = 0.0;

Modified: branches/soc-2007-maike/release/glsl/material_return.gsl
===================================================================
--- branches/soc-2007-maike/release/glsl/material_return.gsl	2007-08-31 16:16:33 UTC (rev 11904)
+++ branches/soc-2007-maike/release/glsl/material_return.gsl	2007-08-31 16:54:42 UTC (rev 11905)
@@ -1,7 +1,12 @@
 diff_rslt = amb_exp * (1.0 - exp((diff_rslt + (diff_color * vec3(emit + vert_color.r, emit + vert_color.g, emit + vert_color.b))) * amb_range));
 spec_rslt = amb_exp * (1.0 - exp(spec_rslt * amb_range));
-return(diff_rslt + spec_rslt + amb_rslt); 
 
+color = vec4(diff_rslt + spec_rslt + amb_rslt, 1.0);
+diff_color = vec4(diff_rslt, 1.0);
+spec_color = vec4(spec_rslt, 1.0);
+ao = vec4(1.0,1.0,1.0,1.0);
+
+
 #undef DIFF_CB_TYPE
 #undef SPEC_CB_TYPE
 #undef DIFF_CB_BLEND_FUNC

Modified: branches/soc-2007-maike/release/glsl/material_return_cb_diff.gsl
===================================================================
--- branches/soc-2007-maike/release/glsl/material_return_cb_diff.gsl	2007-08-31 16:16:33 UTC (rev 11904)
+++ branches/soc-2007-maike/release/glsl/material_return_cb_diff.gsl	2007-08-31 16:54:42 UTC (rev 11905)
@@ -16,10 +16,15 @@
 #else
   spec_rslt = amb_exp * (1.0 - exp(spec_rslt * amb_range));
 #endif
-  return(diff_rslt + spec_rslt);
+
  }
 #endif
 #endif
+
+color = vec4(diff_rslt + spec_rslt, 1.0);
+diff_color = vec4(diff_rslt, 1.0);
+spec_color = vec4(spec_rslt, 1.0);
+ao = vec4(1.0,1.0,1.0,1.0);
 }
 
 #undef DIFF_CB_BLEND_FUNC

Modified: branches/soc-2007-maike/release/glsl/material_return_cb_spec.gsl
===================================================================
--- branches/soc-2007-maike/release/glsl/material_return_cb_spec.gsl	2007-08-31 16:16:33 UTC (rev 11904)
+++ branches/soc-2007-maike/release/glsl/material_return_cb_spec.gsl	2007-08-31 16:54:42 UTC (rev 11905)
@@ -5,9 +5,13 @@
   vec4 spec_cb_rslt_tex = texture2D(colorband_tex, vec2(clamp(spec_cb_rslt_fac, 0.0, 0.999), SPEC_CB_INDEX));
   spec_rslt = (SPEC_CB_BLEND_FUNC(spec_cb_rslt_tex.rgb, spec_rslt.rgb, SPEC_CB_FAC * spec_cb_rslt_tex.a));
   diff_rslt = amb_exp * (1.0 - exp((diff_rslt + (diff_color * vec3(emit + vert_color.r, emit + vert_color.g, emit + vert_color.b))) * amb_range));
-  return(diff_rslt + spec_rslt + amb_rslt);
  }
 #endif
+
+color = vec4(diff_rslt + spec_rslt + amb_rslt, 1.0);
+diff_color = vec4(diff_rslt, 1.0);
+spec_color = vec4(spec_rslt, 1.0);
+ao = vec4(1.0,1.0,1.0,1.0);
 }
 
 #undef DIFF_CB_BLEND_FUNC





More information about the Bf-blender-cvs mailing list