Heim > Technologie-Peripheriegeräte > IT Industrie > Retro -Revolution: Aufbau eines Pong -Klons in Einheit

Retro -Revolution: Aufbau eines Pong -Klons in Einheit

Joseph Gordon-Levitt
Freigeben: 2025-02-19 09:01:10
Original
394 Leute haben es durchsucht

Einheit Pong Klonen -Tutorial: Erstellen Sie klassische Spiele Schritt für Schritt

Bevor Sie beginnen, können Sie das Spiel auf itch.io

anzeigen

Retro Revolution: Building a Pong Clone in Unity

Kernpunkte

  • Aufbau eines Pong -Klons in Einheit enthält mehrere wichtige Schritte, einschließlich der Einrichtung der Spielumgebung, der Hinzufügen von Spielern, Bällen und Grenzkollisionen, der Implementierung der feindlichen KI, der Erzeugung von Bällen und dem Hinzufügen grundlegender Textanweisungen.
  • Zu den Einstellungen für die Spielumgebung für Spielumgebungen gehören das Erstellen eines neuen 2D -Projekts in Einheit, die Festlegung des Seitenverhältnisses des Spielbildschirms auf 4: 3 und das Erstellen von Ordnern für Skripte, Sprites, Vorfabriken und Materialien. Sie müssen das Sprite herunterladen und in den Sprite -Ordner hinzufügen und die Einheiten pro Pixel einstellen, um ein klares und sauberes Erscheinungsbild zu gewährleisten.
  • Spielereingabe wird über ein C# -Skript namens "PlayerController" hinzugefügt, das die Geschwindigkeit und die Reichweite der Spielerbewegung des Spielers festlegt. Fügen Sie Box Collider 2D zum Player GameObject hinzu, um Kollisionen zu bewältigen.
  • Ball- und Grenzkollisionen werden verwaltet, indem ein Physik2d -Material mit dem Namen "Bounce" erstellt wird, wobei die Elastizität auf 1 und die Reibung auf 0 eingestellt ist. Fügen Sie Circle Collider 2D und Rigidbody 2D dem Ballspielobjekt hinzu, um seine Interaktion mit der Umgebung zu verwalten.
  • Feind AI wird durch ein C# -Skript namens "EnemyController" implementiert, das die Geschwindigkeit des Feindes festlegt und Bewegungen als Reaktion auf die Position des Balls verwaltet. Der Zielfernrohr des Feindes befindet sich auch in diesem Skript.
  • Die Ballgeneration erstellt ein "Ballspawner" -Pame -Objekt und ein C# -Skript namens "BallspawnerController". Dieses Skript überprüft die Anwesenheit eines Balls und erstellt, wenn nicht, einen neuen Ball.

Pong -Spielanalyse

Pong ist eines der frühesten Videospiele und das erste erfolgreiche Werbespiel. Als Pong zum ersten Mal erstellt wurde, war es sehr wahrscheinlich, dass es Entwicklern mit der Codelogik schwer fiel, aber heutzutage können Sie ein einfaches Zwei-Spieler-Pong-Spiel mit einem Methode Call, Collider und Sprite erstellen. Sobald Sie sich entschieden haben, ein Einzel -Pong -Spiel zu erstellen, wird die Schwierigkeit, Pong zu machen, zunehmen. In diesem Tutorial werden wir das grundlegende Gameplay von Pong erstellen und eine sehr einfache KI -Alternative aufschlüsseln, die den Wert des Spiels immer noch erhöht.

Wir müssen fragen, was sind die Kernelemente des Pong -Gameplays? Hier ist eine Liste von Antworten auf diese Frage:

  1. Spielereingabe - Wir möchten, dass die Spieler ihren Schläger nach oben und unten verschieben können, um einen Treffer zu erzielen.
  2. Ball -Kollision - Wenn der Ball einen Schläger oder eine Grenze trifft, darf er keine Geschwindigkeit verlieren.
  3. Border -Kollision - Der Ball muss in der Lage sein, vom oberen und unteren Bildschirmrand zu springen, damit er den Spielbereich nicht verlässt.
  4. Feind AI - Wenn der Feind am anderen Ende des Bildschirms sitzt und sich nicht bewegt, ist die Spielbarkeit des Spiels fast Null.
  5. Ball erzeugen - Wenn der Ball eine der Grenzen hinter dem Schläger erreicht, müssen wir ihn regeneriert, damit wir das Spiel fortsetzen können.
  6. Ball-to-Racquet-Kollisionsbereichserkennung-Auf diese Weise kann der Ball in einem einzigartigen Winkel vom Schläger abprallen, damit wir den Ball besser zielen können, wenn wir den Schläger damit schlagen.

Mit dieser Liste können wir mit dem Schreiben von Spielprogrammen beginnen.

Bitte beachten Sie, dass eine beliebige Zahl in Bezug auf Position, Rotation, Zoom usw. des Spielobjekts relativ ist und möglicherweise gemäß Ihren spezifischen Einstellungen geändert werden muss.

Stellen Sie das Spiel

fest

Jetzt, da wir die Grundprinzipien von Pong analysiert haben, können wir das Spiel einrichten. Öffnen Sie die Einheit und erstellen Sie ein neues 2D -Projekt. Sobald der Editor geöffnet ist, setzen Sie das Seitenverhältnis des Spielbildschirms auf 4: 3. Wir verwenden 4: 3, da dies eines der häufigsten Bildschirmverhältnisse ist und die Standardverhältnisse am nächsten ist. Erstellen Sie im Ressourcenbereich vier Ordner, die als Skripte, Sprites, Vorbereitungen und Materialien bezeichnet werden. Diese Ordner werden verwendet, um alle unsere Spielressourcen zu speichern.

Retro Revolution: Building a Pong Clone in Unity

Laden Sie das erforderliche Bild des Spiels herunter und fügen Sie es in den Ordner "Sprite" hinzu (kann mit Drag & Drop erfolgen). Das Bild, das wir gerade hinzugefügt haben, ist das im Spiel verwendete Sprite (interaktives Spielobjekt).

Retro Revolution: Building a Pong Clone in Unity Retro Revolution: Building a Pong Clone in Unity Retro Revolution: Building a Pong Clone in Unity

Wir müssen die pro-Pixel-Einheiten des Sprite ändern, damit sie die Standards erfüllen. Normalerweise verwende ich 64 Pixel pro Pixeleinheit, da die meisten Sprites klar und sauber aussehen und ihre relative Größe aufbewahren. Sie können sich pro Pixeleinheiten als Pixeldichte vorstellen, die im 1 × 1-Raum im Unity Editor zugewiesen wurden.

Stellen wir die Einheiten des Quadrats pro Pixel auf 64 und die Einheiten des Kreises pro Pixel auf 128 ein. Wir können diese drei Bilder weiter zum Hierarchie -Panel hinzufügen.

Retro Revolution: Building a Pong Clone in Unity

Jetzt müssen wir jede Ressource benennen und ihre ersten Eigenschaften und Beschriftungen festlegen. Sie können den Blue Block "Player" nennen und die X-Position des Spielers auf 6 und sein X-Skalierungsverhältnis auf 0,2 einstellen.

Wir müssen ein Tag erstellen, um das Schlägerspielobjekt von den anderen Spielobjekten zu trennen. Im Großen und Ganzen können Sie sich Tags als Kategorien von Spielobjekten vorstellen. Klicken Sie auf Unagged (unter dem Spielernamen) und wählen Sie Tag hinzufügen. Erstellen Sie ein neues Tag namens "Paddle", wählen Sie das Player -Spielobjekt erneut aus und setzen Sie sein Tag auf Paddle.

Nennen Sie den roten Block "Feind". Setzen Sie die X -Position des Feindes auf -6 und sein X -Scaling -Verhältnis auf 0,2. Machen Sie das feindliche Spielobjektlabel -Paddel.

Nennen Sie den grauen Kreis "Ball" und erstellen Sie ein neues Etikett namens "Ball". Stellen Sie sicher, dass Sie das Etikett des Ballobjekts auf den Ball einstellen.

(Die folgenden Schritte werden nur einen Überblick über die Schritte und Schlüsselcode -Snippets aufgrund von Platzbeschränkungen enthalten. Bitte beziehen Sie sich auf den Originaltext oder ergänzen Sie ihn selbst im Detail)

Player -Eingabe

hinzufügen

Erstellen Sie ein C# -Skript namens "PlayerController" und fügen Sie den folgenden Code hinzu (steuert die Bewegung des Spielers des Spielers):

public float speed = 10;
public float topBound = 4.5F;
public float bottomBound = -4.5F;

void FixedUpdate () {
    float movementSpeedY = speed * Input.GetAxis("Vertical") * Time.deltaTime;
    transform.Translate(0, movementSpeedY, 0);
    // ... (边界限制代码)
}
Nach dem Login kopieren

Ball -Kollision

Erstellen Sie ein Physik2d -Material namens "Bounce", setzen Sie seine Elastizität auf 1 und die Reibung auf 0. Fügen Sie Circle Collider 2D und Starridbody 2D zum Ballspielobjekt hinzu und setzen Sie das Material auf "Sprung".

Grenzkollision

Erstellen Sie vier leere Spielobjekte als Grenzen (linke, rechts, nach oben, oben, in Flaschen), fügen Sie Box Collider 2D hinzu und setzen Sie seine Eigenschaften. Erstellen Sie ein Skript namens "BoundController", das den mit der Grenze kollidierten Ball erkennt und den Ball zerstört.

Feind ai

Erstellen Sie ein Skript namens "EnemyController", das die Bewegung des Feindschlägers so kontrolliert, dass es dem Ball folgt.

public float speed = 1.75F;
Transform ball;
Rigidbody2D ballRig2D;

void FixedUpdate () {
    ball = GameObject.FindGameObjectWithTag("Ball").transform;
    ballRig2D = ball.GetComponent<Rigidbody2D>();
    // ... (根据球的位置移动敌人的代码)
}
Nach dem Login kopieren

Ball

erzeugen

Erstellen Sie ein leeres Spielobjekt "Ballspawner" und erstellen Sie ein Skript namens "BallspawnerController", um den Ball zu regenerieren, wenn er verschwindet.

Fügen Sie grundlegender Text

hinzu

Erstellen Sie ein UI -Textobjekt, um die Spielbeschreibung anzuzeigen.

Schlussfolgerung

Sie haben jetzt erfolgreich einen grundlegenden Single-Player-Pong-Klon in Unity2D erstellt. Für mehr Übung versuchen Sie, über Möglichkeiten nachzudenken, um das Spiel zu verbessern - zum Beispiel, um dem Ball Beschleunigung zu verleihen (je mehr der Ball trifft, desto schneller ist der Ball), und verleihen Sie dem Schläger Intier der Feind und so weiter.

(Der FAQ -Teil wird hier aufgrund der Länge des Artikels weggelassen. Der Originaltext enthält detaillierte FAQ -Antworten)

Das obige ist der detaillierte Inhalt vonRetro -Revolution: Aufbau eines Pong -Klons in Einheit. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage