Muchos, si no la mayoría de los juegos comerciales de alta gama en estos días incluyen algún tipo de motor de scripting para la lógica del juego. Las decisiones lógicas del juego, en su mayor parte, no son particularmente sensibles al rendimiento en la forma en que, p. el motor de renderizado es
BTW - No estoy afirmando ningún conocimiento interno sobre el desarrollo de juegos; esto es bastante conocido fuera de la industria. Algunos editores de juegos incluso han permitido que los usuarios accedan a material de scripting y otras herramientas para el modelado de juegos, durante años.
Si encuentra un motor de juego envuelto para ser utilizado en Python, tendrá los mismos principios básicos. Escribe la lógica del juego en Python, y probablemente estarás bien.
PyGame es básicamente compatible con SDL para Python, y es compatible con juegos 2D en su mayor parte (aunque OpenGL puede usarse para 3D en SDL, no está seguro para PyGame).
Es un buen punto de partida. Es posible que tengas problemas de rendimiento al administrar los objetos de tu juego y ejecutar tu loop de blit, ya que SDL solo maneja cosas de gráficos muy básicos, pero deberías encontrar que está bien para la mayoría de las cosas.
Como lo implica Ignacio: preocúpate por los problemas de rendimiento cuando sabes que tienes problemas de rendimiento, no antes.Algunos problemas de rendimiento son predecibles de antemano, pero si no está escribiendo el motor del juego real en Python, debería estar bien; no caiga en la trampa de la optimización prematura, IOW.
¿Qué tipo de juego? ¿Es algo simple como sudoku o un FPS en 3D? –
Además, tenga en cuenta que una serie de juegos * utilizan * python (u otro lenguaje de "secuencias de comandos", como LUA) debajo. Es decir, los pesados gráficos/renderización/física (donde el procesamiento de la CPU/GPU realmente importa) pueden realizarse en un motor escrito en C/C++, mientras que la lógica/mecánica del juego puede (y con frecuencia) transferirse. –