Dies ist ein Beitrag, der meine Suche nach der unterhaltsamsten Art und Weise beschreibt, wie ein Hobby-Spielprogrammierer seine Freizeit mit dem Erstellen eines Spiels versüßen kann.
Meine Anforderungen: Ich habe mir zuerst Flash angeschaut, ein paar kleine Spiele gemacht, aber ich bezweifle die Leistung. Ich würde gerne ein ziemlich großes Strategiespiel machen, bei dem mehrere hundert Einheiten gleichzeitig kämpfen, Explosionen und Animationen eingeschlossen. Auch zoombare Karten. Ich habe gesehen, dass Adobe eine neue 3D-API für Flash hat, aber ich weiß nicht, ob dies auch die 2D-Leistung verbessert. Ich konnte in den MAX10-Sitzungen nichts zu dieser Frage finden. Würden Sie sagen, dass Flash eine gute Technologie ist, um große 2D-Spiele einfach zu erstellen? Ich mag Actionscript wirklich und ich mag, wie einfach alles in Flash ist. Es gibt verschiedene Motoren, die es noch einfacher machen.
Ich mache das nur zum Spaß, und es wäre noch besser, wenn es geeignete Animations- / Partikel-Editoren gäbe und wenn die Engine, die ich verwenden würde, für mehrere Plattformen verfügbar wäre. (damit mehr Leute mein Spiel spielen können, sobald es fertig ist). Ich möchte es auch auf vielen mobilen Plattformen verfügbar haben. (weil ich Touch-Eingabe aus irgendeinem Grund liebe)
Ich kenne das XNA-Framework ziemlich gut, aber es sind keine guten Engines dafür verfügbar, und es wird nur unter Windows ausgeführt, was eine enorme Deaktivierung darstellt. Noch größer ist, dass Sie die XNA Redistributable jedes Mal installieren müssen, wenn Sie das Spiel jemandem geben möchten. Wenn ich XNA verwende, müsste ich alle Tools selbst erstellen und sie wahrscheinlich mit WPF erstellen. (Ich würde gerne Tools mit Adobe AIR erstellen, aber leider sind die APIs für Bildmanipulationen usw. in Flash weitaus schlechter als in XNA / WPF.) Nun bin ich mir bewusst, dass ich meine eigene Engine dafür erstellen könnte unterstützt jede dieser Plattformen, aber ehrlich gesagt, das wäre zu viel Arbeit durch APIs zu pflügen. Schließlich möchte ich ein Spiel machen, keine Engine.
Die Frage lautet also : Gibt es möglicherweise eine plattformübergreifende (kostenlose oder frei zu entwickelnde?) Engine, die ich für die 2D-Entwicklung verwenden könnte? Ich bevorzuge: C #, Actionscript. Es macht mir nichts aus, C ++ zu verwenden, wenn das Toolset über dem Durchschnitt liegt, aber ich bezweifle sehr, dass es so etwas gibt. Bitte beweise mir das Gegenteil :) Also Zusammenfassung: Ich würde gerne Flash verwenden, aber ich weiß nicht, ob es gut genug skaliert. Ich bin kein Scripter, ich möchte einige echte APIs, mit denen ich in einer richtigen IDE arbeiten kann.
Nur zur Information habe ich mir mehrere Alternativen angeschaut, eigentlich suche ich schon lange. Sie würden mir sehr helfen, endlich eine Entscheidung zu treffen.
Funktionsmäßig wäre die Flatredball-Engine ideal. Aber ich habe ihre Werkzeuge ausprobiert und ehrlich gesagt, sie sind schrecklich. Absolut unbrauchbar, ich müsste es mir sicher selbst machen. Ich habe mir ihre API nicht angesehen, aber wenn ihre Tools so schlecht sind, bin ich nicht geneigt, weiter zu suchen.
Unity3D. Dieses ist ganz nett, aber ich brauche wirklich kein 3D und es ist ziemlich ... viel Arbeit zu lernen. Mir gefällt auch nicht, dass es so teuer ist, es für verschiedene Plattformen zu verwenden, und dass ich nur durch Skripterstellung Code dafür schreiben kann. Sie müssen jede Plattform separat kaufen. Die Benutzerfreundlichkeit des Editors ist durchschnittlich, das Produkt insgesamt ist für die meisten Zwecke gut genug, aber es selbst zu lernen, wäre übertrieben.
Shiva 3D. Es sieht gut genug aus, aber ich brauche nicht wirklich 3D. Die Benutzerfreundlichkeit des Editors ist meiner Meinung nach etwas schlechter als bei Unity3D, und mir war nicht klar, wie ich mit der Programmierung beginnen soll. Ich denke, es erfordert C ++ für die Codierung, also ist das auch negativ. Ich will spaß haben und c # macht spaß;)
SDL. Ehrlich gesagt muss ich immer noch auf all diese verschiedenen SDL-Implementierungen portieren. Und ich mag keine OpenGL-Programmierung, es ist einfach hässlich. Und es braucht C ++, ich weiß, dass es möglicherweise einige Wrapper gibt, aber ich verwende keine Wrapper, weil ...
Irrlicht. Viele Funktionen, aber der Support scheint gering zu sein und richtet sich an Enthusiasten. C # -Bindungen werden wiederholt gelöscht. Ich bin kein Motorenthusiast, ich möchte nur ein Spiel machen. Ich sehe das nicht bei Irrlicht.
Ogre3D. Viel zu viel Arbeit, es ist nur eine Grafik-Engine. Auch keine Unterstützung für mehrere Plattformen und C ++.
Drehmoment2D. Kostet etwas zu benutzen und ich habe nicht viel Gutes über Support und Dokumentation gehört. Kostet auch extra für jede Plattform.