Buenas!
Por fin tengo avanzada la parte de Sprites 3D, es decir, simular Sprites 2D usando poligonos planos y el motor OpenGL de la DS.
Al ser una version BETA, posiblemente contenga fallos. Ademas, no he tenido tiempo para documentarlas, asi que si quereis hacer pruebas, mirar los ejemplos y reportarme los posibles bugs.
Ademas, he añadido soporte para mapas de colisiones con precision por pixel, las cuales tambien se encuentran en desarrollo. La lista completa de novedades de la BETA, es la que sigue:
- Corregidos algunos comentarios en los ejemplos de Sprites.
- Añadida la funcion NF_LoadColisionBg(); para cargar un fondo de colisiones.
- Añadida la funcion NF_UnloadColisionBg(); para descargar un fondo de colisiones de la RAM.
- Añadida la funcion NF_GetPoint(); para obtener el pixel de la coordenada dada en un fondo de colisiones. Si la coordenada esta fuera del mapa, devuelve 0.
- Modificadas las funciones NF_GetTile y NF_SetTile(); para que en caso de querer cambiar un tile fuera de rango, la orden sea ignorada.
- Añadido el error nº119.
- Añadida la funcion NF_Set3D(); para iniciar el modo 3D.
- Añadida la funcion NF_InitOpenGL(); para iniciar el motor OpenGL.
- Añadida la funcion NF_Init3dSpriteSys(); para iniciar el sistema Sprites 3D.
- Añadida la funcion NF_Vram3dSpriteGfx(); la cual copia a la VRAM un grafico para usarlo posteriormente en la creacion de un sprite 3D.
- Añadida la funcion NF_Free3dSpriteGfx(); la cual elimina de la VRAM el grafico especificado.
- Añadida la funcion NF_Vram3dSpriteGfxDefrag(); la cual reordena la VRAM de texturas.
- Añadida la funcion NF_Vram3dSpritePal(); la cual copia a la VRAM una paleta para poder usarla posteriormente en un sprite 3D.
- Añadida la funcion NF_Create3dSprite(); la cual crea un Sprite 3D en las coordenadas indicadas, usando la textura y paleta indicadas. El tamaño de estos sprites puede ser de cualquier medida en potencia de 2 (entre 8 y 1024).
- Añadida la funcion NF_Delete3dSprite(); la cual borra de la pantalla el Sprite 3D con la ID indicada.
- Añadida la funcion NF_Sort3dSprites(); la cual reordena la prioridad de los Sprites 3D basandola en su ID.
- Añadida la funcion NF_Move3dSprite(); para mover un Sprite 3D por la pantalla.
- Añadida la funcion NF_Show3dSprite(); la cual muestra u oculta el sprite con la ID indicada.
- Añadida la funcion NF_Set3dSpriteFrame(); la cual cambia el frame del sprite indicado.
- Añadida la funcion NF_Update3dSprites(); la cual actualiza los Sprites 3D en la pantalla.
- Añadida la funcion NF_Rotate3dSprite(); la cual rota el sprite indicado sobre los ejes indicados.
- Añadida la funcion NF_Scale3dSprite(); la cual escala el sprite indicado sobre los ejes indicados.
- Añadidos ejemplos para el uso de 3D Sprites.
Sigo trabanjando en pulir los añadidos, asi como terminando las cosas pendientes, como las transparencias. Os mantendre informados!
Saludos
NightFox
Descarga: http://www.nightfoxandco.com/index.php/programacion/nfl-es/
Nuestra web oficial:
http://www.nightfoxandco.com/
Siguenos en facebook:
http://www.facebook.com/pages/NightFox-Co/284338634917917
Por favor, no useis los MP para preguntas, usar el FORO:
http://www.nightfoxandco.com/forum/
Asi nos ahorramos de contestar lo mismo 20 veces.
Como siempre
un honor recibir los avances de tu trabajo por aquí. Actualizaré mi versión en breves.
Salu2