Mi sono divertito a scrivere alcuni semplici giochi di carte in Python per divertimento e mi piacerebbe aggiungere un'interfaccia grafica (GUI) ai giochi. Quale libreria consiglieresti per scrivere la GUI per un semplice gioco di carte?wxPython o pygame per un semplice gioco di carte?
risposta
Se tutto ciò che si desidera è una GUI, wxPython dovrebbe fare il trucco.
Se stai cercando di aggiungere suono, input del controller e portarlo oltre un semplice gioco di carte, allora potresti voler usare pygame.
Direi pygame: ho sentito che è molto divertente, facile e felice. Inoltre, tutte le mie esperienze con wxPython sono state tristi e dolorose.
Ma non sono un pregiudizio o altro.
Non ho usato wxPython, ma Pygame di per sé è piuttosto di basso livello. Ti permette di catturare le pressioni dei tasti, gli eventi del mouse e disegnare cose sullo schermo, ma non offre alcun controllo della GUI pre-creato. Se usi Pygame, dovrai scrivere le tue classi GUI o usare le estensioni della GUI esistenti per Pygame, come Phil's Pygame Utilities.
Le risposte a questa domanda correlate possono essere molto utile per voi:
What can Pygame do in terms of graphics that wxPython can't?
In generale, PyGame è l'opzione migliore per la codifica giochi. Ma questo è per il tipo più comune di giochi - dove le cose si muovono sullo schermo e si deve avere una buona prestazione "frame-rate".
Per qualcosa come un gioco di carte, tuttavia, andrei con wxPython (o meglio, PyQt). Questo perché un gioco di carte non ha molto in termini di grafica (disegnare forme di carte 2D sullo schermo non è più difficile in wx/PyQt che in PyGame). E d'altra parte, ottieni molti vantaggi da wx - come una GUI già pronta per l'interazione.
In Pygame devi creare una GUI tu stesso o guadare diverse librerie semi-cotte che lo fanno per te. Questo in realtà ha senso per Pygame perché quando crei un gioco di solito vuoi una GUI personalizzata, che si adatti allo stile del gioco. Ma per i giochi di carte, la maggior parte delle possibilità è che i widget standard della GUI di wx faranno il trucco e ti faranno risparmiare ore di codice.
pygame è la scelta tipica, ma Pyclet ha ricevuto molta attenzione da PyCon. Ecco una voce wiki sulle librerie di giochi Python: http://wiki.python.org/moin/PythonGameLibraries
- 1. Algoritmo genetico per un gioco di carte (Dominion)
- 2. Strategia di gioco e strategia di progettazione per un gioco di carte multiplayer
- 3. Monte Carlo Tree Search o altri algoritmi per un gioco di carte stocastico?
- 4. Scegliere un motore di gioco 2D per un semplice gioco di avventura in stile Zelda
- 5. Java - Consigli di progettazione per il gioco semplice
- 6. Come si registra un "gioco" (PyGame o Tk) in un video?
- 7. C'è una libreria di carte da gioco incorporata in .Net?
- 8. È possibile inviare a Steam un gioco creato con pygame?
- 9. F # è un buon linguaggio per il gioco di carte AI?
- 10. Un semplice gioco multigiocatore in Ruby on Rails?
- 11. Rileva i loop nel lettore di computer in un gioco di carte
- 12. come inviare il mio gioco fatto con pygame ad altri?
- 13. Creazione di un gioco di auto semplice con tela HTML5
- 14. tutorial o introduzioni per scrivere un semplice linguaggio di scripting?
- 15. Come impaginare il codice di un gioco semplice?
- 16. Mischiare un mazzo di carte
- 17. Libreria JavaScript pronta per la modellazione di giochi di carte?
- 18. Un metodo per creare una semplice GUI
- 19. barra di progresso wxPython
- 20. Pygame equivalente per Ruby?
- 21. Networking di base con Pygame
- 22. Ancora nessun wxPython per Python 3 (o 3.3) ancora?
- 23. Validatore di carte di credito per java
- 24. pygame dual monitor e fullscreen
- 25. gioco per android, canvas o opengl?
- 26. XNA deride l'oggetto di gioco o disaccoppiando il gioco
- 27. Sparrow o Cocos2D per iPhone 2D gioco?
- 28. Le migliori risorse per l'apprendimento di PyGame?
- 29. C'è un RoboCode come Gioco o Sfida per Python?
- 30. Installazione Pygame per Python 3.3
È interessante che tu abbia suggerito di disegnare forme di carte 2D. Stavo pensando di usare immagini di carte per rappresentare le carte. Ci sono dei vantaggi nel disegnare forme di carte rispetto all'utilizzo di immagini? – adam
@adam: due vantaggi. (1) imparerai come disegnare forme non banali. (2) puoi far apparire le carte come preferisci, non legate ad alcuna immagine specifica che trovi. –