Untitled - Departamento de Ciencias e Ingeniería de la Computación
Untitled - Departamento de Ciencias e Ingeniería de la Computación
Untitled - Departamento de Ciencias e Ingeniería de la Computación
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
A2.4 Realización <strong>de</strong>l motor<br />
No pretendía hacer una copia <strong>de</strong>l Rocket Comman<strong>de</strong>r, a<strong>de</strong>más había ciertas cosas que diferían con mis objetivos:<br />
Rocket Comman<strong>de</strong>r Final Engine<br />
Pue<strong>de</strong> utilizarse bajo el pipeline gráfico <strong>de</strong> función fija y<br />
programable.<br />
So<strong>la</strong>mente sobre el pipeline gráfico programable.<br />
Pobre organización a nivel <strong>de</strong> código sobre los objetos Los objetos gráficos tenían prioridad en mi motor. El<br />
gráficos, <strong>de</strong>bido a que maneja muy pocos objetos. objetivo era realizar una base completa y esca<strong>la</strong>ble.<br />
La lógica <strong>de</strong>l juego y otras partes se mesc<strong>la</strong>n con el El objetivo era disponer <strong>de</strong> una buena base, priorizando<br />
motor gráfico en sí. La magnitud <strong>de</strong>l proyecto justificaba<br />
esta <strong>de</strong>cisión.<br />
<strong>la</strong> organización estructurada.<br />
Así mismo, existían omisiones que creía importantes en mi motor:<br />
Distintos tipos <strong>de</strong> luces: punto, direccional, spot, ambiental.<br />
Distintos tipos <strong>de</strong> animaciones: cinemática inversa, cinemática directa, animaciones cargadas <strong>de</strong>s<strong>de</strong> archivos<br />
y animaciones primitivas como mover, rotar, esca<strong>la</strong>r.<br />
Posibilidad <strong>de</strong> cargar distintos tipos <strong>de</strong> formatos para objetos poligonales: .x fue el único implementado. Sin<br />
embargo, se agregó <strong>la</strong> posibilidad <strong>de</strong> cargarlos utilizando el esquema <strong>de</strong> LOD <strong>de</strong>nominado Progressive<br />
Meshes.<br />
Distintos tipos <strong>de</strong> sha<strong>de</strong>rs: material constante, phong, paral<strong>la</strong>x bump mapping, distintos tipos <strong>de</strong> pre y post<br />
screen sha<strong>de</strong>rs. Y otros sha<strong>de</strong>rs más específicos, que simu<strong>la</strong>ban, por ejemplo, <strong>la</strong> atmosfera <strong>de</strong> un p<strong>la</strong>neta.<br />
Teniendo todo esto en cuenta y algunos que otros <strong>de</strong>talles más, se comenzó a codificar este motor. Por supuesto<br />
que todavía me faltaba compren<strong>de</strong>r mucho sobre el tema, <strong>de</strong> hecho todavía me falta. Pero disponía <strong>de</strong> <strong>la</strong> suficiente<br />
base <strong>de</strong> conocimientos como para realizar un trabajo mucho mejor, y así fue.<br />
Así mismo, complemente mi trabajo <strong>de</strong> codificación creando mo<strong>de</strong>los poligonales en Softimage XSI. Estos mo<strong>de</strong>los<br />
se utilizaron en un menú, una pantal<strong>la</strong> <strong>de</strong> carga y en un escena en el espacio. Tratar <strong>de</strong> utilizar el motor es<br />
importante, no solo para mostrar <strong>la</strong>s posibilida<strong>de</strong>s y motivarse a uno mismo, sino también para probarlo en una<br />
situación real y arreg<strong>la</strong>r pequeños, o tan pequeños, problemas que puedan surgir.<br />
No hab<strong>la</strong>re sobre los <strong>de</strong>talles <strong>de</strong>l motor dado que no es importante para el tema actual. Es más, el motor está lejos<br />
<strong>de</strong> su versión final (<strong>de</strong> ahí su nombre) y no tendría una verda<strong>de</strong>ra utilidad <strong>de</strong>scribir <strong>la</strong> estructura <strong>de</strong>l mismo.<br />
En <strong>de</strong>finitiva, a partir <strong>de</strong> lo aprendido en estos últimos meses <strong>de</strong> escritura <strong>de</strong> <strong>la</strong> tesis he pulido mis conocimientos y<br />
he incorporado muchos nuevos. Y es por esto, que sería interesante que pudiera seguir con este motor,<br />
reestructurar ciertas c<strong>la</strong>ses, incorporar ciertas cosas aprendidas y terminar algunas que ni siquiera se empezaron.<br />
Con el objetivo <strong>de</strong> <strong>de</strong>jarlo al nivel que me gustaría y ¿porque no? utilizarlo en una aplicación real, ya sea académica,<br />
industrial o <strong>de</strong> entretenimiento. Oja<strong>la</strong>, disponga <strong>de</strong>l tiempo para continuarlo.<br />
A continuación, se muestran algunas capturas <strong>de</strong> pantal<strong>la</strong> <strong>de</strong>l Final Engine:<br />
Página 96