He estado jugando con la escritura de algunos juegos de cartas simples en Python por diversión y me gustaría agregar una interfaz gráfica de usuario (GUI) para los juegos. ¿Qué biblioteca recomendarías para escribir la GUI para un simple juego de cartas?wxPython o pygame para un simple juego de cartas?
Respuesta
Si todo lo que quiere es una GUI, wxPython debería hacer el truco.
Si está buscando agregar sonido, entrada de controlador y llevarlo más allá de un simple juego de cartas, entonces es posible que desee utilizar pygame.
Yo diría pygame: he oído que es muy divertido, fácil y alegre. Además, todas mis experiencias con wxPython han sido tristes y dolorosas.
Pero no soy parcial ni nada.
No he usado wxPython, pero Pygame en sí mismo es de bajo nivel. Le permite detectar pulsaciones de teclas, eventos de mouse y dibujar cosas en la pantalla, pero no ofrece ningún control GUI prefabricado. Si usa Pygame, tendrá que escribir sus propias clases de GUI o usar extensiones GUI existentes para Pygame, como Phil's Pygame Utilities.
Las respuestas a esta pregunta relacionada pueden ser muy útiles para usted:
What can Pygame do in terms of graphics that wxPython can't?
En general, PyGame es la mejor opción para los juegos de codificación. Pero eso es para el tipo más común de juegos, donde las cosas se mueven en la pantalla y debe tener un buen rendimiento de "frame-rate".
Para algo así como un juego de cartas, sin embargo, iría con wxPython (o más bien, PyQt). Esto se debe a que un juego de cartas no tiene mucho en términos de gráficos (dibujar formas de tarjetas 2D en la pantalla no es más difícil en wx/PyQt que en PyGame). Y, por otro lado, obtiene muchos beneficios de wx, como una interfaz gráfica de usuario preparada para la interacción.
En Pygame usted tiene que crear una GUI usted mismo o vadear varias bibliotecas medio cocidas que lo hacen por usted. Esto realmente tiene sentido para Pygame porque cuando creas un juego, generalmente quieres una GUI propia, que se adapte al estilo del juego. Pero para los juegos de cartas, la mayoría de las posibilidades son que los widgets de GUI estándar de wx harán el truco y te ahorrarán horas de codificación.
pygame es la opción típica, pero pyglet ha estado recibiendo mucha atención en PyCon. Aquí hay una entrada de wiki en las bibliotecas de Python Game: http://wiki.python.org/moin/PythonGameLibraries
- 1. Adición wxpython en pygame
- 2. Algoritmo genético para un juego de cartas (Dominion)
- 3. Disposición de WPF para el complejo juego de cartas
- 4. Un método para crear un juego simple GUI
- 5. Estrategia de diseño y arquitectura del juego para un juego de cartas multijugador
- 6. Estructura/algoritmo para resolver juego con cartas superpuestas
- 7. juego de tetris en python usando pygame
- 8. Elegir un motor de juego en 2D para un simple juego de aventura estilo Zelda
- 9. Java - Consejos de diseño para el juego simple
- 10. ¿Qué puede hacer Pygame en términos de gráficos que wxPython no puede?
- 11. ¿Algún buen juego de cartas estrategias de IA?
- 12. Pygame: Mapa de mosaico o imagen grande
- 13. Audio de Pygame simple a una frecuencia
- 14. Monte Carlo Tree Search u otros algoritmos para un juego de cartas estocástico?
- 15. ¿Se puede enviar un juego creado con pygame a Steam?
- 16. mejor manera de implementar una baraja para un juego de cartas en python
- 17. Decisiones de diseño/consejos para un juego simple en Android
- 18. Detectar bucles en un reproductor de computadora en un juego de cartas
- 19. Crea un juego simple de HTML5/Canvas en 2D. Motor de juego recomendado para usar?
- 20. cómo hacer guardar/cargar las funciones del juego en pygame?
- 21. cómo enviar mi juego hecho con pygame a otros?
- 22. Entrada internacional SDL o PyGame
- 23. Prueba de barajador de cartas
- 24. Comience con pyglet o pygame?
- 25. Biblioteca Javascript prefabricada para modelar juegos de cartas?
- 26. IDE agradable con diseñador de GUI para wxPython o Tkinter
- 27. Encuentra la mejor táctica de juego contra otra táctica, por ejemplo, en el juego de cartas Toepen
- 28. Core Animation u OpenGL para simple juego de iPhone
- 29. tutoriales o introducciones para escribir un lenguaje de scripting simple?
- 30. ¿Mejores recursos para aprender PyGame?
Es interesante que haya sugerido dibujar formas de tarjeta 2D. Estaba pensando en usar imágenes de cartas para representar las cartas. ¿Hay alguna ventaja en dibujar formas de tarjetas versus usar imágenes? – adam
@adam: dos ventajas. (1) puedes aprender a dibujar formas no triviales. (2) puede hacer que las tarjetas se vean como lo desee, no atadas a ninguna imagen específica que encuentre. –