2008-10-04 58 views
7

Escribo un simulador en Python y tengo curiosidad sobre las opciones y opiniones sobre las animaciones 2D básicas. Por animación, me refiero a renderizar sobre la marcha, sin mostrar imágenes pretratadas.Animación 2D en Python

Actualmente estoy usando matplotlib (backend Wxagg), y es posible que pueda seguir usándolo, pero sospecho que no podrá escalar lo suficiente en términos de rendimiento o capacidades.

Los requisitos son:

  • multiplataforma (Linux, MacOS X, Windows)
  • Baja complejidad sobrecarga
  • Juegos bien con wxpython (al menos no va a pisar los pies de cada uno indebidamente)
  • Interactividad. Detecta cuando se hace clic en los objetos, se pasa el mouse, etc.

Tenga en cuenta que el alto rendimiento no está en la lista, pero la capacidad de manejar ~ 100 objetos de mapa de bits en la pantalla sería bueno.

¿Lo pensó usted?

Respuesta

10

Soy un fan de pyglet que es una biblioteca totalmente autónoma para hacer obra gráfica en Win32, Linux y OS X.

Tiene muy bajo costo operativo, y se puede ver esto por sí mismo desde el tutorial en el sitio web. Es debería jugar bien con wxpython, o al menos parece recordar las publicaciones a la lista de correo acerca de que wxpython y pyglet se usan juntos.

Sin embargo, no ofrece selección de objetos con un clic del mouse, esto lo tendrá que manejar usted mismo. En términos generales, para una aplicación en 2D esto no es demasiado difícil de hacer.

mactorii es una aplicación OS X escrita en pure python + pyglet, y tiene algunas animaciones básicas (desplazamiento) y detección de clics. No usa wxpython, pero quizás te dará una idea de lo que está involucrado. Sin embargo, tenga en cuenta que mactorii está usando la vieja API pyglet, por lo que el ciclo de ejecución que tengo allí está obsoleto. Volveré a actualizarlo un día ...: P

3

Puedes probar pygame, es muy fácil de manejar y similar a SDL bajo C++