2009-03-02 5 views
1

Erstelle ein kleines Spiel mit OpenGL als Nebenprojekt. Gehen, ein Top-Down-Shooter mit Schwerpunkt auf eine große Anzahl von Feinden (je mehr desto besser) bei 800x600 die Auflösung max outOpenGL-Spiel mit mehreren Entitäten auf dem Bildschirm auf einmal, welche Sprache zu verwenden?

Denken sein darüber, dass (für einen alten Schule fühlen)

Welche Sprache würden Sie empfehlen, Ist C# in der Lage, die Anzahl der gewünschten Entitäten auf dem Bildschirm (60-100) zu verarbeiten oder sollte ich C oder C++ oder eine andere Sprache ausprobieren?

Haben Sie weitere Vorschläge haben, wenn für ein Projekt wie dieses geht, Sie spezielle Dokumentation empfehlen usw.

Antwort

3

C# leicht in der Lage ist, auf einmal ein paar hundert Objekte der Handhabung. Die wirklichen Geschwindigkeitsprobleme kommen vom Rendern, das nicht in C# -Raum ist, und möglicherweise von jeder Berechnung, die Sie für jedes Objekt durchführen möchten, wie zum Beispiel Physik. Im Idealfall würden Sie dafür sowieso eine Bibliothek wie Box2D oder Chipmunk verwenden, wodurch auch die Geschwindigkeit von C# kein Thema ist.

Ich wäre persönlich bereit, ein Spiel wie dieses in noch höheren Sprachen als C# zu schreiben. C# sollte einfach ausreichen.

+0

Obwohl es etwas auf die Komplexität der einzelnen Entitäten in Bezug auf Polygone und Texturen abhängt ... –

+0

Ich bezweifle es. Beides gilt immer noch für die Rendering und Physik, die C# nicht machen sollte. Es gibt auch einige Kosten in C#, aber ich kann es nicht als signifikant genug bezeichnen, um den Wechsel zu C++ in einem 2D-Top-Down-Shooter zu rechtfertigen. –

+0

Akzeptiert für den letzten Absatz und den Kommentar zu Danieltalkys Antwort. –

1

Haben Sie in Betracht gezogen Haskell, D oder ADA?

C# wird definitiv in der Lage sein, mit dürftigen 60-100 OpenGL-gerenderten Einheiten auf jeder vernünftigen Hardware umzugehen.

4

Auf den Skriptsprachen Spitze, die ausgezeichnete Pygame in Python betrachten:

http://www.pygame.org/news.html

Oder die neuere LÖVE in Lua

http://love2d.org/

Für einen Top-Down-Shooter wahrscheinlich beide sind ausgezeichnete Auswahl.

+0

Komischerweise ist Pygame genau das, was nicht mit einer großen Anzahl von Entitäten auf dem Bildschirm zu tun hat. Aufgrund der Art, wie der Bildschirm aktualisiert wird, ist es ziemlich langsam, wenn große Teile aktualisiert werden müssen. Pyglet oder Cocos2D wäre eine bessere Wahl. Pygame kann verwendet werden, aber warum stören? –

+0

LÖVE hat SpriteBatching. Ich habe es selbst nicht benutzt, es klingt wie eine schöne Art, den Bildschirm mit vielen Sprites zu besprengen. – Tommy

1

Im Allgemeinen würde ich für ein Projekt dieses Umfangs empfehlen, die Sprache zu verwenden, die Sie als nächstes lernen möchten.

Ihr Projektumfang ist nicht riesig, aber es ist fleischig genug, dass es wahrscheinlich Ihre Kenntnisse der Sprache, die Sie wählen, ein wenig erweitern würde. Wählen Sie also eine, in der Sie besser werden möchten.

0

Ich habe mich nur jemals damit geduldet aber LWJGL wird eine Java-Version erleichtern. Alle hauseigenen Spiele unter puppygames.net sind zum Beispiel in Java mit LWJGL und interessanterweise auch Top-Down- oder Side-On-Blaster-Spiele.

Verwandte Themen