From 06bf7bf2aeb98122f372f537f376e88b31b5b8d7 Mon Sep 17 00:00:00 2001 From: Fabien Freling Date: Mon, 27 Aug 2018 14:04:36 +0200 Subject: [PATCH] Add shine shader on flag --- levels/Level_01.tscn | 3 --- scenes/Goal.tscn | 16 ++++++++++------ 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/levels/Level_01.tscn b/levels/Level_01.tscn index 97dec8e..d1d6ce5 100644 --- a/levels/Level_01.tscn +++ b/levels/Level_01.tscn @@ -5,9 +5,6 @@ [ext_resource path="res://scenes/Goal.tscn" type="PackedScene" id=3] [ext_resource path="res://levels/Level_01_env.tres" type="Environment" id=4] - - - [node name="Level_01" type="Node" index="0"] [node name="GridMap" type="GridMap" parent="." index="0"] diff --git a/scenes/Goal.tscn b/scenes/Goal.tscn index 6f546a8..fc9a83c 100644 --- a/scenes/Goal.tscn +++ b/scenes/Goal.tscn @@ -7,7 +7,7 @@ extents = Vector3( 0.584547, 2.22627, 0.659734 ) -[sub_resource type="Shader" id=6] +[sub_resource type="Shader" id=2] code = "shader_type spatial; @@ -18,14 +18,18 @@ code = "shader_type spatial; //} void fragment() { - ALBEDO = vec3(1.0, 0.0, 0.0); // use red for material albedo; + float max_dist = 0.5; // maximum orthogonal distance from center in a [0,1] rectangle + // distance from the center, normalized on [0,1] + float center_dist = sqrt(pow(UV.x - 0.5, 2) + pow(UV.y - 0.5, 2)) / max_dist; + ALBEDO = vec3(1.0, 1.0, 0); + ALPHA = max(1.0 - center_dist, 0.0); } " -[sub_resource type="ShaderMaterial" id=7] +[sub_resource type="ShaderMaterial" id=3] render_priority = 0 -shader = SubResource( 6 ) +shader = SubResource( 2 ) [sub_resource type="Gradient" id=4] @@ -39,7 +43,7 @@ gradient = SubResource( 4 ) width = 2 _sections_unfolded = [ "Resource" ] -[node name="Scene Root" index="0" instance=ExtResource( 1 )] +[node name="Scene Root" instance=ExtResource( 1 )] script = ExtResource( 2 ) @@ -99,7 +103,7 @@ disabled = false transform = Transform( 250, 0, 0, 0, 500, 0, 0, 0, 1, 0, 0, 0 ) layers = 1 -material_override = SubResource( 7 ) +material_override = SubResource( 3 ) cast_shadow = 1 extra_cull_margin = 0.0 use_in_baked_light = false