aunque aun no he publicado la v32, os quiero adelantar algo para que veais como va quedando. Está prácticamente acabada aunque tengo que preparar una buena demo y tambien actualizar el manual de programación, por lo que aun me demoraré un pelín.
Lo que permite la v32 es crear un mundo 2D y recorrerlo en 3D. Es decir, podemos pintar caminos, plantas , arboles, vallas, etc y activar el modo de visualizacion 3D para ver en 3 dimensiones nuestro mapa del mundo. Este sencillo y versátil mecanismo permitirá hacer juegos de tanques, de naves, de carreras etc, casi con la misma sencillez con la que hacemos un juego 2D.
Esto se puede concebir como una especie de nuevo modo de visualizacion 3D, como el "modo 7" de SNES (salvando las distancias), y se puede comprender con el siguiente ejemplo
nuevo modo 3D para recorrer el "mapa del mundo" de 8BP |
La detección de colisión de sprites sigue funcionando en 2D, de modo que podemos detectar cuando nuestro coche se sale de la carretera o pisa un charco, pero al imprimir los sprites se calculan coordenadas 3D antes de pintarlos.
ya entrando en mas detalle tenemos las siguientes nuevas características:
- Un comando de activación del modo 3D, que nos permite limitar la aplicación de la proyección 3D a un subconjunto de sprites de los 32 disponibles. Además, nos permite definir un offset vertical para proyectar mas arriba o mas abajo de la pantalla. Por lo demas, las cosas siguen funcionando como hasta ahora para juegos con scroll. El comando MAP2SP calcula qué imágenes del mundo caen dentro de la pantalla y genera una lista de sprites a imprimir. El comando PRINTSPALL los imprime, pero si está activado el modo 3D, entonces primero los proyectará. La porción del mundo que se considera, de 160x200, tras ser proytectada caerá en un rectángulo de la pantalla de dimensiones 160x100. Los sprites no afectados por el modo 3D, se seguirán imprimiendo en cualquier parte de la pantalla y sin ser proyectados
- Podemos definir imágenes con zoom. Básicamente son imágenes compuestas de varias versiones de la misma (unas mas grandes y otras mas pequeñas) y al proyectarse mas alto o mas bajo se escogerá automáticamente la versión mas adecuada
- Podemos definir un nuevo tipo de imagen llamados "segmentos": se definen por repetición de una sola scanline, muy útil para trazar caminos. Ocupan muy poca memoria y se pueden colocar en el mundo torcidos, de modo que nos permiten crear curvas y caminos. En un juego de tanques en el desierto puede que no los usemos pero en un juego de carreras son útiles.
Por último, y puesto que en 3D los juegos avanzan muy deprisa, será util un comando de actualización del mapa del mundo, para poder recorrer largas distancias y no solo la capacidad actual del mapa que es de 82 items. Estoy trabajando en este comando, y pronto estará todo disponible
Os dejo con un vídeo para que podáis ver como va quedando. Espero tenerlo todo publicado muy pronto
hasta la vista!
Wow! Que ganas de probarlo, que librería más impresionante
ResponderEliminar