Čitatelia ako vy pomáhajú podporovať MUO. Keď uskutočníte nákup pomocou odkazov na našej stránke, môžeme získať pridruženú províziu. Čítaj viac.

Hudba a zvukové efekty sú dôležitou súčasťou herného zážitku, takže Pygame vám ich samozrejme umožňuje pridať do vašej hry. Zistite, ako pridať hudbu na pozadí a ako prehrávať zvukové efekty v reakcii na udalosti v hre. Zistite tiež, ako vykonávať základné operácie, ako je slučkovanie a úprava hlasitosti.

Vytvorenie jednoduchej hry

Začnite vytvorením jednoduchej hry, v ktorej sa hráč môže pohybovať doľava a doprava. Ak chcete vytvoriť túto hru, nainštalujte modul Pygame pomocou pip:

pip install pygame

Importujte a inicializujte modul Pygame a vytvorte okno s veľkosťou 500x500 s popisom. Potom inicializujte premenné x, y, width, height a vel pre prehrávač. Tu vel je rýchlosť hráča.

importovať pygame

pygame.init()

okno = pygame.display.set_mode((500,500))

pygame.display.set_caption("Jednoduchá hra")

x = 50
y = 50
šírka = 40
výška = 60
vel = 5

bežať = Pravda

Potom vytvorte slučku while, ktorá bude prebiehať, kým nezatvoríte okno hry. Skontrolujte vstup z klávesnice pomocou metódy pygame.key.get_pressed(). Znížte alebo zväčšite súradnicu x, ak používateľ stlačí kláves so šípkou doľava alebo doprava. Potom nakreslite obdĺžnik s danými súradnicami a aktualizujte zobrazenie.

instagram viewer

zatiaľ čo spustiť:
pygame.time.delay(100)

pre udalosť v pygame.event.get():
ak event.type == pygame. UKONČIŤ:
bežať = Nepravdivé

keys = pygame.key.get_pressed()

ak kľúče [pygame. K_LEFT]:
x -= vel

ak kľúče [pygame. K_RIGHT]:
x += vel

window.fill((0,0,0))
pygame.draw.rect (okno, (255,0,0), (x, y, šírka, výška))
pygame.display.update()

pygame.quit()

Pridanie hudby na pozadí pomocou modulu mixéra

Pridanie hudby na pozadí do hry je jednoduchý proces s modulom Mixer v Pygame. Začnite vytvorením hudobného objektu a načítaním požadovaného hudobného súboru. Pred prehrávaním potom môžete upraviť hlasitosť. Tu je príklad:

pygame.mixer.music.load("bgmusic.wav")
pygame.mixer.music.set_volume(0.3)
pygame.mixer.music.play()

Môžete ľahko stiahnite si hudbu a zvukové efekty bez autorských práv z rôznych webových stránok, s ktorými môžete experimentovať.

Pridávanie zvukových efektov pomocou jednoduchého zvukového modulu

Pomocou modulu simpleaudio môžete do hry pridať aj zvukové efekty. Na inštaláciu modulu použite tento príkaz:

pip install simpleaudio

Ak chcete začať, importujte modul simpleaudio a vytvorte objekt WaveObject zo zvukového súboru.

importovať jednoduchý zvuk ako sa
zvuk = sa. WaveObject.from_wave_file('sound.wav')

V rámci existujúcich kontrol stlačenia šípok zavolajte metódu play() na prehrávanie zvuku, keď sa postava pohybuje doľava alebo doprava:

ak kľúče [pygame. K_LEFT]:
x -= vel
play = sound.play()

ak kľúče [pygame. K_RIGHT]:
x += vel
play = sound.play()

Ďalšie funkcie, ako je opakovanie hudby a nastavenie hlasitosti

Môžete tiež implementovať základné efekty, ako je prehrávanie hudby v slučke pomocou funkcie play() a nastavenie hlasitosti pomocou set_volume(). Funkcia set_volume() má plávajúcu hodnotu medzi 0 a 1, ktorá definuje hlasitosť hudby. Funkcia play() berie argument, ktorý určuje počet opakovaní hudby. Odovzdaním -1 ako argumentu mu môžete povedať, aby zacyklil hudbu.

pygame.mixer.music.load("bgmusic.wav")
pygame.mixer.music.set_volume(0.3)
pygame.mixer.music.play(-1)

zvuk = sa. WaveObject.from_wave_file('sound.wav')

Pridajte dva príkazy if, aby ste otestovali, či používateľ stlačí kláves so šípkou nahor alebo nadol. Nastavte hlasitosť hudby na 1,0, ak stlačia kláves so šípkou nahor, a na 0,0, ak stlačia kláves so šípkou nadol.

ak kľúče [pygame. K_UP]:
pygame.mixer.music.set_volume(1.0)

ak kľúče [pygame. K_DOWN]:
pygame.mixer.music.set_volume(0.0)

Alternatívne spôsoby pridávania hudby a zvukových efektov

Na pridanie hudby a zvukových efektov môžete použiť aj iné metódy, napríklad modul pyglet. Nižšie je uvedený útržok kódu:

importovať pyglet

hudba = pyglet.media.load("bgmusic.wav")
music.play()

zvuk = pyglet.media.load("sound.wav")
sound.play()

Existuje mnoho výhod používania modulov tretích strán, ako je napríklad pyglet. Poskytujú efektívnejší spôsob pridávania hudby a zvukových efektov.

Celý kód z príkladov nájdete v tomto úložisko GitHub.

Zvýšte zapojenie používateľov pomocou hudby

Hudbu a zvukové efekty môžete použiť na zvýšenie interakcie používateľov s vašou hrou. Hudba a zvukové efekty môžu pridať pocit ponorenia, vďaka čomu je hra oveľa príjemnejšia. Môžete ich dokonca použiť kreatívnym spôsobom ako základnú hernú mechaniku.