2D RTS в Python?

Я большой поклонник питона. Недавно у меня появилась идея написать движок RTS и / или, может быть, простую игру RTS, основанную на этом движке. Есть несколько вещей, о которых мне нужно подумать, и, возможно, вы можете дать мне несколько советов по этим вопросам:

  1. Спектакль. Большинство игр написаны на C++. Разве питон не слишком медленный для игрового движка? Я нацеливаюсь только на 2D, но все же это может быть слишком демадентно.
  2. Графика. Есть ли хорошие графические библиотеки для python? Привязки SDL/OpenGL или что-то более подходящее для python?
  3. Игровые движки. Знаете ли вы о существующем движке RTS, написанном на python?
  4. Любые инструменты / библиотеки для Python, которые могут быть полезны при разработке RTS

Заранее спасибо!

2 ответа

Решение
  1. Производительность может быть проблемой с тяжелой графикой / математической обработкой. Если это так, см. Panda3D, NumPy, Cython и PyPy.
  2. Используйте Pyglet, PyOpenGL с Pyglet, Panda3D (хотя вы пишете в 2D, вы все равно можете использовать 3D-движок) или, возможно, какую-то другую библиотеку.
  3. Кажется, что не существует существующих библиотек RTS, но определенно существуют уже существующие обобщенные механизмы.
  4. Попробуйте поискать библиотеки, связанные с RTS, в общем: вам понадобится AI, поиск пути, работа в сети и так далее. Поэтому, возможно, вас заинтересует Twisted, поскольку он помогает в работе с сетями.

Я могу ответить на ваши первые два.

  1. Python не слишком медленный для игр. То, что все игры должны быть написаны на C++ - это миф. Конечно, C++ (или C) может дать вам лучшую производительность, но это не значит, что вы не можете написать игру на другом языке.
  2. Попробуйте PyGame: привязки SDL для Python.
Другие вопросы по тегам