diff --git a/addons/nodetunnel/bin/~nodetunnel.dll b/addons/nodetunnel/bin/~nodetunnel.dll new file mode 100644 index 0000000..36cce39 Binary files /dev/null and b/addons/nodetunnel/bin/~nodetunnel.dll differ diff --git a/external/contain-icon.png b/external/contain-icon.png new file mode 100644 index 0000000..7e81df3 Binary files /dev/null and b/external/contain-icon.png differ diff --git a/external/destroy-icon.png b/external/destroy-icon.png new file mode 100644 index 0000000..a2bdd54 Binary files /dev/null and b/external/destroy-icon.png differ diff --git a/external/infect-icon.png b/external/infect-icon.png new file mode 100644 index 0000000..7a43dd7 Binary files /dev/null and b/external/infect-icon.png differ diff --git a/external/purge-icon.png b/external/purge-icon.png new file mode 100644 index 0000000..c9d9d13 Binary files /dev/null and b/external/purge-icon.png differ diff --git a/external/redirect-icon.png b/external/redirect-icon.png new file mode 100644 index 0000000..98fb8a1 Binary files /dev/null and b/external/redirect-icon.png differ diff --git a/external/title.clip b/external/title.clip index fd1896b..dde4708 100644 Binary files a/external/title.clip and b/external/title.clip differ diff --git a/external/trap markers.clip b/external/trap markers.clip index d4e53c5..3ace270 100644 Binary files a/external/trap markers.clip and b/external/trap markers.clip differ diff --git a/external/trigger-icon.png b/external/trigger-icon.png new file mode 100644 index 0000000..289eb02 Binary files /dev/null and b/external/trigger-icon.png differ diff --git a/templates/range_sphere.tscn b/templates/range_sphere.tscn index b673474..2fa8347 100644 --- a/templates/range_sphere.tscn +++ b/templates/range_sphere.tscn @@ -11,6 +11,7 @@ shader = ExtResource("1_besml") shader_parameter/intersection_color = Color(1, 1, 0, 1) shader_parameter/intersection_thickness = 0.05 shader_parameter/intensity = 5.0 +shader_parameter/dots_per_radian = 10.0 [sub_resource type="ShaderMaterial" id="ShaderMaterial_0fg7r"] render_priority = 0 diff --git a/visuals/shaders/intersection.gdshader b/visuals/shaders/intersection.gdshader index e2f76f9..115d909 100644 --- a/visuals/shaders/intersection.gdshader +++ b/visuals/shaders/intersection.gdshader @@ -4,7 +4,14 @@ render_mode blend_add, cull_disabled; uniform vec4 intersection_color : source_color = vec4(1.0, 0.5, 0.0, 1.0); uniform float intersection_thickness = 0.5; uniform float intensity = 1.0f; +uniform float dots_per_radian : hint_range(1.0, 50.0, 1.0) = 10.0f; uniform sampler2D DEPTH_TEXTURE : hint_depth_texture, filter_linear_mipmap; +varying vec3 v_normal; + +void vertex() { + v_normal = NORMAL; +} + void fragment() { // 1. Get linear depth of the scene (opaque objects) @@ -30,6 +37,12 @@ void fragment() { float strength = .25 + .75 * (1.0 + sin(TIME*3.0))/2.0; ALPHA = max(.05, intersect * intersection_color.a * strength); + float angle = atan(v_normal.z, v_normal.x); + float dot_step = (2.0f * PI) / dots_per_radian; + angle = round(angle / dot_step + 0.5f); + if(mod(angle,2.0) == 0.0){ + ALPHA = 0.0; + } if(ALPHA == .05){ ALBEDO = intersection_color.rgb; }else{