Skip to content

Commit 7b04087

Browse files
committed
HUD hint buttons: Project shadow for better contrast
Use the same offset and color than the text label shadow.
1 parent abcce19 commit 7b04087

12 files changed

Lines changed: 50 additions & 0 deletions

scenes/ui_elements/input_hints/aim_input_hint.tscn

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
[gd_scene format=3 uid="uid://cqkly1vjd6xhy"]
22

3+
[ext_resource type="Material" uid="uid://cruf3tlajs4jo" path="res://scenes/ui_elements/input_hints/components/drop_shadow_material.tres" id="1_65rvq"]
34
[ext_resource type="Texture2D" uid="uid://bc8ffgelnq2nn" path="res://assets/third_party/inputs/atlas_kenney_input_prompts_1.4/keyboard/keyboard_arrows_none.tres" id="1_yljil"]
45
[ext_resource type="Script" uid="uid://bcx7jadxu27en" path="res://scenes/game_elements/props/hint/input_key/directional_input_hint.gd" id="2_k7hqe"]
56
[ext_resource type="Theme" uid="uid://cvitou84ni7qe" path="res://scenes/ui_elements/components/theme.tres" id="3_k7hqe"]
@@ -9,6 +10,7 @@ offset_right = 40.0
910
offset_bottom = 40.0
1011

1112
[node name="AimHint" type="TextureRect" parent="." unique_id=2095395309]
13+
material = ExtResource("1_65rvq")
1214
layout_mode = 2
1315
texture = ExtResource("1_yljil")
1416
script = ExtResource("2_k7hqe")
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
/**
2+
* Drop shadow shader
3+
*
4+
* This shader drops a shadow. Intended for button textures
5+
* in the input HUD.
6+
*
7+
* SPDX-FileCopyrightText: The Threadbare Authors
8+
* SPDX-License-Identifier: MPL-2.0
9+
*/
10+
shader_type canvas_item;
11+
12+
uniform vec2 offset = vec2(2.0, 2.0);
13+
uniform vec4 shadow_color: source_color = vec4(0.0, 0.0, 0.0, 1.0);
14+
15+
void fragment() {
16+
vec4 color = texture(TEXTURE, UV);
17+
vec4 shadow = texture(TEXTURE, UV - offset * TEXTURE_PIXEL_SIZE);
18+
shadow.rgb = shadow_color.rgb;
19+
shadow.a *= shadow_color.a;
20+
COLOR = mix(shadow, color, color.a);
21+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
uid://ddrxo4iq6cxk7
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
[gd_resource type="ShaderMaterial" format=3 uid="uid://cruf3tlajs4jo"]
2+
3+
[ext_resource type="Shader" uid="uid://ddrxo4iq6cxk7" path="res://scenes/ui_elements/input_hints/components/drop_shadow.gdshader" id="1_k7b6b"]
4+
5+
[resource]
6+
shader = ExtResource("1_k7b6b")
7+
shader_parameter/offset = Vector2(2, 2)
8+
shader_parameter/shadow_color = Color(0, 0, 0, 1)

scenes/ui_elements/input_hints/interact_input_hint.tscn

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
[ext_resource type="Theme" uid="uid://cvitou84ni7qe" path="res://scenes/ui_elements/components/theme.tres" id="1_txh2t"]
44
[ext_resource type="Script" uid="uid://ntkyy7hnkwh7" path="res://scenes/ui_elements/input_hints/components/labeled_input_hint.gd" id="2_y4ddx"]
5+
[ext_resource type="Material" uid="uid://cruf3tlajs4jo" path="res://scenes/ui_elements/input_hints/components/drop_shadow_material.tres" id="3_pwflt"]
56
[ext_resource type="Texture2D" uid="uid://d2s8w7any6x45" path="res://assets/third_party/inputs/atlas_kenney_input_prompts_1.4/keyboard/keyboard_space.tres" id="3_vvpol"]
67
[ext_resource type="Script" uid="uid://cbj0406q05dly" path="res://scenes/game_elements/props/hint/input_key/interact_input.gd" id="3_y4ddx"]
78
[ext_resource type="Resource" uid="uid://c1beocky1qjxi" path="res://scenes/game_elements/props/hint/resources/devices.tres" id="5_gekfg"]
@@ -11,6 +12,7 @@ theme = ExtResource("1_txh2t")
1112
script = ExtResource("2_y4ddx")
1213

1314
[node name="RepelHint" type="TextureRect" parent="." unique_id=492172300]
15+
material = ExtResource("3_pwflt")
1416
layout_mode = 2
1517
size_flags_vertical = 8
1618
texture = ExtResource("3_vvpol")

scenes/ui_elements/input_hints/movement_input_hint.tscn

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
[gd_scene format=3 uid="uid://dt1y8odxq0xys"]
22

33
[ext_resource type="Texture2D" uid="uid://bc8ffgelnq2nn" path="res://assets/third_party/inputs/atlas_kenney_input_prompts_1.4/keyboard/keyboard_arrows_none.tres" id="1_wvg1n"]
4+
[ext_resource type="Material" uid="uid://cruf3tlajs4jo" path="res://scenes/ui_elements/input_hints/components/drop_shadow_material.tres" id="1_yv88g"]
45
[ext_resource type="Theme" uid="uid://cvitou84ni7qe" path="res://scenes/ui_elements/components/theme.tres" id="3_ie8jv"]
56
[ext_resource type="Script" uid="uid://bcx7jadxu27en" path="res://scenes/game_elements/props/hint/input_key/directional_input_hint.gd" id="27_vxq6f"]
67

@@ -12,6 +13,7 @@ offset_bottom = 64.0
1213
size_flags_horizontal = 0
1314

1415
[node name="DirectionalInputHint" type="TextureRect" parent="." unique_id=883529731]
16+
material = ExtResource("1_yv88g")
1517
layout_mode = 2
1618
texture = ExtResource("1_wvg1n")
1719
script = ExtResource("27_vxq6f")

scenes/ui_elements/input_hints/repel_input_hint.tscn

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
[gd_scene format=3 uid="uid://dkx3dgc1br3b4"]
22

33
[ext_resource type="Theme" uid="uid://cvitou84ni7qe" path="res://scenes/ui_elements/components/theme.tres" id="1_ts6v2"]
4+
[ext_resource type="Material" uid="uid://cruf3tlajs4jo" path="res://scenes/ui_elements/input_hints/components/drop_shadow_material.tres" id="2_4govd"]
45
[ext_resource type="Script" uid="uid://cbj0406q05dly" path="res://scenes/game_elements/props/hint/input_key/interact_input.gd" id="3_af5s8"]
56
[ext_resource type="Resource" uid="uid://c1beocky1qjxi" path="res://scenes/game_elements/props/hint/resources/devices.tres" id="4_07f5k"]
67
[ext_resource type="Texture2D" uid="uid://dsre3bn521s4n" path="res://assets/third_party/inputs/atlas_kenney_input_prompts_1.4/keyboard/mouse_right_outline.tres" id="4_af5s8"]
@@ -10,6 +11,7 @@
1011
theme = ExtResource("1_ts6v2")
1112

1213
[node name="RepelHint" type="TextureRect" parent="." unique_id=142530974]
14+
material = ExtResource("2_4govd")
1315
layout_mode = 2
1416
size_flags_vertical = 8
1517
texture = ExtResource("4_af5s8")
@@ -18,6 +20,7 @@ action_name = &"repel"
1820
devices = ExtResource("4_07f5k")
1921

2022
[node name="TextureRectAlt" type="TextureRect" parent="." unique_id=53201882]
23+
material = ExtResource("2_4govd")
2124
layout_mode = 2
2225
size_flags_vertical = 8
2326
texture = ExtResource("8_j3y3l")

scenes/ui_elements/input_hints/reset_input_hint.tscn

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
[gd_scene format=3 uid="uid://cjg3rptgsh0lf"]
22

33
[ext_resource type="Texture2D" uid="uid://do0gp3uj3iiw3" path="res://assets/third_party/inputs/atlas_kenney_input_prompts_1.4/keyboard/keyboard_r.tres" id="1_qfkb4"]
4+
[ext_resource type="Material" uid="uid://cruf3tlajs4jo" path="res://scenes/ui_elements/input_hints/components/drop_shadow_material.tres" id="1_ykdc3"]
45
[ext_resource type="Script" uid="uid://cbj0406q05dly" path="res://scenes/game_elements/props/hint/input_key/interact_input.gd" id="2_jc2yi"]
56
[ext_resource type="Resource" uid="uid://c1beocky1qjxi" path="res://scenes/game_elements/props/hint/resources/devices.tres" id="3_qoa1j"]
67
[ext_resource type="Theme" uid="uid://cvitou84ni7qe" path="res://scenes/ui_elements/components/theme.tres" id="7_ut24o"]
@@ -11,6 +12,7 @@ custom_minimum_size = Vector2(64, 64)
1112
size_flags_horizontal = 0
1213

1314
[node name="ResetHint" type="TextureRect" parent="." unique_id=1319844575]
15+
material = ExtResource("1_ykdc3")
1416
layout_mode = 2
1517
size_flags_horizontal = 8
1618
size_flags_vertical = 8

scenes/ui_elements/input_hints/run_input_hint.tscn

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
[gd_scene format=3 uid="uid://badjtfhkj7gbt"]
22

33
[ext_resource type="Theme" uid="uid://cvitou84ni7qe" path="res://scenes/ui_elements/components/theme.tres" id="1_fw67w"]
4+
[ext_resource type="Material" uid="uid://cruf3tlajs4jo" path="res://scenes/ui_elements/input_hints/components/hint_button_material.tres" id="2_4tvpx"]
45
[ext_resource type="Script" uid="uid://cbj0406q05dly" path="res://scenes/game_elements/props/hint/input_key/interact_input.gd" id="2_fw67w"]
56
[ext_resource type="Texture2D" uid="uid://dnttje26if8fw" path="res://assets/third_party/inputs/atlas_kenney_input_prompts_1.4/keyboard/keyboard_shift_icon.tres" id="2_l8qil"]
67
[ext_resource type="Resource" uid="uid://c1beocky1qjxi" path="res://scenes/game_elements/props/hint/resources/devices.tres" id="4_1lsuh"]
@@ -10,6 +11,7 @@ custom_minimum_size = Vector2(64, 64)
1011
theme = ExtResource("1_fw67w")
1112

1213
[node name="RunHint" type="TextureRect" parent="." unique_id=809781428]
14+
material = ExtResource("2_4tvpx")
1315
custom_minimum_size = Vector2(64, 64)
1416
layout_mode = 2
1517
texture = ExtResource("2_l8qil")

scenes/ui_elements/input_hints/skip_input_hint.tscn

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
[gd_scene format=3 uid="uid://b50dfpi7c1sdw"]
22

3+
[ext_resource type="Material" uid="uid://cruf3tlajs4jo" path="res://scenes/ui_elements/input_hints/components/drop_shadow_material.tres" id="1_grytx"]
34
[ext_resource type="Texture2D" uid="uid://be8kao32d16ao" path="res://assets/third_party/inputs/atlas_kenney_input_prompts_1.4/keyboard/keyboard_x.tres" id="1_sb40v"]
45
[ext_resource type="Script" uid="uid://cbj0406q05dly" path="res://scenes/game_elements/props/hint/input_key/interact_input.gd" id="2_6gqhh"]
56
[ext_resource type="Resource" uid="uid://c1beocky1qjxi" path="res://scenes/game_elements/props/hint/resources/devices.tres" id="3_86k3p"]
@@ -11,6 +12,7 @@ custom_minimum_size = Vector2(64, 64)
1112
size_flags_horizontal = 0
1213

1314
[node name="InteractInput" type="TextureRect" parent="." unique_id=2083489092]
15+
material = ExtResource("1_grytx")
1416
layout_mode = 2
1517
size_flags_horizontal = 8
1618
size_flags_vertical = 8

0 commit comments

Comments
 (0)