2d-Sprite-Animationen ohne Verwendung von XNA oder anderen third-party-Bibliotheken
Erstellen Sie ein einfaches Spiel, ähnlich wie das, was kann erstellt werden, mit RPG-Maker. Was ich Suche in Erster Linie nach der im moment ein tutorial, das kann guide Sie mir, wie Sie, um es zu erreichen, ohne Verwendung von XNA oder andere spezifische Bibliothek.
Das ideal wäre eine Schritt-für-Schritt-tutorial oder eine gute, leicht verständliche Beispiel.
Mein Ziel ist es auf meine eigene, und kommen zu verstehen, wie der gesamte Prozess funktioniert mit Bezug auf animation Elemente in Bezug auf einander.
Habe ich bereits gebaut ein einfaches snake-Spiel in der Vergangenheit mit einem einfachen tutorial, aber es gab keine Bewegung animation, und das ist die primäre Sache, die ich lernen will weiter.
Edit:
Alle tutorials die ich gefunden habe, bisher die Verwendung von third-party-Bibliotheken. Ich kam über dieser link, aber ich bin auf der Suche nach etwas, was nicht enthalten XNA.
mhh nicht wirklich, was ich war hopping, weil Sie alle mit thirdpart lib ist, was ich nicht will
InformationsquelleAutor WiiMaxx | 2013-04-19
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es eine Reihe von Herangehensweisen an das Thema, das du da beschreibst. Ich werde Ihnen ein bisschen einen überblick, und dann hoffentlich einige Ressourcen, die Ihnen Beispiele für den Einstieg.
Im wesentlichen, sprite-basierte Animationen drehen sich um mit einer Reihe von ähnlichen Bildern, die-wenn Sie angezeigt sequentiell, schaffen den Eindruck von Bewegung, ähnlich wie ein flip-Buch.
Der trick ist zu verstehen, wenn das sprite sich bewegt (und damit animiert werden soll) - und wenn es noch steht (und daher sollte nicht animiert sein). In anderen Worten, vorausgesetzt, dass Ihr Spiel Charakter ist eigentlich nur zu bewegen, während Sie drücken Sie auf ▲, ▶, ▼ oder ◀, die Sie brauchen, um zu erkennen, wenn eine dieser Tasten startet und Stoppt gedrückt wird, so dass Sie können starten/stoppen Sie die animation entsprechend an.
Vorstellen, dass es für die Einfachheit, Sie haben nur 2 sprites. Die erste (Links, unten) repräsentiert deinen Charakter noch steht, und die zweite stellt Ihren Charakter mid-step (rechts, unten):
Wenn die ▶ - Taste ist nicht gedrückt, Sie einfach ständig angezeigt, das erste Bild. Wenn die ▶ - Taste ist gedrückt, Taste schalten Sie zwischen den beiden jeden
x
Millisekunden (je nachdem, wie schnell Sie wollen, dass die animation angezeigt wird).Einer animierte .gif ist ein format, in dem Sie enthalten eine Reihe von einfachen Bild-frames, die dazu bestimmt sind, angezeigt werden, als eine Serie (und daher die illusion der animation). Wenn Sie erstellen Sie Ihre sprites, die dieses format benutzen, könnten Sie code verwenden, ähnlich der die man in dieser Diskussion SO, die einige Beispiel-code, wie C# zu werden animiert, animiert .gif und Steuern den start/stop.
Alternativ, wenn Sie wollten, dass die Verwendung einer sprite-Datei (wie die, die ich oben aufgeführt), die Sie verwenden könnte etwas ähnliches zu das CodeProject-code, die sich auf die GDI-Interaktion mit dem Windows-Umgebung, um zu extrahieren und malen Sie einen Teil des Sprites in ein Ziel-canvas. Von Malerarbeiten jeder
x
Millisekunden (wie oben erwähnt), so kann den gleichen Effekt.Ein paar Dinge im Auge zu behalten:
Werden Sie behandeln müssen, die Transparenz in Ihre sprites (die Mario-sprite oben, als Beispiel, hat einen transparenten hintergrund) - so dass der hintergrund der Spiel-Umgebung zeigt, durch. Wenn mit GDI - dies alles hat zu tun mit, wie Sie rufen Sie die Malerei Methoden. Wenn Sie eine animierte .gif - Methode zu verwenden, hängt davon ab, wie zeigen Sie es auf Ihrem Fenster.
Für einige zusätzliche Hinweise /Beispiele /Referenzen, schauen Sie sich die folgenden Ressourcen:
Und für Sprite-Entwicklung:
sehr froh, dass es geholfen hat!
InformationsquelleAutor Troy Alford
Warf ich zusammen, als Beispiel dafür, was ich denke, es ist, dass Sie nachher waren. Dieses Beispiel angewendet werden kann, um Tasten-oder Bild-Boxen. Ich wählte diesen Weg, der von der Einfachheit.
Jede Instanz einer animation hat einen timer, und eine Liste von Bildern. Aktualisierung des Bildes der Ziel-Steuerelement wenn der timer feuert die Veranstaltung.
Hochgeladen habe ich meine Projekt-Datei hier. http://mcspazzy.com/code/ParTest.zip
Hoffentlich ist es genug, um zu helfen. Fragen Sie einfach, wenn Sie brauchen mehr Erklärung.
Klasse
Dies war in meinem Form load. Kann wirklich überall hingehen, das Zeug ist initialisiert.
InformationsquelleAutor Andy
Schnelle Suche fand ich dieses Beispiel.
Ich bin nicht sehr erfahren in c# - Grafik, aber hier sind einige Punkte, die ich gelernt habe, die Arbeit mit nicht-Grafik-orientierten Sprachen:
Sie brauchen separates Bild für jedes frame, wie animierte gifs. Wechseln Sie, was Bild, das Sie zeigen, je nach situation. Es ist nicht wirklich möglich zu morphen, die Grafik während der Laufzeit. Für die, die Sie benötigen, die richtige 3d-engine und wireframed Grafiken oder Vektor/polygon Lösung. Aber keiner von denen sind keine sprites mehr 🙂
Um es klarzustellen: mit sprites für die animation ist nur eine illusion, die Sie erreichen, indem Sie die Anzeige verschiedener Bilder in Folge.
ich weiß, dass, aber ich weiß nicht, wie Sie diese erreichen. aus diesem Grund bin ich Frage hier für ein Beispiel ...
Haben Sie den link, den ich gepostet? Es ist c# code Beispiel, wie es zu tun.
InformationsquelleAutor Sopuli