Pergunta
Eu estou escrevendo um simulador em Python, e estou curioso sobre as opções e opiniões sobre animações básicas em 2D. Por animação, estou me referindo a tornar na mosca, não exibindo imagens prerendered.
Atualmente estou usando matplotlib (Wxagg backend), e é possível que eu vou ser capaz de continuar a usá-lo, mas eu suspeito que não será capaz de escala suficientemente em termos de desempenho ou capacidades.
Os requisitos são:
- Cross-plataforma (Linux, MacOS X, Windows)
- Baixa sobrecarga complexidade
- Jogos bem com wxpython (pelo menos não vai pisar no pé do outro indevidamente)
- Interatividade. Detectar quando os objetos são clicados, moused sobre, etc.
Note que o alto desempenho não está na lista, mas a capacidade de lidar com ~ 100 objetos de bitmap na tela seria bom.
Seus pensamentos?
Solução
Eu sou um fã de pyglet que é um completamente auto-contido biblioteca para fazer um trabalho gráfica sob win32, linux, e OS X.
Ele tem sobrecarga muito baixa, e você pode ver isso por si mesmo a partir do tutorial no site. É deve jogar bem com wxpython, ou pelo menos parece-me mensagens de recall para a lista de discussão sobre wxpython e pyglet sendo usados ??juntos.
É no entanto não oferece seleção de objetos através de cliques do mouse - isso você terá que lidar com você mesmo. De um modo geral para uma aplicação 2D isso não é muito difícil de fazer.
mactorii é uma aplicação OS X da mina escrito em puro python + pyglet, e tem alguns básicos animação (rolagem) e clique em detecção. Ele não usa wxpython, mas talvez ele vai te dar uma idéia do que está envolvido. Nota no entanto mactorii está usando o velho api pyglet, de modo que o loop de execução Eu tenho lá é obsoleto. Vou dar a volta a atualizá-lo um dia ...: P
Outras dicas
Você pode tentar pygame, é muito fácil de manusear e semelhante ao SDL sob c ++