Plastic footsteps

This commit is contained in:
Rob Kelly 2025-04-01 12:38:15 -06:00
parent 76f6cff965
commit c1610629df
17 changed files with 168 additions and 11 deletions

Binary file not shown.

View File

@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://div20rlq8ync5"
path="res://.godot/imported/plastic1.wav-794d926ca63a1f188c40e6f854b3a8b5.sample"
[deps]
source_file="res://assets/sfx/footsteps/plastic/plastic1.wav"
dest_files=["res://.godot/imported/plastic1.wav-794d926ca63a1f188c40e6f854b3a8b5.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://dvyr3m24ccgrf"
path="res://.godot/imported/plastic2.wav-7fde480418e5945fd50869995510dbce.sample"
[deps]
source_file="res://assets/sfx/footsteps/plastic/plastic2.wav"
dest_files=["res://.godot/imported/plastic2.wav-7fde480418e5945fd50869995510dbce.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://djucfo3l7x7px"
path="res://.godot/imported/plastic3.wav-3f1a85212096e927a6e4e086c37a5f31.sample"
[deps]
source_file="res://assets/sfx/footsteps/plastic/plastic3.wav"
dest_files=["res://.godot/imported/plastic3.wav-3f1a85212096e927a6e4e086c37a5f31.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://cim5scvx3y6lk"
path="res://.godot/imported/plastic4.wav-52d2cab1714f4cb394db64cfbe66c6b7.sample"
[deps]
source_file="res://assets/sfx/footsteps/plastic/plastic4.wav"
dest_files=["res://.godot/imported/plastic4.wav-52d2cab1714f4cb394db64cfbe66c6b7.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

Binary file not shown.

View File

@ -0,0 +1,24 @@
[remap]
importer="wav"
type="AudioStreamWAV"
uid="uid://ck86vhmbg3xnj"
path="res://.godot/imported/plastic5.wav-2bc1ec30deb6f15a4a6d84a82dbe29e6.sample"
[deps]
source_file="res://assets/sfx/footsteps/plastic/plastic5.wav"
dest_files=["res://.godot/imported/plastic5.wav-2bc1ec30deb6f15a4a6d84a82dbe29e6.sample"]
[params]
force/8_bit=false
force/mono=false
force/max_rate=false
force/max_rate_hz=44100
edit/trim=false
edit/normalize=false
edit/loop_mode=0
edit/loop_begin=0
edit/loop_end=-1
compress/mode=2

View File

@ -82,7 +82,7 @@ shader_parameter/inflation_pixellation = 10.0
[node name="PlayerShip" type="Node3D"] [node name="PlayerShip" type="Node3D"]
script = ExtResource("1_0r2ng") script = ExtResource("1_0r2ng")
[node name="StaticBody3D" type="StaticBody3D" parent="."] [node name="StaticBody3D" type="StaticBody3D" parent="." groups=["PlasticMaterial"]]
collision_layer = 5 collision_layer = 5
[node name="PlayerShipMesh" type="MeshInstance3D" parent="StaticBody3D"] [node name="PlayerShipMesh" type="MeshInstance3D" parent="StaticBody3D"]

View File

@ -2,6 +2,7 @@ class_name FootController extends Node3D
@onready var metal: AudioStreamPlayer3D = $Metal @onready var metal: AudioStreamPlayer3D = $Metal
@onready var grunk: AudioStreamPlayer3D = $Grunk @onready var grunk: AudioStreamPlayer3D = $Grunk
@onready var plastic: AudioStreamPlayer3D = $Plastic
func get_player_for_material(surface_material: SurfaceMaterial.Type) -> AudioStreamPlayer3D: func get_player_for_material(surface_material: SurfaceMaterial.Type) -> AudioStreamPlayer3D:
@ -9,7 +10,7 @@ func get_player_for_material(surface_material: SurfaceMaterial.Type) -> AudioStr
SurfaceMaterial.Type.GRUNK: SurfaceMaterial.Type.GRUNK:
return grunk return grunk
SurfaceMaterial.Type.PLASTIC: SurfaceMaterial.Type.PLASTIC:
pass # TODO return plastic
SurfaceMaterial.Type.METAL: SurfaceMaterial.Type.METAL:
return metal return metal
SurfaceMaterial.Type.UNKNOWN: SurfaceMaterial.Type.UNKNOWN:

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=43 format=3 uid="uid://bwe2jdmvinhqd"] [gd_scene load_steps=49 format=3 uid="uid://bwe2jdmvinhqd"]
[ext_resource type="Script" uid="uid://buwh0g1ga2aka" path="res://src/player/player.gd" id="1_npueo"] [ext_resource type="Script" uid="uid://buwh0g1ga2aka" path="res://src/player/player.gd" id="1_npueo"]
[ext_resource type="Script" uid="uid://cx1yt0drthpw3" path="res://src/player/camera_controller.gd" id="2_veeqv"] [ext_resource type="Script" uid="uid://cx1yt0drthpw3" path="res://src/player/camera_controller.gd" id="2_veeqv"]
@ -24,8 +24,12 @@
[ext_resource type="AudioStream" uid="uid://bo3klycfvvq2q" path="res://assets/sfx/footsteps/metal/metal8.wav" id="19_j2873"] [ext_resource type="AudioStream" uid="uid://bo3klycfvvq2q" path="res://assets/sfx/footsteps/metal/metal8.wav" id="19_j2873"]
[ext_resource type="AudioStream" uid="uid://4mbqcr8vmd5c" path="res://assets/sfx/footsteps/grunk/grunk5.wav" id="19_o04tx"] [ext_resource type="AudioStream" uid="uid://4mbqcr8vmd5c" path="res://assets/sfx/footsteps/grunk/grunk5.wav" id="19_o04tx"]
[ext_resource type="AudioStream" uid="uid://btiyoi1ipofd" path="res://assets/sfx/footsteps/metal/metal10.wav" id="20_dpt0q"] [ext_resource type="AudioStream" uid="uid://btiyoi1ipofd" path="res://assets/sfx/footsteps/metal/metal10.wav" id="20_dpt0q"]
[ext_resource type="AudioStream" uid="uid://dvyr3m24ccgrf" path="res://assets/sfx/footsteps/plastic/plastic2.wav" id="20_vwi60"]
[ext_resource type="AudioStream" uid="uid://dmscjvx66fxlf" path="res://assets/sfx/footsteps/grunk/grunk2.wav" id="25_j2873"] [ext_resource type="AudioStream" uid="uid://dmscjvx66fxlf" path="res://assets/sfx/footsteps/grunk/grunk2.wav" id="25_j2873"]
[ext_resource type="AudioStream" uid="uid://djdixjel10yn1" path="res://assets/sfx/footsteps/grunk/grunk4.wav" id="26_dpt0q"] [ext_resource type="AudioStream" uid="uid://djdixjel10yn1" path="res://assets/sfx/footsteps/grunk/grunk4.wav" id="26_dpt0q"]
[ext_resource type="AudioStream" uid="uid://div20rlq8ync5" path="res://assets/sfx/footsteps/plastic/plastic1.wav" id="28_dpt0q"]
[ext_resource type="AudioStream" uid="uid://djucfo3l7x7px" path="res://assets/sfx/footsteps/plastic/plastic3.wav" id="29_wcxbk"]
[ext_resource type="AudioStream" uid="uid://ck86vhmbg3xnj" path="res://assets/sfx/footsteps/plastic/plastic5.wav" id="30_p6grl"]
[sub_resource type="Animation" id="Animation_x42xx"] [sub_resource type="Animation" id="Animation_x42xx"]
length = 0.001 length = 0.001
@ -185,6 +189,14 @@ stream_0/stream = ExtResource("17_a4vah")
stream_1/stream = ExtResource("18_vwi60") stream_1/stream = ExtResource("18_vwi60")
stream_2/stream = ExtResource("19_o04tx") stream_2/stream = ExtResource("19_o04tx")
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_o04tx"]
playback_mode = 1
random_pitch = 1.1
streams_count = 3
stream_0/stream = ExtResource("20_vwi60")
stream_1/stream = ExtResource("20_vwi60")
stream_2/stream = ExtResource("20_vwi60")
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_ylhto"] [sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_ylhto"]
random_pitch = 1.1 random_pitch = 1.1
streams_count = 5 streams_count = 5
@ -202,6 +214,14 @@ stream_0/stream = ExtResource("25_j2873")
stream_1/stream = ExtResource("26_dpt0q") stream_1/stream = ExtResource("26_dpt0q")
stream_2/stream = ExtResource("17_a4vah") stream_2/stream = ExtResource("17_a4vah")
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_e7e1q"]
playback_mode = 1
random_pitch = 1.1
streams_count = 3
stream_0/stream = ExtResource("28_dpt0q")
stream_1/stream = ExtResource("29_wcxbk")
stream_2/stream = ExtResource("30_p6grl")
[node name="Player" type="CharacterBody3D"] [node name="Player" type="CharacterBody3D"]
script = ExtResource("1_npueo") script = ExtResource("1_npueo")
@ -293,6 +313,11 @@ stream = SubResource("AudioStreamRandomizer_wcxbk")
volume_db = -20.0 volume_db = -20.0
bus = &"SFX" bus = &"SFX"
[node name="Plastic" type="AudioStreamPlayer3D" parent="FootstepController/LeftFoot"]
stream = SubResource("AudioStreamRandomizer_o04tx")
volume_db = -24.0
bus = &"SFX"
[node name="RightFoot" type="Node3D" parent="FootstepController"] [node name="RightFoot" type="Node3D" parent="FootstepController"]
unique_name_in_owner = true unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0.4, 0, 0)
@ -309,6 +334,11 @@ stream = SubResource("AudioStreamRandomizer_p6grl")
volume_db = -20.0 volume_db = -20.0
bus = &"SFX" bus = &"SFX"
[node name="Plastic" type="AudioStreamPlayer3D" parent="FootstepController/RightFoot"]
stream = SubResource("AudioStreamRandomizer_e7e1q")
volume_db = -24.0
bus = &"SFX"
[node name="FootCast" type="RayCast3D" parent="FootstepController"] [node name="FootCast" type="RayCast3D" parent="FootstepController"]
unique_name_in_owner = true unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0518835, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.0518835, 0)

View File

@ -12,10 +12,11 @@ const PLASTIC_MATERIAL_GROUP := "PlasticMaterial"
static func material_for_collider(collider: Node) -> SurfaceMaterial.Type: static func material_for_collider(collider: Node) -> SurfaceMaterial.Type:
if collider is GunkNode: if collider:
return Type.GRUNK if collider is GunkNode:
if collider.is_in_group(METAL_MATERIAL_GROUP): return Type.GRUNK
return Type.METAL if collider.is_in_group(METAL_MATERIAL_GROUP):
if collider.is_in_group(PLASTIC_MATERIAL_GROUP): return Type.METAL
return Type.PLASTIC if collider.is_in_group(PLASTIC_MATERIAL_GROUP):
return Type.PLASTIC
return Type.UNKNOWN return Type.UNKNOWN

View File

@ -49,7 +49,7 @@
- [ ] ui bonk - [ ] ui bonk
- [ ] prop clear glitter - [ ] prop clear glitter
- [x] metal footsteps - [x] metal footsteps
- [ ] plastic footsteps - [x] plastic footsteps
- [x] grunk footsteps - [x] grunk footsteps
- [x] beam noises - [x] beam noises
- [x] spray noises - [x] spray noises

View File

@ -25,3 +25,8 @@
- CC0 - CC0
- retrieved from https://freesound.org/people/Nox_Sound/sounds/548384/ - retrieved from https://freesound.org/people/Nox_Sound/sounds/548384/
- assets/sfx/footsteps/grunk/grunk*.wav - assets/sfx/footsteps/grunk/grunk*.wav
- "Footsteps_Boots_Tile_Mono.wav"
- author: Nox_Sound
- CC0
- retrieved from https://freesound.org/people/Nox_Sound/sounds/530588/
- assets/sfx/footsteps/plastic/plastic*.wav