Я бачив пару таких, а саме Java та C # / XNA ... і нещодавно я збирав Python. Який вид змусив мене задуматися.
Які (відомі) ігри написані в Python, з Pygame / Pyglet / Pyopengl?
Я бачив пару таких, а саме Java та C # / XNA ... і нещодавно я збирав Python. Який вид змусив мене задуматися.
Які (відомі) ігри написані в Python, з Pygame / Pyglet / Pyopengl?
Відповіді:
Eve Online - це, мабуть, найбільший і використовує Stackless Python , легку, мікропоточну версію Python. І в Civilization IV був вбудований інтерпретатор Python, але я не впевнений, чи це було лише для сценаріїв, чи велика частина гри написана в ньому.
Також " Пірати Карибського басейну" Діснея були написані за допомогою ігрового двигуна Panda3d (який дозволяє і сценарії Python, і C ++, але від гуглінгу - Disney використовував Python). Двигун знаходиться в C ++, але знову ж , Python інтерпретатор сам по собі також використовує багато коду C. :)
Довгий список ігор:
яка також охоплює безліч відомих ігор, як Mount and Blade .
Оригінальна версія Galcon була в чистому Python, хоча вона давно перенесена на інші мови (нарешті, тут були версії Obj-C, Flash та C ++). Він все ще використовує Python для AI через бібліотеку TinyPy, але я вважаю, що це "просто сценарій".
Як загальний коментар, Python не дуже добре підходить для створення надзвичайно швидкого графічного двигуна. Ви отримуєте набагато більше контролю над написанням основного, чутливого до продуктивності коду в C або C ++, а потім запису складної логіки гри в Python. Python переважає в більш пов'язаних з логікою областях, оскільки його виразність - це виграш продуктивності над C, а зниження продуктивності не є проблемою. Ось чому всі (CCP, Panda3D, Unity, Civ4 тощо) усі працюють так. Справжнє запитання: чи вважається це «в Python»? Наприклад, у Єви все, що стосується фактичної гри (більш-менш) є в Python, частина C ++ - це лише загальний ігровий движок, який обробляє натискання пікселів та аудіо.
Frets on Fire (на додаток до Galcon, який вже не є рідним Python) - єдина гра "рідний Python", яку я можу придумати, що досяг певної тривалої слави.
Також Battlefield Heroes, мультиплікаційна версія поля бою (Обробляє більшу частину логіки гри)
І, BattleField 2 та 2142 (для логіки та керування сервером)
"Дорога" та "Пірати Карибського Інтернету" Діснея використовують двигун Panda3D із написанням сценарію Python.