.comment-link {margin-left:.6em;}

PROYECTO UTOPIA

viernes, noviembre 11, 2005

Moviendo personajes

Uno piensa que el simple hecho de mover un personaje en el nivel es tan facil como actualizar sus coordenadas. Nada mas lejos de la realidad.

Cada vez que muevo un personaje tengo que volver a recolocarlo en el nivel pero intentando hacerlo de forma optima, no es cuestion de consumir ciclos de CPU cuando no hace falta.

Ademas el simple hecho de moverlo teniendo integrado un motor de fisicas es una odisea en si. Por ejemplo en Newton, que es el que estamos usando, algunas de las cosas que hay que controlar son:

* Asegurarme que no haya friccion entre el nivel y el personaje.
* Controlar en cada momento si el personaje esta pisando el suelo lanzando un rayo hacia los pies y calculando la distancia con el suelo.
* Si quiero moverlo hacia adelante tengo que obtener la matriz de posicion y rotacion del personaje, eliminarle el vector de posicion, multiplicarla por el vector de direccion en la que deseo moverlo y finalmente añadirle el vector resultante como una fuerza en el cuerpo que representa el personaje.
* Hay que intentar no pasarse al mover el personaje porque movimientos demasiado rapidos hacen que literalmente atraviese la pared sin inmutarse.

Adios a los viejos buenos tiempos de 'personaje.x = personaje.x + 10 * reloj'. Con lo bien que me lo pasaba yo moviendo la paleta para arriba y para abajo en el Pong.

miércoles, noviembre 02, 2005

Octubre. Estado del proyecto.

Como todos los meses, comentaremos el estado del proyecto. Aunque estas revisiones pasarán a realizarse quincenalmente.

PROGRAMACIÓN:

Runtime:
Interiores BSP/PSV Octrees: Para la parte de carga de niveles al 95% del trabajo.
Exteriores: 80% del trabajo. El TREN esta operativo pero falta unirlo al nucleo del juego y controlar la compresión de los niveles.
Fisicas: En fase inicial de desarrollo. Al 10%. Queda un gran trabajo por adelantar. Estamos trabajando con Newton ya que ODE generó muchas dificultades.
Scripts. Usamos LUA. A un 60% del trabajo necesario.
Shaders: Al 40% del trabajo necesario.

Offtime:
Visor de modelos: Al 70% del trabajo. Mejorando la carga de animaciones. Usamos para las animaciones y modelos la libreria Cal3D.
Editor de niveles o mapas: al 20%. Esta montada la estructura basica con la la carga de mapas. Queda añadir todo el proceso de asignación de elementos en el mapa.
Editor de particulas: Al 10%. Las clases existen pero hay que remodelarlas para adaptarlas al motor y al sistema de scripts.

Esto es el trabajo que esta abierto. Las partes que no se comentan es porque en estos momentos estan detenidas o en fase de analisis.

GRAFICOS:

Los cuatro personajes principales estan diseñados. Tres estan modelados en alta. Uno esta pendiente de texturas. Queda por modelar otro personaje aunque se ha retrasado su modelado debido a cambios en su diseño.

Existen diseñados y modelados diversos personajes secundarios, niveles, objetos del entorno, etc. Aunque queda un gran trabajo por delante. Necesitamos grafistas en 2d, 3d y de niveles.

GUION:

El guión esta bastante avanzado. Se han definido cuatro tutoriales de inicio, cuatro zonas principales de juego divididas en varios niveles. En este momento, los tutoriales estan finalizados junto con la primera zona de juego. Tampoco podemos adelantar mucho ya que se revelaria parte del guión. :-)

WEB:

Se ha subido una versión basica de la web pendiente de mejoras esteticas. Seguiremos ampliando sus contenidos.

SONIDO:

Se ha empezado a trabajar en la elaboración del sonido, tanto musica ambiental como efectos.

Nuestro objetivo inmediato es el de presentar a primeros de año una demo con el primer nivel tutorial del juego.

Como podeis ver tenemos mucho trabajo por delante pero contamos con un buen equipo con muchas ganas de continuar con este proyecto que sigue siendo una Utopia.

Saludos.