Anterior 1 2 3 4 5 

Programado en C++ con DirectX 9
Publicado el 10-4-2012
         

Pulsa este botón para descargar "Space&Fight".


¡Actualización Importante!: El juego funciona a distintas velocidades dependiendo de la velocidad a que se tenga el refresco de pantalla; yo lo diseñé con una velocidad de refresco de 59Hz, sin embargo, hay muchos equipos que tienen por defecto una velocidad de refresco de pantalla de 60Hz provocando que el juego funcione más deprisa y alterando mi diseño original. La actualización de ahora corrige esto y hace que el refresco de pantalla, y por tanto la velocidad del juego, vaya siempre a 59Hz.

No creais que porque funcione más deprisa es mejor; en absoluto, es mucho peor y hace que el juego sea menos jugable. Por favor, si habeis descargado "Space&Fight" antes del 11-2-2014, desinstaladlo e instalad la version 1.3 del programa. Se corrige el siguiente bug:

  • El juego va a distintas velocidades dependiendo de como se tenga configurado el refresco de pantalla.(corregido)

Nota: Si habeis descargado "Space&Fight" antes del 20-9-2012, por favor, desinstaladlo e instalad la versión 1.2 del programa; para ello solo teneis que volver a descargarlo e instalarlo. Esta versión corrige algunos bugs y mejora el disparo de los misiles.


l videojuego "Space&Fight" nace de la necesidad de crear un juego de naves verdaderamente impecable desde el punto de vista técnico ya que el "Orion 2", que podeis ver en "Otras Creaciones", dejaba mucho que desear en este aspecto.

"Space&Fight" ha sido desarrollado enteramente en C++ y no en Visual Basic como los anteriores que podeis ver aquí, en mi Web; es el primer videojuego que hago en este lenguaje y he podido comprobar la verdadera potencia de éste en el que es posible trabajar con direcciones de memoria, algo que no usaba desde mis tiempos de programador en lenguaje ensamblador.

También es la primera vez que utilizo la programación orientada a objetos(POO), haciendo uso de clases y no de estructuras como había hecho en el pasado, y donde el encapsulamiento de la información y la herencia juegan un papel de vital importancia. La POO se adapta como un guante cuando se quiere escribir código para un videojuego y tengo la sensación de que quizás nació como consecuencia de los videojuegos mismos aunque, naturalmente, sirve para cualquier cosa.



Pero lo que marca realmente la diferencia de la POO es la estructura; el programador se ve prácticamente obligado a escribir un código mucho mas estructurado lo que facilita su comprensión y su ampliación.

Programar en C++ es algo más complicado que hacerlo en Visual Basic pero tampoco es el ogro que muchos programadores quieren vendernos; aquí, como en todo, depende de las ganas que tenga uno de aprender y de hacer cosas.

Yo he decidido pasarme a C++ porque la documentación en DirectX siempre viene en este lenguaje y esto es algo que voy a necesitar siempre; sin embargo hoy en día se puede hacer en Visual Basic de todo y es ya también, en sus últimas versiones, un lenguaje estructurado y orientado a objetos.

omo sabrán los que ya hayan visto mi Web en el pasado, estoy realmente obsesionado con el videojuego "Ghosts&Goblins"; pues bien, también hay una influencia de éste en mi nuevo programa y es el nombre que he elegido para él: dos palabras unidas por "&". Lo siento, es que no lo he podido evitar.

"Space&Fight" es un videojuego bidimensional de naves, lo que comunmente se denomina como "matamarcianos". El scroll es principalmente vertical aunque también hay desplazamiento horizontal de la pantalla cuando la nave que manejamos se mueve a derecha e izquierda lo que potencia la sensación de acción. Escogí el scroll vertical como dominante y no el horizontal como un tributo a los primeros "matamarcianos" de la historia ya que fueron así como los hicieron.

He utilizado la API DirectX9 en el desarrollo del programa, lo que me ha permitido hacer, además de desplazamientos suaves de todo tipo, rotaciones y escalados de sprites en tiempo real; el juego no hubiera sido el mismo si no hubiera podido hacer esas rotaciones de las naves en tiempo real.

Otra cosa que me ha permitido hacer DirectX9 han sido las semitransparencias, esto es, sprites que no son ni completamente opacos ni completamente transparentes; para ello he utilizado el valor alpha de las imágenes consiguiendo que, además del sprite en cuestión, también se vea el fondo o cualquier cosa que este debajo de él; lo podreis observar, por ejemplo, en las nubes de la fase de Marte y también en otros sitios.

Esta vez no hay gráficos reciclados de otros videojuegos pero para los diseños de las naves me he ayudado de modelos que he encontrado por internet y que luego he transformado en su mayoría con Photoshop. En la fase de Marte todos los diseños de las naves pertenecen al universo StarWars; espero que a George Lucas no le importe, ya que soy fan de estas peliculas y no me pude contener.

Los efectos de sonido vuelven a estar hechos con Audacity excepuando alguno, como el disparo de nuestra nave, que es un sonido laser de StarWars. Naturalmente, el desarrollo con DirectX, me ha permitido reproducir a la vez todos los sonidos que he querido.

En cuanto a los controles del juego, esta vez he hecho que el usuario pueda cambiar las teclas si así lo desea y también he dado la opción a poder usar el pad de Xbox 360 para Windows; si dispones de dicho pad verás que el juego gana bastante usándolo, además lo he programado para que vibre cuando te matan.

Solo me queda decir que ojalá disfruteis jugando con "Space&Fight" tanto como yo he disfrutado haciendolo.

Anterior 1 2 3 4 5