Blogia

Proyecto VideoJuego

Viva viva

Bueno... despues de las largas vacaciones de navidad me he puesto a programar y por fin he integrado la parte ya acabada
en el proyecto, ya manejo los dispositivos de entrada de manera rápida y eficiente.

DirectInput

DirectInput

Para profanos en el tema basta decir que esta es la parte encargada de los dispositivos de E/S para el control del videojuego. Basicamente, la clase CInput inicializa direct input, los dispositivos de E/S (teclado,ratón...), captura teclas, botones del ratón y coordenadas del mismo, proximamente lo integraré con el proyecto :)

Antonio: "Si la pereza es un pecado, entonces yo soy el mayor pecador de la historia."

Tenemos Camara!!!

Tenemos Camara!!!

He escrito una clase para manejar vectores (COGLVector3d), le he añadido operadores (operator en c++) para que se puedan sumar,restar,multiplicar,dividir XD

Y utilizando la clase de vectores he hecho la clase para manejar la camara (COGLVector3d), de momento podemos avanzar/retroceder y rotar alrededor de un punto, como esta clase es provisional en un futuro corregiré pequeños errores
y le añadiré nuevas funcionalidades.

Bruno. "Si el programa falla en estos requerimientos, caerá en un estado de desorden y confusión. La única manera de corregir esto es el reescribir el programa."

Esto va tomando forma!!!

He restructurado el código principal y ahora ha aumentado el rendimiento general.
La modificación que he hecho se basa principalmente en crear una función donde cargamos
todos los modelos, y esa función la utilizamos al principio, en la parte de la inicialización, no en el bucle principal del juego XD

Bruno: "Un programa debe seguir la 'Ley del menor Asombro'. Cual es esta ley? Es simplemente que el programa deba responder al usuario de manera que lo sorprenda de la menor forma."

Bienvenido al Weblog Proyecto Videojuego

Ya tenemos Weblog!!!!

Aqui iremos poniendo periodicamente los progresos que vayamos haciendo en el proyecto del Videojuego Cooperativo Multijugador.

¡Que lo disfruteis!

Podeis poneros en contacto con los miembros del grupo en proyectovideojuego@hotmail.com

El Grupo: Antonio, Manuel, Raúl, Bruno.
"La perfección no es nuestra meta, es nuestro punto de partida..."

Cargador Texturas ON!!!

Cargador Texturas ON!!!

He creado un Cargador de Texturas que permite cargar en memoria el mapa de bits contenido en un archivo .BMP, formado por Texturas.h y Texturas.cpp e integrado en la plantilla creada por Bruno.

Básicamente abre un archivo .BMP, lee la información que contiene y con ella genera una textura y la almacena en memoria.

Ummm....liberé la memoria? ah, sí. Todo OK.

Raul. "Si no es un bug, es una feature..."

Cargador de Modelos 3D Alpha

Cargador de Modelos 3D Alpha

He creado un cargador "provisional" de modelos que permite cargar en memoria los objetos contenidos en un archivo .3DS, formado por 3ds.h y 3ds.cpp e integrado en la plantilla para que Bruno pueda comenzar a hacer pruebas de Octree/Colisiones y Antonio de controles (DirectInput).

Básicamente abre un archivo .3DS, lee la información que contiene y la almacena en distintas estructuras, despues con OpenGL se genera el modelo a partir de estas estructuras.

Al ser provisional no esta muy optimizado: Solo se aplica una textura por modelo. Se carga el modelo en cada frame.

Raul. "Si no es un bug, es una feature..."

Creación de una interfaz para interactuar Opengl con Windows

Creación de una interfaz para interactuar Opengl con Windows

He creado la librería ventanaGL que permite crear una ventana Opengl en windows, abstrayendo todo el código que utiliza
Windows para utilizar Opengl. Será depurada y se le añadirán mas funcionalidades. Aún no se como hacer para no tener que
meter todo el código de inicialización fuera de la clase, de momento se lo meteremos en videojuego.cpp (la aplicación principal) :p

Bruno. "solo se que no se nada..."

Creación de una plantilla para el proyecto

Creación de una plantilla para el proyecto

He creado un proyecto en Visual C++6.0 creando una estructura para que queden bien definidas las tareas de cada ntegrante del grupo para que así el trabajo de cada uno quede bién delimitado.

Bruno. "Solo se que no se nada..."

Motor v0.2

Motor v0.2

Ya esta creada la segunda versión del Motor, he utilizado lo hecho anteriormente para probar que funcionase.

A esta versión se añaden las siguientes caracteristicas:

- Carga de texturas .BMP
- Carga de modelos "provisional"
- Soporte SkyBoxes

Raul. "Si no es un bug, es una feature..."

Motor v0.1

Motor v0.1

He creado la primera versión del motor, he utilizado lo hecho anteriormente para probar que funcionase.

A esta versión se añaden las siguientes caracteristicas:

- Creación de un programa Windows(Inicialización y Gestión de mensajes)
- Inicialización de Opengl mediante VentanaGL

Bruno. "Un programa debe ser ágil y luminoso, sus subrutinas conectadas como un collar de perlas. El espíritu y la intención del programa se deben retener ante todo. No debe ser ni mucho ni poco, sin ciclos innecesarios ni variables sin usar, no carecer de estructura pero tampoco una rigidez aplastante."

Primeras Pruebas DirectPlay

Primeras Pruebas DirectPlay

Ante la exigencia de resultados visibles por parte de ciertas personas me he puesto a hacer pruebas en DirecPlay

De ellas he sacado ciertas conclusiones:
-Microsoft Sucks
-Microsoft Tiene sus propios estandars
-Me acomodare a ellos

Bueno he conseguido enumerar los Sevicios Dplay que tiene mi equipo y entender más o menos como van

Manuel. "Además de que no funciona, ¿qué tal les parece?"