Erstellen eines 2D-Sprite

Erstellen eines 2D-Sprite

Zeichnen Sie Ihre erste Sprites auf dem Bildschirm

Erstellen eines 2D-Sprite und bekommen es auf dem Bildschirm angezeigt wird, eine sehr schnell und schmerzlos Prozess der XNA-Framework, so lassen Sie uns beginnen!







Erstellen das neue Spiel-Projekt:

Zuerst beginnt sie von XNA Game Studio Express öffnen und ein neues Windows-Spiel-Projekt erstellen. Wenn Sie Probleme erinnern, wie ein neues XNA Windows-Spiel-Projekt zu erstellen, die Schritte in diesem Tutorial hier folgen und zurück zum diesem Tutorial kommen, nachdem Sie Ihr Gedächtnis aufgefrischt haben.

Nun lassen Sie uns die Bilder hinzufügen, die wir in diesem Tutorial, um das Spiel-Projekt mit gehen werden. Sie können die Bilder in dem Projekt von hier verwendeten herunterladen. Wenn Sie Probleme erinnern, wie Bilder zu einem XNA Game Projekt hinzuzufügen, nur die Schritte in diesem Tutorial folgen hier und kommen zu diesem Tutorial zurück, nachdem Sie Ihr Gedächtnis aufgefrischt haben.

Zeichnen des Sprite auf dem Bildschirm:

Auf den Code! Um damit zu beginnen, müssen wir eine Klasse Ebene Variablen hinzufügen, um die Textur zu speichern und es ist Position. Wenn Sie ein wenig verwirrt durch die Begriffe „Klasse“, „Variablen“ oder andere Codierungs Begriffe sind, wäre jetzt ein guter Zeitpunkt zu stoppen und Kopf auf mehr als auf dem Schöpfer Foren zu dieser FAQ Pinsel auf Ihrem C # Fähigkeiten Codierung. Der Versuch, zu lernen, beide wie in C # programmieren und lernen, wie den XNA-Framework verwenden und wie die Entwicklung von Spielen wird sich überwältigend schnell funktioniert! Sie werden nicht ein C # Experte werden müssen, aber Sie sollten zuerst die Grundlagen zumindest gehen zu lernen.

Erstellen Sie einige Objekte

Gehen Sie voran und fügen Sie diesen Code an der Spitze der Game1.cs Klasse.

Vector2 ist ein Objekt von XNA Framework bereitgestellt. Es wird verwendet, 2D-Positionsinformationen zu speichern. Texture2D ist eine weitere Aufgabe von XNA Framework bereitgestellt. Es wird verwendet, Bildinhalt vom Content Pipeline geladen zu halten. Beiden Vector2 und Texture2D Objekte werden viel in 2D-Spiele-Entwicklung mit XNA Framework verwendet werden, so ist es gut mit ihnen sehr vertraut zu machen.

Laden Sie den Inhalt

Nun lassen Sie uns fortfahren und unsere Textur laden. Wir werden dies tun, indem Sie einen Code zum „Loadcontent“ Methode hinzufügen. Sie brauchen nicht die „Loadcontent“ Methode zu schaffen, ist es bereits als Teil Ihrer Game1.cs Klasse erstellt, wenn Sie Ihr Windows-Spiel-Projekt erstellen. Wir werden nur eine neue Zeile Code zu dieser Methode werden, indem unsere Sprit Textur zu laden.

Die Linie, die wir hinzugefügt, verwendet den Content Manager die „SquareGuy“ Bild laden wir hinzugefügt tot er in unser Texture2D Objekt projizieren.

Zeichnen Sie die Sprite

Mit dem Texture2D Objekt geladen, können wir nun unseren Sprit tot er Bildschirm zeichnen. Alle Ihre Zeichnung sollte in der „Zeichnen“ Verfahren erfolgen. Dies ist eine weitere Methode, die in Ihrer Game1.cs Klasse ist bereits vorhanden. Es wird erstellt, wenn Sie zum ersten Mal ein neues Windows-Spiel-Projekt erstellen.

Fügen Sie den folgenden Code in das „Zeichnen“ -Methode.

Das Spritebatch-Objekt wird automatisch erstellt, wenn Sie ein neues Windows-Spiel zu machen. Spritebatch-Objekte sind, was verwendet wird, 2D-Bilder auf dem Bildschirm zu zeichnen. Um sie zu verwenden, müssen Sie zuerst durch den Aufruf von „Begin“ „Zeichnung“ initiieren.

Als nächstes ziehen Sie alle Bilder, die Sie wollen. In unserem Fall sind wir derzeit nur einen einzigen Sprit auf den Bildschirm zu zeichnen, aber einige Spiele könnten Hunderte oder Tausende von „Unentschieden“ Anrufen haben. Mit unserem Aufruf „Zeichnen“, übergeben wir in der Sprite-Textur wir gezogen werden sollen. Die Position auf dem Spielbildschirm wir es in gezeichnet werden sollen (unsere aktuelle Position X = 0 und Y = 0) und welche Farbe wollen wir Schatten unserer Sprit (mit Weiß, erzählt das Spritebatch-Objekt, das Sie wollen nicht anwenden Beschattung auf die Textur).







Schließlich sagen Sie das Spritebatch-Objekt, das Sie all die Dinge, um die Szene hinzugefügt haben, die Sie gezeichnet wollen und Ihnen sagen, es voran zu gehen und sie alle durch den Aufruf „End“ zu ziehen.

Erstellen eines 2D-Sprite

Ändern der Position des Sprite

Die Position unseres Sprite wird in unserem Vector2 Objekt gespeichert wir mPosition erstellt. Um das Sprite in eine neue Position zu ziehen, nur diese Werte ändern. Gehen Sie voran und mit diesen Werten spielen und sehen, wie sie funktionieren. Ändern, um die X-Position, dann die Position Y. Wenn Sie die Codezeile ändern wie folgt aussehen. Wo ist sie gezogen?

Ändern Sie diese Codezeile.

Einen „Sprite“ Class

Wählen Sie „Klasse“ aus dem „Neues Element hinzufügen“ -Dialog und geben Sie dann in dem Namen „Sprite“ in das Textfeld Name. Klicken Sie auf die Schaltfläche „Hinzufügen“, wenn Sie fertig sind.

Dadurch wird eine neue Klasse zu Ihrem Spiel hinzufügen namens „Sprite“ wir werden diese Klasse verwenden Sprite-Objekte in unserem Spiel zu erstellen.

Wenn Sie die neue Klasse erstellt, sollte haben das Codefenster für die Klasse geöffnet. Wir werden mit einigen XNA Framework-Objekten zu arbeiten, so dass wir die folgenden „mit“ Anweisungen am Anfang der Klassendatei hinzufügen müssen.

Als nächstes, so wie wir in der Game1.cs Klasse haben, wenn wir ein Bild auf den Bildschirm wurden Lernen zu ziehen, werden wir zwei Speicherobjekte auf die Sprite-Klasse hinzuzufügen, auf die gleiche Art und Weise verwendet werden.

Wir werden jetzt die Game1.cs Klasse ein wenig imitieren und unsere eigenen „Loadcontent“ Methode für unsere Sprite-Klasse zu erstellen. Diese Methode wird für das Sprite tun genau das, was die Loadcontent Methode funktioniert für die Game1.cs Klasse.

Fügen Sie die folgende Methode der Sprite.cs Klasse.

Sie können sehen, dass die Methode Loadcontent für unsere Sprite-Klasse in einigen Parametern nimmt. Die Sprite-Klasse nicht über einen Contentmanager zu tun, es ist geladen, so dass es „fragt“ für einen. Er will auch den Namen des Vermögenswerts wissen, dass es laden sollte in sie Texture2D ist Objekt. Diese beiden Werte werden in übergeben werden, wenn die Loadcontent-Methode aufgerufen wird. So, jetzt unsere Inhalte für das Sprite geladen wird, müssen wir jetzt zu ihm ziehen. Wir kopieren noch einmal die Art und Weise der Game1.cs Klasse funktioniert und fügen Sie einen „Draw“ -Methode zu unserer Sprite-Klasse.

Fügen Sie die folgende Methode, um den Sprite.cs cla

Da die Sprite-Klasse nicht über es Spritebatch eigenes ist (es ist eine gute Idee, um zu versuchen, die Anzahl der Spritebatch zu begrenzen Objekte, die Sie für Ihr Spiel erstellen), wird die Draw-Methode in der Klasse für ein Spritebatch Objekt darum bitten, dass es für das Zeichnen verwendet werden soll selbst.

Mit der neuen Sprite-Klasse

Wir werden nun die Game1.cs Klasse ändern das neue Sprite-Objekt zu verwenden, die wir geschaffen haben. Um damit zu beginnen, die folgenden Zeilen von Code aus dem oberen Rande der Game1.cs Klasse löscht.

Nun fügen Sie die folgende Codezeile der Game1.cs Klasse. Das wird unser Sprite-Objekt sein.

Als nächstes wollen wir unseren Sprit-Objekt zu „schaffen“, so dass es bereit ist, in unserer Game1.cs-Klasse verwendet werden. Um dies zu tun, fügen Sie die folgende Codezeile zum „Initialisieren“ -Methode. Die Initialize-Methode ist ein weiterer von diesen Methoden, die bereits für Sie erstellt, wenn Sie ein neues Windows-Spiel zu machen.

Mit unserem Sprite-Objekt erstellt haben, müssen wir jetzt laden es Inhalt ist. Wir werden tun, dass es Loadcontent-Methode aus der Game1.cs Loadcontent-Methode durch Aufruf. Wir werden eine neue Codezeile das Hinzufügen und den vorherigen Code zu entfernen wir in der Loadcontent-Methode geschrieben hatte.

Ändern Sie die Loadcontent-Methode wie folgt aussehen.

Berufung, die die SquareGuy Vermögenswert in das Texture2D Objekt in unserer Sprite-Klasse geladen werden. Jetzt brauchen wir nur auf den Bildschirm, um das Sprite zu zeichnen. Um das zu tun, ändern die Game1.cs Methode Draw wie folgt aussehen.

Die Positionierung des Sprite-Objekt

Um die Sprite zu positionieren, werden wir eine neue Zeile Code zu dem Loadcontent () -Methode hinzuzufügen. Ändern Sie den Loadcontent () -Methode wie folgt aussehen.

Dadurch ändert sich die Position des Sprites, so dass, wenn das Sprite selbst zieht es die neue Positionsinformationen verwendet man ihn gegeben hat. Sie können auch durch das Schreiben von Code wie dies nur ein einzelnes X und Y oder Position des Sprite ändern.

Zeichnung mehrere Sprites

Nun, da wir unsere Sprite-Klasse haben, ein zweites Sprit, um das Spiel hinzuzufügen, ist wirklich einfach. Um ein zweites Sprite hinzuzufügen, folgen Sie einfach die folgenden Schritte.

Erstellen eines 2D-Sprite

Das ist es, Glückwünsche auf dem Erhalten Ihre erste (und zweite!) Sprite auf den Bildschirm gezeichnet! Es ist vielleicht nicht wie viel scheinen, aber dies ist der erste Schritt in einige der grundlegenden Konzepte Aufbau Sie für Ihr erstes Spiel benötigen. Gehen Sie weiter und experimentieren ein wenig. Wenn Sie auf etwas stecken, nehmen Sie sich etwas Zeit, um die Foren zu suchen und sehen, wenn Sie es herausfinden können. Vor allem, stellen Sie sicher etwas Spaß haben!







In Verbindung stehende Artikel