Bygg ditt första spel i 2D – Spelprogrammering för nybörjare

av mar 24, 2021

Spelprogrammering är ett otroligt kul sätt att programmera. Förutom att man får man får möjlighet att skapa sina egna spel, så är det också ett bra sätt att bli en bättre programmerare!

Som nybörjare inom spelprogrammering kan det vara svårt att veta var man ska börja. Ofta behöver man något slags bibliotek för att på bästa sätt komma igång att bygga egna spel. Med ett bibliotek så får man färdigskriven kod och funktionalitet, vilket innebär att steget från idé till färdigt spel blir lite kortare.

Bygg spel i 2D

Hur programmerar man ett spel?

Vi rekommenderar biblioteket Pygame Zero som är en spelmotor för programspråket Python. Med Pygame Zero så kan vi snabbt komma igång att bygga egna spel med 2D-grafik. Pygame Zero har mycket av sin funktionalitet inbyggt, vilket innebär att vi inte behöver skriva särskilt många rader kod för att kunna komma igång med vårt spel.

Om man använder PyCharm för att programmera i Python så behöver man inte installera Pygame Zero på datorn, utan det läggs istället till i sitt projekt i PyCharm.

Om du vill lära dig mer om hur du kan bygga egna spel i 2D så har vi en kurs, Spelprogrammering i 2D, som lär ut just detta. Du hittar mer info om den under kurs.

Kycklingspelet – ditt första spel i 2D för nybörjare

  • Kycklingspelet är ett enkelt spel som går ut på att träffa kycklingar på skärmen på tid. Man har 30 sekunder på sig och ska träffa så många kycklingar som möjligt. När man har träffat en kyckling så dyker en ny upp på en slumpmässig position. Spelet är slut när 30 sekunder har gått.

För att bygga spelet så behöver vi följande:

  • En bakgrund och en bild på kycklingen
  • En funktion som målar upp bakgrundsbilden och kycklingen (draw)
  • En funktion som uppdaterar tiden som är kvar (update)
  • En funktion som tar emot musklick och kollar om vi har klickat på en kyckling (on_mouse_down)
  • Vi behöver också ett gäng variabler för att hålla koll på tiden som är kvar, antalet poäng, osv

De bilder som vi använder i spelet är gratis att ladda ner och använda, du hittar dom här:

Se videon nedan för att lära dig hur du kan bygga ditt första spel i 2D!

Kod till kycklingspelet

import pgzrun
import random
import time

WIDTH = 700
HEIGHT = 700

poäng = 0

slut_tid = time.time() + 30
tid_kvar = 30

kyckling = Actor("chicken", (300,300))

spel_slut = False

def draw():
    if spel_slut:
        screen.fill((0,0,0))
        screen.draw.text("Din poäng " + str(poäng), center=(WIDTH/2, HEIGHT/2), fontsize = 50)
    else:
        screen.blit("background", (0,0))
        kyckling.draw()
        screen.draw.text("Tid kvar: " + str(tid_kvar), center=(WIDTH/2, 50), fontsize=50)
        screen.draw.text(str(poäng), center=(WIDTH/2, 90), fontsize=50)

def update():
    global tid_kvar, slut_tid, spel_slut
    tid_kvar = round(slut_tid - time.time())
    if tid_kvar < 0:
        spel_slut = True

def on_mouse_down(pos):
    global poäng

    if kyckling.collidepoint(pos):
        kyckling.x = random.randint(0, WIDTH)
        kyckling.y = random.randint(0, HEIGHT)
        poäng += 1


pgzrun.go()

Vill du lära dig mer om spelprogrammering och hur du kan skapa egna spel i Python? Kolla in våra kurser!

Unga Programmerare håller kurser i programmering för barn och ungdomar. Unga Programmerare startades av studenter från Chalmers Tekniska Högskola.

Följ oss

Nyhetsbrev