5

Also versuche ich mir neue Fähigkeiten anzueignen und ein einfaches Spiel aufzubauen.MonoGame - Projektlayout und Struktur (Architektur)

Ich bin C# Programmierer von Beruf und wie bei allen Projekten, sei es Web oder Formen Entwicklung, haben sie alle eine Art von Struktur zu ihm.

Ich mag Dinge beim ersten Mal richtig zu machen, und möchte wissen, ob es ähnlich strukturierte Ansätze zur Spielentwicklung mit MonoGame gibt. Ich habe versucht zu suchen, aber ich spreche natürlich nicht den Jargon.

Die einzigen Dinge, die ich bisher herausgefunden habe, sind das Trennen von Assets mit den Content-Pipeline-Projekten, aber es fühlt sich ein bisschen chaotisch an, alles andere in der einen Spielanwendung zu tun.

Idealerweise würde ich gerne ein Windows-Spiel haben, aber leicht auf andere Betriebssysteme portiert werden, und dabei muss ich natürlich bestimmte Logik trennen.

Ich habe festgestellt, dass es Tutorials gibt, die mich über Sprites und "Hallo Welt" -Spiele unterrichten, also denke ich, dass ich alle Hilfe finden werde, die ich brauche, wenn ich nur wüsste, wonach ich suchen soll.

Alle Ideen, Vorschläge und Links würden geschätzt werden, ich werde sogar Antworten abstimmen, die mir Begriffe geben, die in der Gaming-Entwicklungsarena verwendet werden.

UPDATE

stieß ich auf die folgenden bisher:

+2

Wenn man durch die Proben hilfreich sein könnten https://github.com/CartBlanche/MonoGame-Samples – craftworkgames

Antwort

1

Ich habe mit monogame seit etwa 3 Monaten und haben ein einfaches "Framework", das 3D- und 2D-Objekte rendert.

Ich denke, der beste Weg, etwas Struktur zu bekommen, wäre ein Blick auf Unity3D, die Szenen und GameObjects verwendet.

Keywords wäre: Scenegraph, GameObject.

2

nicht sicher, ob ich eine geeignete Person, die diese Frage zu beantworten, aber Sie können das überprüfen:

  1. Spiel Staaten

    Verwendung Zustandsmuster Spiel Staaten für die Verwaltung - es wird Übergang zwischen Zuständen machen (wie vom Menü zum Spiel gestartet Zustand usw.) und pausieren/pausieren einfacher - eine Art von GameStateManager, die richtige IGameState: Update, Render, LoadContent Methoden aufrufen.

  2. Spiel-Kamera

    über Transformationsmatrizen Lernen und Spiel-Kamera (SpriteBatch.Begin hat einen Parameter namens Matrix) verwenden. Mit der Spielkamera können Sie mit "internem Koordinatensystem" zeichnen - das bedeutet, dass alle Ihre Zeichnungspunkte im "imaginären Bildschirm der Auflösung zum Beispiel 1024x860" sind und später könnte es für die Benutzeranzeige skaliert werden. Sie schreiben für eine Auflösung und mit wenigen Zeilen können Sie mit anderen Auflösungen umgehen.Die Spielkamera könnte auch nützlich sein, wenn du alle deine gegnerischen Objekte drehen willst (sagen wir 1000 Monster) - anstatt jedes Objekt einzeln zu drehen, drehst du einfach dein Koordinatensystem (Spielkamera). Weitere Kontrolle: http://www.david-gouveia.com/portfolio/2d-camera-with-parallax-scrolling-in-xna/, http://www.david-amador.com/2009/10/xna-camera-2d-with-zoom-and-rotation/