Pregunta

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

Actualmente estoy usando matplotlib (backend Wxagg), y es posible que pueda continuar 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)
  • Gastos generales de baja complejidad
  • Juega bien con wxpython (al menos no se pisará indebidamente)
  • Interactividad. Detecta cuando se hace clic en los objetos, se pasa el mouse sobre ellos, 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 buena.

¿Tus pensamientos?

¿Fue útil?

Solución

Soy fanático de pyglet , que es una biblioteca completamente autónoma para realizar trabajos gráficos en win32, linux y OS X.

Tiene una sobrecarga muy baja, y puede verlo usted mismo en el tutorial del sitio web. debería jugar bien con wxpython, o al menos parece recordar las publicaciones en la lista de correo sobre wxpython y pyglet que se usan juntas.

Sin embargo, no ofrece selección de objetos a través de clics del mouse, esto tendrá que manejarlo usted mismo. En general, para una aplicación 2D, esto no es demasiado difícil de hacer.

mactorii es una aplicación de OS X mía escrita en python + pyglet puro, y tiene algo básico animación (desplazamiento) y detección de clics. No usa wxpython, pero quizás le dará una idea de lo que está involucrado. Sin embargo, tenga en cuenta que mactorii está utilizando la antigua API de pyglet, por lo que el ciclo de ejecución que tengo allí es obsoleto. Llegaré a actualizarlo algún día ...: P

Otros consejos

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

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top