Domanda
Sto scrivendo un simulatore in Python e sono curioso di conoscere opzioni e opinioni sulle animazioni 2D di base. Per animazione, mi riferisco al rendering al volo, non alla visualizzazione di immagini prerenderizzate.
Attualmente sto usando matplotlib (backend di Wxagg), ed è possibile che sarò in grado di continuare a usarlo, ma sospetto che non sarà in grado di ridimensionare sufficientemente in termini di prestazioni o capacità.
I requisiti sono:
- Cross-platform (Linux, MacOS X, Windows)
- Overhead a bassa complessità
- Gioca bene con wxpython (almeno non si calpesterà indebitamente l'uno sull'altro)
- Interattività. Rileva quando gli oggetti vengono cliccati, posizionati sopra, ecc.
Nota che le alte prestazioni non sono nell'elenco, ma la capacità di gestire ~ 100 oggetti bitmap sullo schermo sarebbe buona.
I tuoi pensieri?
Soluzione
Sono un fan di pyglet che è una libreria completamente autonoma per fare lavori grafici con win32, linux e OS X.
Ha un sovraccarico molto basso e puoi vederlo da solo dal tutorial sul sito web. dovrebbe funzionare bene con wxpython, o almeno mi sembra di ricordare i post nella mailing list su wxpython e pyglet usati insieme.
Tuttavia non offre la selezione di oggetti tramite clic del mouse - questo dovrai gestire te stesso. In generale per un'applicazione 2D questo non è troppo difficile da fare.
mactorii è una mia applicazione OS X scritta in puro python + pyglet, e ha alcune basi animazione (scorrimento) e rilevamento clic. Non usa wxpython, ma forse ti darà un'idea di ciò che è coinvolto. Nota però mactorii sta usando il vecchio pyglet api, quindi il ciclo di esecuzione che ho dentro è obsoleto. Vado in giro ad aggiornarlo un giorno ...: P
Altri suggerimenti
Puoi provare pygame, è molto facile da gestire e simile a SDL in c ++