Ich habe ein paar davon gesehen, nämlich Java und C # / XNA ... und ich habe kürzlich Python aufgegriffen. Was hat mich zum Nachdenken gebracht?
Welche (berühmten) Spiele wurden in Python mit Pygame / Pyglet / Pyopengl geschrieben?
Ich habe ein paar davon gesehen, nämlich Java und C # / XNA ... und ich habe kürzlich Python aufgegriffen. Was hat mich zum Nachdenken gebracht?
Welche (berühmten) Spiele wurden in Python mit Pygame / Pyglet / Pyopengl geschrieben?
Antworten:
Eve Online ist wahrscheinlich die größte und verwendet Stackless Python , eine leichte Version von Python mit Mikrothread. Und Civilization IV hatte einen eingebauten Python-Interpreter, aber ich bin mir nicht sicher, ob dies nur für Skripte gedacht war oder wie viel des Spiels darin geschrieben war.
Außerdem wurde Disneys Fluch der Karibik mit der Panda3d- Spiele-Engine geschrieben (die sowohl Python- als auch C ++ - Skripte zulässt, aber nicht googelt - Disney verwendete Python). Die Engine ist in C ++, aber der Python- Interpreter selbst verwendet auch viel C-Code. :)
Für eine lange Liste von Spielen:
Das beinhaltet auch viele bekannte Spiele, wie Mount and Blade .
Die ursprüngliche Version von Galcon war in reinem Python, obwohl es längst in andere Sprachen portiert wurde (zuletzt gab es Obj-C-, Flash- und C ++ - Versionen). Es wird immer noch Python für AI über die TinyPy-Bibliothek verwendet, aber ich nehme an, das ist "nur Scripting".
Generell ist Python nicht besonders gut geeignet, um eine unglaublich schnelle Grafik-Engine zu erstellen. Sie haben weitaus mehr Kontrolle über das Schreiben des leistungsabhängigen Kerncodes in C oder C ++ und das anschließende Schreiben der komplexen Spielelogik in Python. Python zeichnet sich durch logischere Bereiche aus, da seine Ausdruckskraft einen Produktivitätsgewinn gegenüber C darstellt und der Leistungsabfall kein Problem darstellt. Aus diesem Grund arbeiten alle (CCP, Panda3D, Unity, Civ4 usw.) so. Die eigentliche Frage ist, ob dies als "in Python" gilt. Zum Beispiel ist in Eve alles, was mit dem eigentlichen Spiel zu tun hat (mehr oder weniger), in Python. Der C ++ - Teil ist nur eine generische Spiel-Engine, die das Verschieben von Pixeln und Audio handhabt.
Frets on Fire (zusätzlich zu Galcon, das kein natives Python mehr ist) ist das einzige "native Python" -Spiel, von dem ich mir vorstellen kann, dass es ein gewisses Maß an anhaltendem Ruhm erlangt hat.
Außerdem Battlefield Heroes, die Cartoony-Version von Battlefield.
BattleField 2 und 2142 (für Logik- und Serversteuerungen)
Disneys "Toontown" und "Pirates of the Carribean Online" verwenden die Panda3D-Engine mit Python-Scripting.