Lesere som deg er med på å støtte MUO. Når du foretar et kjøp ved å bruke lenker på nettstedet vårt, kan vi tjene en tilknyttet provisjon. Les mer.

Musikk og lydeffekter er en viktig del av spillopplevelsen, så selvfølgelig lar Pygame deg legge dem til i spillet ditt. Oppdag hvordan du legger til bakgrunnsmusikk og hvordan du spiller av lydeffekter som svar på hendelser i spillet. Finn også ut hvordan du utfører grunnleggende operasjoner som looping og justering av volum.

Opprette et enkelt spill

Begynn med å lage et enkelt spill der spilleren kan bevege seg til venstre og høyre. For å lage dette spillet, installer Pygame-modulen ved å bruke pip:

pip installer pygame

Importer og initialiser Pygame-modulen og lag et vindu på størrelse 500x500 med en bildetekst. Initialiser deretter variablene x, y, bredde, høyde og vel for spilleren. Her er vel hastigheten til spilleren.

import pygame

pygame.init()

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

pygame.display.set_caption("Enkelt spill")

x = 50
y = 50
bredde = 40
høyde = 60
vel = 5

løp = ekte

instagram viewer

Etter det, lag en while-løkke som kjører til du lukker spillvinduet. Se etter tastaturinndata ved å bruke pygame.key.get_pressed()-metoden. Reduser eller øk x-koordinaten hvis brukeren trykker på henholdsvis venstre eller høyre piltast. Tegn deretter et rektangel med de gitte koordinatene og oppdater skjermen.

samtidig som løpe:
pygame.time.delay(100)

til begivenhet i pygame.event.get():
hvis event.type == pygame. SLUTTE:
løp = Falsk

keys = pygame.key.get_pressed()

hvis keys[pygame. K_LEFT]:
x -= vel

hvis keys[pygame. K_RIGHT]:
x += vel

window.fill((0,0,0))
pygame.draw.rect (vindu, (255,0,0), (x, y, bredde, høyde))
pygame.display.update()

pygame.quit()

Legge til bakgrunnsmusikk ved hjelp av miksermodulen

Å legge til bakgrunnsmusikk til et spill er en enkel prosess med Mixer-modulen til Pygame. Start med å lage et musikkobjekt og laste inn ønsket musikkfil. Du kan deretter justere volumet før du spiller det. Her er et eksempel:

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

Du kan enkelt last ned opphavsrettsfri musikk og lydeffekter fra forskjellige nettsteder å eksperimentere med.

Legge til lydeffekter ved hjelp av simpleaudio-modulen

Du kan også legge til lydeffekter til spillet ditt ved å bruke simpleaudio-modulen. For å installere modulen, bruk denne kommandoen:

pip installer simpleaudio

For å begynne, importer simpleaudio-modulen og lag et WaveObject fra lydfilen.

import enkel lyd som sa
lyd = sa. WaveObject.from_wave_file('sound.wav')

Innenfor de eksisterende sjekkene for piltrykk, kall play()-metoden for å spille av en lyd når karakteren beveger seg til venstre eller høyre:

hvis keys[pygame. K_LEFT]:
x -= vel
play = sound.play()

hvis keys[pygame. K_RIGHT]:
x += vel
play = sound.play()

Tilleggsfunksjoner som sløyfemusikk og justering av volum

Du kan også implementere grunnleggende effekter som looping av musikk med play()-funksjonen og justere volumet ved å bruke set_volume(). Funksjonen set_volume() tar en flytende verdi mellom 0 og 1 som definerer volumet til musikken. Play()-funksjonen tar et argument som spesifiserer antall ganger musikken skal gjentas. Ved å bruke -1 som argument, kan du fortelle den at den skal løkke musikken.

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

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

Legg til to if-setninger for å teste om brukeren trykker på pil opp eller pil ned. Sett volumet på musikken til 1,0 hvis de trykker på pil opp-tasten, og 0,0 hvis de trykker på pil ned-tasten.

hvis keys[pygame. K_UP]:
pygame.mixer.music.set_volume(1.0)

hvis keys[pygame. K_DOWN]:
pygame.mixer.music.set_volume(0.0)

Alternative metoder for å legge til musikk og lydeffekter

Du kan også bruke andre metoder for å legge til musikk og lydeffekter, som pyglet-modulen. Nedenfor er kodebiten:

import pyglet

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

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

Det er mange fordeler med å bruke tredjepartsmoduler som pyglet. De gir en mer effektiv måte å legge til musikk og lydeffekter på.

Du finner all koden fra eksemplene i denne GitHub-depot.

Øk brukerengasjementet med musikk

Du kan bruke musikk og lydeffekter for å øke brukerengasjementet i spillet ditt. Musikk og lydeffekter kan gi en følelse av fordypning som kan gjøre spillet mye morsommere. Du kan til og med bruke dem på kreative måter som kjernemekanikk i spillet.