Ich frage mich, ob es überhaupt ein XNA-Spiel gibt, ohne etwas anzuzeigen.
Ich habe ein funktionierendes Spiel, das in einem Client-Server-Setup ausgeführt wird, in dem ein Spieler der Host ist und andere Personen eine Verbindung zu seinem Spiel herstellen können.
Ich möchte jetzt in der Lage sein, das Spiel als Host auf einem bestimmten Server ohne Grafikkarte auszuführen. Grundsätzlich möchte ich überhaupt keine Draw () - Logik ausführen.
Muss ich wirklich das gesamte Spiel durchgehen und alle Verweise auf XNA entfernen?
Wie haben die Leute das gemacht?
BEARBEITEN : Der Grund, warum ich dies tun möchte, ist, dass ich ein funktionierendes Client-Server-Setup im Spiel habe und kein separates "kopfloses" Serverprogramm erstellen möchte.
Draw
wieif (headless) { return; }
?Antworten:
Erstellen Sie einfach ein normales C # -Projekt und fügen Sie die XNA-Binärdateien hinzu. Dadurch erhalten Sie Zugriff auf die XNA-Datentypen und Framework-Methoden. Mein Spiel macht das und es funktioniert einwandfrei.
quelle
Die Antwort lautet: Tu das nicht. Wenn Sie kein Spiel machen müssen - dh; Sie möchten die Vorteile von XNA nicht nutzen. Warum? Sie sollten sich wirklich mit der Entwicklung einer benutzerdefinierten Software befassen, die das gewünschte Spiel erfolgreich simulieren kann - normalerweise ein Konsolensystem. Wenn Sie weitere Details angeben, werde ich meine Antwort mit einer weniger allgemeinen Antwort aktualisieren.
quelle
Wenn Sie die Draw-Aufrufe einfach eliminieren möchten, haben Sie Folgendes versucht: Draw unterdrücken
quelle
Um auf dem Vorschlag von untitled aufzubauen, können Sie einfach Verweise auf die DLLs einfügen und diese verwenden, ohne eine der Standardspielschleifen zu verwenden. Beispiele hierfür finden Sie in der Winforms-Lernserie des Creators Club: http://xbox.create.msdn.com/en-us/education/catalog/sample/winforms_series_2
Auch wenn Sie noch ausgefallener werden möchten, können Sie die gesamte XNA-Spieleschleife durch Ihre eigene ersetzen und den gesamten Prozess steuern. Weitere Informationen hierzu finden Sie unter /programming/6361691/custom-xna-game-loop-in-windows
quelle
Wenn Sie den Ausgabetyp eines XNA-Projekts in "Konsolenanwendung" ändern, öffnet die Anwendung beim Start einfach eine leere Konsole, ohne jemals das eigentliche Spielfenster zu öffnen. Dies kann nützlich sein für das, was Sie erreichen möchten, da Sie Tests durchführen möchten und die Konsole sehr einfach als Debug-Fenster verwenden können.
quelle
Sie können auch in Betracht ziehen, das Update zu überschreiben, Anrufe zu zeichnen und einfach zurückzukehren.
Rufen Sie auch nicht das Grafikgerät in Ihren Hauptspielklassen auf, da dies verhindern sollte, dass das xna-Fenster auf dem Spiel als Server instanziiert wird.
quelle