[Curso C++] – Primer Juego – Game Over!

cpplogo

Bueno vamos con nuestro primer juego en C++. en mi caso utilizo el editor IDE Geany con un terminal empotrado sobre el Sistema Operativo Ubuntu que me viene de perlas para hacer pruebas sobre la marcha, dejo una captura (Click para ver en grande). Nuestro primer juego Nuestro primer juego es el típico programa que muestra por consola el mensaje "Hola Mundo" de todos los cursos de programación, pero como esto es un curso de programación de ... Seguir leyendo »

Curso de Videojuegos en C++ – Presentación

cpplogo

Bienvenidos a un nuevo colección de artículos, curso, guía o como lo queráis llamar de Razón Artificial. En esta ocasión la idea es enseñar a programar videojuegos en C++ a base de ejemplos e ir explicando las cosas paso a paso. Me di cuenta que en su día el Curso de Pygame tuvo bastante buena acogida porque en el proceso del tutorial se fue creando un juego, es decir, nos enfrentamos a un problema real ... Seguir leyendo »

[BGE] La clase App

App

Por fin llegamos a la clase App, con esta clase empieza a cobrar algo de sentido todo lo anterior porque une lo visto hasta ahora, crea la ventana de la aplicación, etc. La clase App sigue, como el SceneManager, el patrón de diseño Singleton pues no tiene sentido tener más de un objeto App, cualquier intento de crear un nuevo objeto App devolverá la instancia única. Empezamos con las variables públicas. [cpp] // Constantes /////////////////////////////////////////////////////////////////////////// static const unsigned int DEFAULT_VIDEO_WIDTH = ... Seguir leyendo »

[BGE] La clase SceneManager

kservices

Antes de ver la clase App vamos a  ver el SceneManager, ya que hemos visto en primer lugar la clase Scene ahora vamos a ver la clase que va a manejar los objetos Scene y decidir cual esta activo y cual no.Sobre SceneManager he visto muchas formas de implementarlo, la más común es utilizar una pila donde haciendo push y pop se puede cambiar de escena fácilmente, la desventaja de una pila es la poca ... Seguir leyendo »

[BGE] La clase Scene

kservices

En teoría lo lógico sería empezar hablando de la clase App, pues sera esta la principal del engine, pero necesitamos primero ver como va a ser un escena para luego poder hacer un buen app que las controle.¿Que es una escena?Puede parecer obvio, pero por si acaso vamos a aclararlo. Una escena es cualquier pantalla de un juego que necesite mostrarse en pantalla, actualizar datos y/o interactuar con el usuario.Por ejemplo, una pantalla de inicio ... Seguir leyendo »

[BGE] Espacio de nombre, tipos y cabeceras

kservices

Antes de entrar en materia con las clases del sistema base surgen algunas cosas que hacer y decir, recordemos nuestra distribución del directorio src. |- src/ |- BGE/ |- BGE.h |- types.h |- app.h |- app.cpp |- scene.h |- scene.cpp ... Seguir leyendo »

[BGE] Sistema base del Engine

App

Bueno es hora de entrar en materia ya y empezar a ver la estructura del Engine. Mi idea es basarme en la estructura que usan otros engines y apis pues no es cuestión de reinventar la rueda, sino de uno entender como se hace. Estructura básica de un juego Se sale de este artículo explicar el desarrollo del bucle de un juego, pero no está mal recordarlo con un simple esquema: Es un esquema muy simplificado, sin tener ... Seguir leyendo »

Creando un archivo de log en C++

logs

Cuando se está haciendo un programa es normal utilizar la salida estándar para ir poniendo mensajes de resultados parciales y pruebas para ver si las cosas están sucediendo como se esperan. Cuando el software que estamos creando alcanza mayor complejidad estos mensajes no son suficientes, es aquí donde entran los archivos de log. Esto son básicamente ficheros de texto que van guardando esto mensajes para luego poder analizarlos en profundidad. Hay muchas maneras de crear un ... Seguir leyendo »

[BGE] Comenzando el proyecto

kservices

Vamos a comenzar esta especie de diario acerca de la creación de un Game Engine, los post del blog que traten sobre el Engine incluirán la etiqueta [BGE] (Basic Game Engine) para que sean fácilmente reconocibles. Creando un repositorio Lo primero que necesitaba era crear un repositorio para el proyecto donde tener un control de versiones y avances, me he decidido por GitHub pues ya he trabajado con Git antes y GitHub es un buen host basado ... Seguir leyendo »

Haciendo un Game Engine 2D básico

kservices

Hace tiempo vengo planeando hacer un Game Engine básico para juegos 2D, Se que existen muchos en la red y que uno más no va a aportar nada. La idea de hacer uno propio es aprender y ver como se hacen las cosas, de paso iré publicando los avances por si puedo ayudar a alguien.Yo no tengo experiencia en este tema y probablemente haga burradas y no haga las cosas de la manera más eficiente ... Seguir leyendo »

Página 1 de 141234567891011121314