[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [11765] branches/soc-2007-maike/release/ glsl: The glsl files that should have gone in the last commit

Miguel Torres Lima torreslima at gmail.com
Tue Aug 21 17:12:09 CEST 2007


Revision: 11765
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=11765
Author:   maike
Date:     2007-08-21 17:12:09 +0200 (Tue, 21 Aug 2007)

Log Message:
-----------
The glsl files that should have gone in the last commit

Modified Paths:
--------------
    branches/soc-2007-maike/release/glsl/fresnel.gsl
    branches/soc-2007-maike/release/glsl/light_calc.gsl
    branches/soc-2007-maike/release/glsl/material.gsl
    branches/soc-2007-maike/release/glsl/material_return.gsl

Added Paths:
-----------
    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/fresnel.gsl
===================================================================
--- branches/soc-2007-maike/release/glsl/fresnel.gsl	2007-08-21 13:05:02 UTC (rev 11764)
+++ branches/soc-2007-maike/release/glsl/fresnel.gsl	2007-08-21 15:12:09 UTC (rev 11765)
@@ -1,7 +1,13 @@
 float fresneldef(light l, vec3 vnormal, float grad, float fac){
 	vec3 view = normalize(eye - pos);
 	float t1 = dot(view, vnormal);
-	float t2 = 1.0 + abs(t1);
+	float t2;
+
+	if(fac == 0.0) return(1.0);
+
+	if(t1 > 0.0) t2 = 1.0 + t1;
+	else t2 = 1.0 - t1;
 	t2 = grad + (1.0 - grad) * pow(t2, fac);
 	return(clamp(t2, 0.0, 1.0));
 }
+

Modified: branches/soc-2007-maike/release/glsl/light_calc.gsl
===================================================================
--- branches/soc-2007-maike/release/glsl/light_calc.gsl	2007-08-21 13:05:02 UTC (rev 11764)
+++ branches/soc-2007-maike/release/glsl/light_calc.gsl	2007-08-21 15:12:09 UTC (rev 11765)
@@ -34,6 +34,7 @@
     
 #ifdef CALC_SPECULAR
 #ifdef LIGHT_ID
+
 #ifdef HEMI
 spec_rslt+= SPEC_SHADER_ID(lights[LIGHT_ID], norm, hard) * spec1 * spec_color * vec3(lights[LIGHT_ID].color) * lights[LIGHT_ID].layer * lights[LIGHT_ID].energy * vis;
 #else
@@ -57,7 +58,6 @@
 spec_rslt+= rslt2 * spec1 * spec_color * vec3(lights[LIGHT_ID].color) * lights[LIGHT_ID].layer * lights[LIGHT_ID].energy * vis;
 #endif
 #endif
-
 #endif
 #endif
 

Modified: branches/soc-2007-maike/release/glsl/material.gsl
===================================================================
--- branches/soc-2007-maike/release/glsl/material.gsl	2007-08-21 13:05:02 UTC (rev 11764)
+++ branches/soc-2007-maike/release/glsl/material.gsl	2007-08-21 15:12:09 UTC (rev 11765)
@@ -9,11 +9,6 @@
   vec3 unnorm = normal;
   vec3 norm = normalize(normal);
 
-#ifdef IS_SHADELESS
-  return(diff_color);
-#endif
-#undef IS_SHADELESS
-
   if(tanv > 0.0){
     norm = -(cross(cross(eye - pos, normal), normal));
   }

Modified: branches/soc-2007-maike/release/glsl/material_return.gsl
===================================================================
--- branches/soc-2007-maike/release/glsl/material_return.gsl	2007-08-21 13:05:02 UTC (rev 11764)
+++ branches/soc-2007-maike/release/glsl/material_return.gsl	2007-08-21 15:12:09 UTC (rev 11765)
@@ -1,51 +1,6 @@
-
-#ifdef DIFF_CB_RESULT
-#if LIGHT_CALCULATIONS == 0
-return(vec3(0.0, 0.0, 0.0));
-#else
-if(diff_cb_res > 0.0){
-  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)) + amb_rslt;
-  if(diff_rslt.r >= 0.005 || diff_rslt.g >= 0.005 || diff_rslt.b >= 0.005){
-    float diff_cb_rslt_fac = (0.3 * diff_rslt.r + 0.58 * diff_rslt.g + 0.12 * diff_rslt.b);
-    vec4 diff_cb_rslt_tex = texture1D(DIFF_CB_TEX, clamp(diff_cb_rslt_fac, 0.0, 0.999));
-    diff_rslt = (DIFF_CB_BLEND_FUNC(diff_cb_rslt_tex.rgb, diff_rslt.rgb, DIFF_CB_FAC * diff_cb_rslt_tex.a));
-  }
-#ifdef SPEC_CB_RESULT
-  if(spec_cb_res > 0.0){
-    spec_rslt = amb_exp * (1.0 - exp(spec_rslt * amb_range));
-    float spec_cb_rslt_fac = (0.3 * spec_rslt.r + 0.58 * spec_rslt.g + 0.12 * spec_rslt.b);
-    vec4 spec_cb_rslt_tex = texture1D(SPEC_CB_TEX, clamp(spec_cb_rslt_fac, 0.0, 0.999));
-    spec_rslt = (SPEC_CB_BLEND_FUNC(spec_cb_rslt_tex.rgb, spec_rslt.rgb, SPEC_CB_FAC * spec_cb_rslt_tex.a));
-    }
-#else
-  spec_rslt = amb_exp * (1.0 - exp(spec_rslt * amb_range));
-#endif
-  return(diff_rslt + spec_rslt);
- }
-#endif
-#endif
-#endif
-
-
-#ifdef SPEC_CB_RESULT
-if(spec_cb_res > 0.0){
-  spec_rslt = amb_exp * (1.0 - exp(spec_rslt * amb_range));
-  float spec_cb_rslt_fac = (0.3 * spec_rslt.r + 0.58 * spec_rslt.g + 0.12 * spec_rslt.b);
-  vec4 spec_cb_rslt_tex = texture1D(SPEC_CB_TEX, clamp(spec_cb_rslt_fac, 0.0, 0.999));
-  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
-#endif
-
-#if LIGHT_CALCULATIONS == 1
 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); 
-#else
-  return(vec3(0.0, 0.0, 0.0));
-#endif
 
 #undef DIFF_CB_TYPE
 #undef SPEC_CB_TYPE
@@ -55,6 +10,4 @@
 #undef SPEC_CB_TEX
 #undef DIFF_CB_FAC
 #undef SPEC_CB_FAC
-#undef DIFF_CB_RESULT
-#undef SPEC_CB_RESULT
 }

Added: branches/soc-2007-maike/release/glsl/material_return_cb_diff.gsl
===================================================================
--- branches/soc-2007-maike/release/glsl/material_return_cb_diff.gsl	                        (rev 0)
+++ branches/soc-2007-maike/release/glsl/material_return_cb_diff.gsl	2007-08-21 15:12:09 UTC (rev 11765)
@@ -0,0 +1,32 @@
+#ifdef DIFF_CB_RESULT
+if(diff_cb_res > 0.0){
+  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)) + amb_rslt;
+  if(diff_rslt.r >= 0.005 || diff_rslt.g >= 0.005 || diff_rslt.b >= 0.005){
+    float diff_cb_rslt_fac = (0.3 * diff_rslt.r + 0.58 * diff_rslt.g + 0.12 * diff_rslt.b);
+    vec4 diff_cb_rslt_tex = texture1D(DIFF_CB_TEX, clamp(diff_cb_rslt_fac, 0.0, 0.999));
+      diff_rslt = (DIFF_CB_BLEND_FUNC(diff_cb_rslt_tex.rgb, diff_rslt.rgb, DIFF_CB_FAC * diff_cb_rslt_tex.a));
+  }
+#ifdef SPEC_CB_RESULT
+  if(spec_cb_res > 0.0){
+    spec_rslt = amb_exp * (1.0 - exp(spec_rslt * amb_range));
+    float spec_cb_rslt_fac = (0.3 * spec_rslt.r + 0.58 * spec_rslt.g + 0.12 * spec_rslt.b);
+    vec4 spec_cb_rslt_tex = texture1D(SPEC_CB_TEX, clamp(spec_cb_rslt_fac, 0.0, 0.999));
+    spec_rslt = (SPEC_CB_BLEND_FUNC(spec_cb_rslt_tex.rgb, spec_rslt.rgb, SPEC_CB_FAC * spec_cb_rslt_tex.a));
+  }
+#else
+  spec_rslt = amb_exp * (1.0 - exp(spec_rslt * amb_range));
+#endif
+  return(diff_rslt + spec_rslt);
+ }
+#endif
+#endif
+}
+
+#undef DIFF_CB_BLEND_FUNC
+#undef SPEC_CB_BLEND_FUNC
+#undef DIFF_CB_TEX
+#undef SPEC_CB_TEX
+#undef DIFF_CB_FAC
+#undef SPEC_CB_FAC
+#undef DIFF_CB_RESULT
+#undef SPEC_CB_RESULT

Added: branches/soc-2007-maike/release/glsl/material_return_cb_spec.gsl
===================================================================
--- branches/soc-2007-maike/release/glsl/material_return_cb_spec.gsl	                        (rev 0)
+++ branches/soc-2007-maike/release/glsl/material_return_cb_spec.gsl	2007-08-21 15:12:09 UTC (rev 11765)
@@ -0,0 +1,20 @@
+#ifdef SPEC_CB_RESULT
+if(spec_cb_res > 0.0){
+  spec_rslt = amb_exp * (1.0 - exp(spec_rslt * amb_range));
+  float spec_cb_rslt_fac = (0.3 * spec_rslt.r + 0.58 * spec_rslt.g + 0.12 * spec_rslt.b);
+  vec4 spec_cb_rslt_tex = texture1D(SPEC_CB_TEX, clamp(spec_cb_rslt_fac, 0.0, 0.999));
+  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
+}
+
+#undef DIFF_CB_BLEND_FUNC
+#undef SPEC_CB_BLEND_FUNC
+#undef DIFF_CB_TEX
+#undef SPEC_CB_TEX
+#undef DIFF_CB_FAC
+#undef SPEC_CB_FAC
+#undef DIFF_CB_RESULT
+#undef DIFF_CB_TYPE





More information about the Bf-blender-cvs mailing list