Razón Artificial

La ciencia y el arte de crear videojuegos

Cambio hacia XNA

Escrito por adrigm el 4 de noviembre de 2010 en Noticias | 2 Comentarios.

En el mundo del desarrollo de videojuegos siempre hay que estar avanzando y descubriendo nuevas tecnologías. Hace tiempo que quería mirarme bien el framework XNA de Microsoft. Este fin de semana he estado a fondo con él y me he enamorado. No sabía nada de el el viernes y hoy ya tengo hecho mi Pong clásico que suelo hacer al estilo Hola Mundo.

A partir de ahora creo que trabajaré con el y publicaré algunas cosillas sobre XNA. Me gusta mucho Python y Pygame, pero lo cierto es que para videojuegos más allá que para una toma de contacto y empezar en el mundo no es muy útil ya que es algo limitado. He intentado analizar los pros y contras de Python+Pygame y C#+XNA y mis conclusiones son.

Python + Pygame

Ventajas

  • Son libres.
  • Son multiplataforma.
  • Lenguaje y Biblioteca super sencilla. Muy recomendado para inciarse.

Desventajas

  • El soporte de gráficos por hardware es limitado, tira mucho de procesador.
  • Python es un lenguaje interpretado, para juegos que requieran grandes cálculo eso se nota.
  • Soporte solo para 2D.
  • La gestión del sonido de Pygame es nefasta. Hay que usar bibliotecas adicionales.

C# + XNA

Ventajas

  • C# es un lenguaje moderno y eficaz. Hereda toda la potencia de C++, pero lo hace sencillo.
  • Tiene detrás toda la plataforma .NET que hace que tengas un mundo de posibilidades.
  • C# es un lenguaje compilado, por lo tanto más velocidad.
  • XNA tiene soporte para 2D y 3D.
  • El framework XNA construido sobre directX.
  • Fácil de aprender a usar, casi todo viene hecho. Es montar las piezas para hacer lo que tu quieres.
  • Puedes publicar tu juegos para Xbox 360 y Microsoft Phone.
  • Es gratuito. Tando C# express como XNA son gratuitos.

Desventajas

  • No es libre (XNA).
  • Soporta menos plataformas que Pygame(nada de Linux, ni Mac por ahora).

Por tanto para mí la decisión es clara, me gusta el software libre y linux, pero en el mundo de los videojuegos si quieres dedicarte a eso no es el camino más óptimo actualmente. Así que bienvenido a XNA.

Intentaré terminar los tutoriales de Pygame que tengo a medias, no os los dejaré a la mitad.

2 Comentarios en "Cambio hacia XNA"

  1. Baku dice:

    ¿Por qué todos se van a plataformas así?

    ¿Nunca probaste SFML (Simple and Fast Media Library)? Es una alternativa bastante venerable a SDL escrita en C++:

    -Renderizado vía OpenGL (aceleración por hardware).
    -Curva de aprendizaje mínima y una API práctica y reducida.
    -Gran control de dispositivos de entrada.
    -Soporte de Audio bastante decente.
    -Un sistema de Scrolling integrado.

    Entre otras cosas… la biblioteca está soportada por Python (vía el binding PySFML) por lo que si te familiarizas, dar el salto a otro lenguaje te será muy fácil (ya que tiene bindings para C, C++, C#/.NET, Python, Ruby y Lenguaje D).

  2. shackra dice:

    joder, mejor usa SFML y trata de mantenerte multiplataforma, yo uso PySFML y me a parecido una muy buena opción a PyGame, te la recomiendo mas que XNA… pasate por el repositorio de ejemplos en PySFML que estoy escribiendo con otros programadores mas que están orientados a novatos, https://bitbucket.org/shackra/ejemplos-pysfml quizás cambies de parecer ;).

Deja un comentario