[Orxonox-commit 4739] r9408 - in data/trunk: materials programs
davidsa at orxonox.net
davidsa at orxonox.net
Sun Oct 21 17:49:55 CEST 2012
Author: davidsa
Date: 2012-10-21 17:49:55 +0200 (Sun, 21 Oct 2012)
New Revision: 9408
Added:
data/trunk/materials/glow.material
data/trunk/programs/ps_glow.cg
data/trunk/programs/vs_glow.cg
Log:
Added: rudimentary stencil outline glow shader, very basic and looks pretty ugly, but good enough to test stencil buffer functionality
Added: data/trunk/materials/glow.material
===================================================================
--- data/trunk/materials/glow.material (rev 0)
+++ data/trunk/materials/glow.material 2012-10-21 15:49:55 UTC (rev 9408)
@@ -0,0 +1,83 @@
+vertex_program glow_vs cg
+{
+ source vs_glow.cg
+ entry_point main
+ profiles vs_1_1 arbvp1
+}
+
+fragment_program glow_ps cg
+{
+ source ps_glow.cg
+ entry_point main
+ profiles ps_2_0 arbfp1
+}
+
+
+material glow
+{
+ technique
+ {
+ pass
+ {
+ scene_blend alpha_blend
+ depth_check on
+ lighting off
+ emissive 1.0 1.0 0.0 0.0
+
+ vertex_program_ref glow_vs
+ {
+ param_named_auto worldViewProjMatrix worldviewproj_matrix
+ param_named size_value float 1.1
+ param_named_auto time time_0_x 100
+ }
+
+ fragment_program_ref glow_ps
+ {
+ param_named alpha_value float 0.4
+ param_named_auto time time_0_x 100
+ param_named_auto color surface_emissive_colour
+ }
+ }
+
+ }
+}
+
+material glow/drone
+{
+ technique
+ {
+ pass
+ {
+ scene_blend alpha_blend
+ depth_check on
+ lighting off
+
+ texture_unit
+ {
+ texture drone.png
+ }
+ }
+ pass
+ {
+ scene_blend alpha_blend
+ depth_check on
+ lighting off
+ emissive 0.5 0.9 1.0 0.0
+
+ vertex_program_ref glow_vs
+ {
+ param_named_auto worldViewProjMatrix worldviewproj_matrix
+ param_named size_value float 0.2
+ param_named_auto time time_0_x 50
+ }
+
+ fragment_program_ref glow_ps
+ {
+ param_named alpha_value float 0.4
+ param_named_auto time time_0_x 50
+ param_named_auto color surface_emissive_colour
+ }
+ }
+
+ }
+}
\ No newline at end of file
Added: data/trunk/programs/ps_glow.cg
===================================================================
--- data/trunk/programs/ps_glow.cg (rev 0)
+++ data/trunk/programs/ps_glow.cg 2012-10-21 15:49:55 UTC (rev 9408)
@@ -0,0 +1,5 @@
+float4 main(uniform float alpha_value, uniform float time, uniform float4 color) : COLOR
+{
+ color.w = alpha_value * ((sin(time * 5.0) / 3.14 + 1.0) / 2.0 );
+ return color;
+}
Added: data/trunk/programs/vs_glow.cg
===================================================================
--- data/trunk/programs/vs_glow.cg (rev 0)
+++ data/trunk/programs/vs_glow.cg 2012-10-21 15:49:55 UTC (rev 9408)
@@ -0,0 +1,8 @@
+void main(float4 position : POSITION, float3 normal : NORMAL, float2 uv : TEXCOORD0, out float4 oPosition : POSITION, out float2 oUv : TEXCOORD0, out float4 colour : COLOR,
+ uniform float4x4 worldViewProjMatrix, uniform float size_value, uniform float time )
+{
+ float4 myPosition = position;
+ myPosition.xyz += size_value * (1.0 + (sin(time * 5.0) + 1.0) / 5.0 ) * normal;
+ oPosition = mul(worldViewProjMatrix, myPosition);
+}
+
More information about the Orxonox-commit
mailing list