generated from krampus/template-godot4
Using noise sampling for correlated randomized pitch in grunk collection sfx
All checks were successful
linting & formatting / build (push) Successful in 33s
All checks were successful
linting & formatting / build (push) Successful in 33s
This commit is contained in:
parent
bbb8a1e231
commit
d9e5b72041
@ -9,10 +9,13 @@ extends AudioStreamPlayer
|
||||
|
||||
@export var counter_decay := 40.0
|
||||
|
||||
@export var pitch_variance := 0.15
|
||||
@export var noise_rate := 0.01
|
||||
@export var noise: Noise
|
||||
|
||||
var _counter := 0.0
|
||||
|
||||
@onready var cooldown: Timer = %Cooldown
|
||||
@onready var debug_meter: ProgressBar = %DebugMeter
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
@ -26,9 +29,18 @@ func on_grunk_collected(delta: float) -> void:
|
||||
delta -= _counter
|
||||
_counter = interval
|
||||
var delay := randfn(delay_mean, delay_st_dev)
|
||||
get_tree().create_timer(delay).timeout.connect(play)
|
||||
get_tree().create_timer(delay).timeout.connect(play_random)
|
||||
_counter -= delta
|
||||
|
||||
|
||||
func _process(delta: float) -> void:
|
||||
_counter = move_toward(_counter, 0.0, counter_decay * delta)
|
||||
|
||||
|
||||
func play_random() -> void:
|
||||
var noise_sample := clampf(
|
||||
2 * noise.get_noise_1d(Engine.get_process_frames() * noise_rate), -1, 1
|
||||
)
|
||||
pitch_scale = 1.0 + (pitch_variance * noise_sample)
|
||||
print_debug("noise: ", noise_sample)
|
||||
play()
|
||||
|
@ -3,15 +3,14 @@
|
||||
[ext_resource type="AudioStream" uid="uid://cof6pg6yadsac" path="res://assets/sfx/tools/collect5.wav" id="1_y7it3"]
|
||||
[ext_resource type="Script" uid="uid://dwt66u7ua1to4" path="res://src/player/grunk_collection_sfx/grunk_collection_sfx.gd" id="5_ihwko"]
|
||||
|
||||
[sub_resource type="AudioStreamRandomizer" id="AudioStreamRandomizer_y7it3"]
|
||||
random_pitch = 1.2
|
||||
streams_count = 1
|
||||
stream_0/stream = ExtResource("1_y7it3")
|
||||
[sub_resource type="FastNoiseLite" id="FastNoiseLite_y7it3"]
|
||||
|
||||
[node name="GrunkCollectionSFX" type="AudioStreamPlayer"]
|
||||
stream = SubResource("AudioStreamRandomizer_y7it3")
|
||||
stream = ExtResource("1_y7it3")
|
||||
volume_db = -6.0
|
||||
script = ExtResource("5_ihwko")
|
||||
noise_rate = 1.0
|
||||
noise = SubResource("FastNoiseLite_y7it3")
|
||||
|
||||
[node name="Cooldown" type="Timer" parent="."]
|
||||
unique_name_in_owner = true
|
||||
|
Loading…
x
Reference in New Issue
Block a user