Crear un juego – Parte V (Clase Games)


El día de ayer estaba creando un mini juego para los tutoriales que estoy haciendo, pero después de terminar me di cuenta era algo complejo meter todo en un solo archivo, es decir, que en el archivo main.cpp y sobre todo meter todo en la función main, era muy laborioso y sobre todo muy confuso, incluso yo me confundí varias veces, así que mejor opte por separar todo y crear clases en C++.

La primera clase en crear seria la base de todo y lo llamamos Games. Tengo la costumbre de separar la cabecera en una carpeta llamada header y el código en si meterla en una carpeta llamada source, no es necesario, pero para buenas practicas deben separar todo.

La cabecera quedaría así.

Y ahora el código.

Verán que en la clase Games conservo la anatomía del juego para que no se pierdan y sobre todo porque si empiezan a leer otros códigos para estudiarlos verán que cada autor es diferente para armar la estructura de su juego, pero al final verán que es el mismo patrón de la anatomía del videojuego.

En el archivo main.cpp solo tenemos lo siguiente.

Una cosa que debo explicar es que si ven tanto el código anterior como este nuevo, verán que al principio declaro SDL_SetHint(SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING, “1”);, esto es debido que al momento de hacer un debug el Clion utiliza el GDB y como SDL utiliza un manager de Thread es incompatible y marcara error incluso tronara el programa, así con esto le estoy indicando a SDL que desactive el nombramiento de Thread y así ya podemos debugear.

Bueno los siguientes tutoriales será Events, Sprite y Animaciones, el primero será de uno solo, el segundo y tercero serán de varios ya que es un tema algo largo.

Programador Mexicano con 14 años de experiencia, ha incursionado en diferentes áreas ampliando su experiencia. Aprendí programación por que quería hacer mi propio video juego aun que he tocado otras áreas como servidores, web, aplicaciones móviles, etc., pero la programación de video juegos fue más por hobby, primero con el 2D, aprendiendo usar SDL que es una herramienta que te da muchas libertades y optima, después Engine 3D como ogre o como CryEngine pero me enfoque mucho a Engine Source de valve. Me gusta compartir mi conocimiento y ayudar a la gente cuando puedo y los que me van conociendo saben que es cierto.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *