Python und sein freies Spiel Entwicklung Bibliothek Pygame , behandeln einen großen Teil der Arbeit der einzelnen Spiele-Entwicklung für Sie, damit Sie sich auf Ihr Spiel konzentrieren Design . Dennoch Crysis wurde nicht an einem Tag geschrieben , so dass Sie brauchen, um herauszufinden, wo Videospiele selbst begann , indem sie ein Spiel wie " Pong ". Es ist vielleicht nicht , was Sie in Game Design zu tun bekommen , aber es wird Ihnen die Grundlagen und lassen Sie ein Spiel und läuft schnell . Things You
Pygame
brauchen anzeigen Weitere Anweisungen
1
öffnen Idle, der Standard Python IDE von Ihrem Windows-Startmenü. Klicken Sie auf " Datei" und " Neues Fenster ". Speichern Sie sofort neue Datei und geben Sie ihr den Namen " Ping.py. "
2
Holen Sie sich das Spiel-Umgebung bereit . Geben Sie Folgendes in Ihre Datei Ping.py :
import os , sysimport pygamefrom pygame.locals import *
screen = pygame.display.set_mode ( ( 640,480 ) )
Diese Einfuhren aus Python zusätzliche Befehle, die Sie benötigen , um Ihr Spiel zu schreiben und schafft ein neues Fenster für Ihr Spiel auf in. Hit "F5" ausführen, um das Programm auszuführen. Alternativ klicken Sie auf "Run" und "Run Module" aus dem Menü. Beide haben das gleiche Ergebnis - ein völlig transparentes Fenster wird auf Ihrem Desktop angezeigt. Es ist 640 Pixel breit und 480 Pixel hoch.
Und es wird abstürzen und geben Sie eine Fehlermeldung ziemlich schnell , denn obwohl das Fenster erstellt wurde , nichts mit ihr geschehen war .
3
erstellen des Spielers Paddel. Fügen Sie den folgenden Code , um Ihr Spiel sofort unter dem letzten Abschnitt des Codes :
PADDLE_WIDTH = 50PADDLE_HEIGHT = 10p1Paddle = pygame.Rect (10 , 430, PADDLE_WIDTH , PADDLE_HEIGHT )
PADDLE_COLOR = pygame.color . color ( "rot" ) = screen_color pygame.color.Color ( " schwarz ");
Dies teilt dem Computer mit , wie viele Pixel breit und hoch der Spieler die Paddel sollten sowie welche Farbe es sein sollte . Es erzählt auch Python , dass Sie Ihr Paddel, um 10 Pixel von der linken Seite des Bildschirms und 430 Pixel vom oberen Rand des Bildschirms sein wollen. Denken Sie daran, der Bildschirm 640 Pixel breit und 480 Pixel hoch ist, so wird das Paddel auf der linken Seite des Bildschirms , in der Nähe der Unterseite.
Außerdem definiert sie , dass der Bildschirm selbst wird die Farbe schwarz.
4
erstellen Sie den Puck. Geben Sie Folgendes in Ihr Spiel :
puckSpeedX = 1puckSpeedY = 1
PUCK_COLOR = pygame.color.Color ( "grün") = pygame.Rect Puck ( 320,240,10,10 )
Dies teilt dem Computer mit , welche Farbe der Puck sein wird und wo sie auf dem Bildschirm angeordnet werden. In diesem Fall wird es 320 Pixel von der linken und 240 Pixel von der Spitze. Es wird auch 10 Pixel breit und 10 Pixel hoch sein.
Schließlich, da der Puck bewegt sich aus eigenem Willen , braucht es eine Geschwindigkeit. Oft in einem 2D-Spiel wie " Pong ", ist es einfacher, in Geschwindigkeiten , wie groß ein Objekt horizontal bewegt und wie schnell es sich bewegt vertikal teilen. In diesem Fall wird der Puck horizontal (X) mit einer Geschwindigkeit von 1 und wird vertikal (Y) bei einer Geschwindigkeit von 1 auch bewegen
5
das Spiel Schleife durch Typisierung Set : .
while True : p1Paddle.left = pygame.mouse.get_pos ( ) [0] = puck.left puck.left + puckSpeedXpuck.top = puck.top + puckSpeedYscreen.fill ( screen_color ); screen.fill ( PADDLE_COLOR , p1Paddle ) screen.fill ( PUCK_COLOR , Puck) pygame.time.delay ( 10)
gehen Zeile für Zeile , die " while true " Befehl weist das Spiel zu laufen auf unbestimmte Zeit oder bis der Benutzer trifft die " Schließen "-Knopf auf seinem Fenster .
Weiter , erzählt er den Computer, den der Spieler Paddel sollte an der gleichen Stelle auf dem Bildschirm sein , horizontal , als der Mauszeiger . Auf diese Weise kann der Spieler den Puck durch Bewegung seiner Maus folgen . Der Puck selbst wird durch Zugabe von seiner X -und Y- Geschwindigkeiten , um seine Position auf dem Bildschirm bewegt . Dann zieht es den Bildschirm Hintergrund des Spielers Paddel und der Puck , in dieser Reihenfolge. Hit "F5 ", um das Spiel zu starten .
Beachten Sie irgendwelche Probleme ? Keiner Ihrer Grafiken mit dem Bildschirm gezeichnet . Nahezu alle modernen Spiele verwenden einen Trick namens " Double-Buffering ", um auf den Bildschirm zu zeichnen. Dies bedeutet, Grafiken in den Speicher und dann gezogen wird, gezogen auf einmal auf den Bildschirm später. Ohne Double-Buffering , haben Spielgrafik eine Gewohnheit Flackern. Zu sagen, Python eigentlich schreiben die Grafiken auf dem Bildschirm , oder " klappen Sie den Puffer , " die folgende Zeile hinzu , um das Spiel :
pygame.display.flip ();
Presse " F5 ", um das Spiel zu starten . Es ist immer noch ein ziemlich großes Manko im Spiel : der Puck fliegt einfach durch die Paddel und aus dem Bildschirm , als ob es nicht da war
6
hinzufügen Kollisionserkennung dem Puck. . Dies könnte erfordern ein wenig Auffrischung Neuling Algebra. Fügen Sie diesen Code , um Ihr Spiel -Schleife:
wenn puck.colliderect ( p1Paddle ) : puckSpeedY = puckSpeedY * -1
wenn puck.top <0 oder puck.bottom > 480 : puckSpeedY = puckSpeedY * -1
wenn puck.left <0 oder puck.right > 640 : puckSpeedX = puckSpeedX * -1
gehen eins nach dem anderen , zu prüfen , was hier passiert . Wenn der Puck prallt der Spieler paddeln , dann ist es Y Geschwindigkeit wird durch minus -1 multipliziert . Also, wenn die Y- Geschwindigkeit (Sie erinnern sich , das bedeutet, vertikale Geschwindigkeit ) 1 war , ist es jetzt minus -1 . So ist es in die entgegengesetzte Richtung vertikal bewegt . Das gleiche passiert, wenn der Puck geht an den oberen oder unteren Rand des Bildschirms. Und schließlich, wenn der Puck geht an den linken oder rechten Seite des Bildschirms , wird seine Geschwindigkeit X (oder seine horizontale Geschwindigkeit ) von minus -1 multipliziert . Hit "F5" , um Ihr Spiel laufen und sehen Sie die Wirkung .