Spill uten lydeffekter kan føles kjedelige og uspennende. Forbedre spillopplevelsen din ved å inkludere bakgrunnsmusikk og lydeffekter.

I en verden av spillutvikling spiller lyd en sentral rolle i å forme den generelle spilleropplevelsen. Lydeffekter og bakgrunnsmusikk er kraftige verktøy som kan forbedre innlevelsen, atmosfæren og den emosjonelle innvirkningen til ditt Godot-spill.

Implementering av lydeffekter og bakgrunnsmusikk i Godot er ikke bare viktig, men overraskende enkelt. Motoren har innebygde funksjoner og funksjoner som forenkler prosessen, selv for de med begrenset kodeerfaring.

Sette opp Godot-spillet

Før du dykker inn i lydimplementering, sett opp et enkelt 2D-spill Godot-spillmotoren å tjene som grunnlaget. Start Godot og lag et nytt 2D-prosjekt. I Godot-editoren oppretter du en ny scene ved å høyreklikke på rotnoden og velge Legg til underordnet node.

Lage en KinematicBody2D node og navngi den Spiller. Inne i Spiller node, legg til en CollisionShape2D node med rektangelform. Denne formen representerer spillerens kollisjonsgrenser.

instagram viewer

Legg til en Sprite node inne i Spiller node for å visuelt representere spillerkarakteren. Du kan tilordne en sprite-tekstur til Sprite node for å gi karakteren din et visuelt utseende.

Koden som brukes i denne artikkelen er tilgjengelig i denne GitHub-depot og er gratis for deg å bruke under MIT-lisensen.

Legg nå til GDScript-koden for å gjøre det mulig for spilleren å bevege seg i alle fire retninger ved å bruke tastaturinndata.

extends KinematicBody2D

const SPEED = 150

func _physics_process(delta):
var velocity = Vector2.ZERO
if Input.is_action_pressed("move_right"):
velocity.x += SPEED
if Input.is_action_pressed("move_left"):
velocity.x -= SPEED
if Input.is_action_pressed("move_down"):
velocity.y += SPEED
if Input.is_action_pressed("move_up"):
velocity.y -= SPEED

velocity = move_and_slide(velocity)

Nedenfor er utgangen:

Legge til lydeffekter

For å legge til lydeffekter i Godot, bruk AudioStreamPlayer noder for å håndtere avspilling av lydfiler. Før du fortsetter, sørg for at du har lydfiler i støttede formater (som WAV eller OGG) importert til ditt Godot-prosjekt.

Du kan laste inn og spille av en lydeffekt når spilleren kolliderer med skjermens hjørne, noe som indikerer en situasjon utenfor grensen.

extends KinematicBody2D

# Declare an AudioStreamPlayer node as a class member
var sound_player := AudioStreamPlayer.new()

func _ready():
# Add the AudioStreamPlayer as a child to the player node
add_child(sound_player)

func _physics_process(delta):
#... (previous code)

var c1 = position.x <= 0
var c2 = position.x >= get_viewport().size.x
var c3 = position.y <= 0
var c4 = position.y >= get_viewport().size.y

if c1 or c2 or c3 or c4:
var sound_effect = load("res://path_to_sound_effect.wav")
sound_player.stream = sound_effect
sound_player.play()

Opprett en AudioStreamPlayer node og legg den til som et barn til spillernoden i løpet av _klar funksjon. Når spilleren kolliderer med skjermens hjørner, last inn lydeffekten ved å bruke laste funksjon og angi den som strømmen for AudioStreamPlayer.

Så ring spilleAudioStreamPlayer node for å starte avspilling av lydeffekten.

Legge til bakgrunnsmusikk

Bakgrunnsmusikk er en avgjørende komponent i ethvert spill, siden det setter stemningen og atmosfæren for spillerne. For bakgrunnsmusikk vil du ha en loopet lydfil (vanligvis i OGG-format) som spilles av kontinuerlig under spilling.

For å legge til bakgrunnsmusikk og sløyfe den i Godot, klikk på lydfilen som representerer bakgrunnsmusikken din i Godot FileSystem-panelet.

I Import fanen, vil du se ulike alternativer for lydimportinnstillinger. Se etter alternativet merket Løkke i Import fanen. Klikk på avmerkingsboksen ved siden av Løkke for å aktivere looping for lydfilen.

Etter å ha aktivert looping, klikk på Reimporter knappen nederst på Import fanen for å bruke endringene.

Legg nå til skriptet for å spille bakgrunnsmusikken:

extends KinematicBody2D

var bg_music := AudioStreamPlayer.new()

func _ready():
bg_music.stream = load("res://path_to_bg_music.ogg")
bg_music.autoplay = true
add_child(bg_music)

Opprett en AudioStreamPlayer node kalt bg_musikk. Still deretter inn strøm eiendom til bakgrunnsmusikken lastet ved hjelp av laste funksjon. Still også inn Auto spill eiendom til ekte, som automatisk starter avspilling når scenen er klar.

Med bakgrunnsmusikklydfilen riktig sløyfet under import, vil den nå spilles av og sløyfes sømløst under spilling, og gir en oppslukende opplevelse for spillerne gjennom hele spillet økt.

Spill av lyd på brukerinngang

Interaktive lydelementer kan ytterligere forbedre spillerens engasjement i spillet ditt. Du kan spille av en lydeffekt når spilleren trykker på mellomromsknappen.

extends KinematicBody2D

var bg_music := AudioStreamPlayer.new()
var input_sound := AudioStreamPlayer.new()

func _ready():
bg_music.stream = load("res://path_to_bg_music.ogg")
bg_music.autoplay = true
add_child(bg_music)
add_child(input_sound)

func _input(event):
if event.is_action_pressed("ui_accept"):
input_sound.stream = load("res://path_to_input_sound.wav")
input_sound.play()

I _inngang funksjon, se etter mellomromsknappen ved å bruke den betingede if-setningen. Hvis spilleren trykker på mellomromsknappen, last inn den tilsvarende lydeffekten ved å bruke laste funksjon og angi den som strøm for input_sound node.

Kontrollere lydegenskaper

I Godot kan du enkelt kontrollere ulike lydegenskaper ved å bruke AudioStreamPlayer node.

extends KinematicBody2D

var bg_music := AudioStreamPlayer.new()

func _ready():
bg_music.stream = load("res://path_to_bg_music.ogg")
bg_music.autoplay = true
bg_music.volume_db = -20
add_child(bg_music)

Du kan kontrollere volumet på bakgrunnsmusikken ved å bruke volume_db eiendom. Denne egenskapen justerer volumet på lyden i desibel (dB). Hvis du setter den til en negativ verdi, som -20, reduseres volumet med 20 desibel.

Inkludert tilleggsfunksjoner

Utover det grunnleggende, tilbyr Godot ulike funksjoner og muligheter for å heve lydopplevelsen din. Noen avanserte funksjoner du kan vurdere å legge til spillet ditt inkluderer:

Lydbassenger

Lydbassenger er grupper av forhåndsinnlastede lydprøver som du kan bruke på nytt gjennom hele spillet. I stedet for gjentatte ganger å laste inn lydeffekter fra disken, kan du forhåndslaste en pool av opphavsrettsfrie lydeffekter ved starten av spillet.

Du kan umiddelbart spille av en lydeffekt fra bassenget, redusere potensielle forsinkelser og forbedre ytelsen.

Crossfading

Crossfading lar deg lage jevne overganger mellom lydspor, perfekt for å skape sømløse skift i musikk eller stemning. Ved å justere volumet til to lydspor samtidig, kan du fade ut ett spor mens du fader inn et annet, noe som resulterer i en polert og oppslukende lydopplevelse.

3D romlig lyd

For 3D-spill er romlig lyd et verdifullt verktøy for å forbedre realismen. Godot tilbyr 3D-lydfunksjoner, som gjør at lyder kan oppfattes som å komme fra bestemte retninger i spillverdenen.

Ved å stille inn lydens posisjon og orientering i forhold til spillerens posisjon, kan du lage overbevisende lydsignaler som gir dybde og fordypning til spillet ditt.

Beste praksis for å legge til lydeffekter

Mens du implementerer lydeffekter, bør du vurdere følgende beste fremgangsmåter for å sikre en lydopplevelse av høy kvalitet:

  • Bruk lydfiler med passende komprimering for å finne en balanse mellom lydkvalitet og filstørrelse.
  • Hold lydeffekter korte og konsise, unngå for lange eller repeterende lyder.
  • Sørg for at de valgte lydene stemmer overens med spillets tema og kunststil, og fremmer samhørighet i den totale opplevelsen.
  • Test lyd på forskjellige enheter og plattformer for å bekrefte kompatibilitet og konsistens.

Gjør Godot-spill mer engasjerende med lydeffekter

Å legge til lydeffekter og bakgrunnsmusikk til Godot-spillet ditt kan være transformativt, og skape en dypt engasjerende opplevelse for spillere. Ved å gi lydtilbakemeldinger fordyper du spillere lenger inn i spillverdenen, vekker følelser og gjør den generelle opplevelsen morsommere.

Godt utformede lydeffekter kan øke forventningene, forsterke handlinger og legge til et lag med rikdom til spillet ditt. I mellomtiden setter bakgrunnsmusikken tonen, forbedrer atmosfæren og holder spillere betatt i lengre perioder.