Problemas con Mode7

Started by Sylph ID, May 08, 2016, 11:13:56 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Sylph ID

Buenas Gente  ;)
Esta es la primera cosa que escribo en el foro y creo que tiene un poco de importancia para los que les gusta el modo 7 como a mi ;D

He estado probando desde hace tiempo Mode7 y me he dado cuenta que hay, en su estructura global, variables que al parecer no funcionan correctamente.

Las variables son Focus y Horizon, las cuales según tengo entendido, sirven para enfocar la cámara y subir o bajar el horizonte del Mode7 respectivamente.

Lo que ocurre es que me he fijado que Focus en la versión de BennuGD no enfoca la cámara, sino que ajusta la resolución del mapa (Esto no pasa en Fenix). y con respecto al Horizon no se como usarlo. :-\ nunca he visto resultado con esta variable.

Creo que este tema ya se ha tocado anteriormente en la sección del Foro en Ingles.

De todas formas, les deje un archivo ".Zip" que contiene un pequeño Test del Mode7 para comparar entre la versión de Fenix y Bennu.
Para ejecutarlo solo denle a "Run.bat" y luego seleccionen una opción.

Un Saludo a todos y gracias por su atención :)





Drumpi

Hola, bienvenido al foro :)
Humm, nunca he usado la variable focus, de hecho, ni siquiera la recuerdo.
Pero horizon sí, es algo que incluso yo mismo pregunté a Slainté. Según me contó, el algoritmo del modo7 que está implementado no tiene nada que ver con el de DIV, de hecho, es una versión más simple, y nunca supo implementar el cambio de altura en el horizonte, y sigue sin hacerse desde que Fenix es Fenix.
A cambio, puedes tener color transparente y transparencias, y en las últimas versiones de Bennu, incluso mapas de 16bits (no recuerdo si se implementaron los de 32bits).

Se pueden hacer cosas muy chulas con el modo7, más allá de juegos de carreras o similares a lo que se hacía en SNES con planos abatidos. Hay quien ha recreado la batalla de Hoth de SNES en Pulplife Wars (o algo así, no recuerdo el nombre exacto), épicos combates contra jefes en Nazca Dreams (si tienes suerte de que te funcionen) y algún experimento raro en las crapcompos, por ejemplo.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

Sylph ID

Gracias por despejar mis dudas, Drumpi ;D Ahora me queda mas claro el tema del modo7
Saludos.

SplinterGU

Quote from: Drumpi on May 10, 2016, 01:10:45 AM
Hola, bienvenido al foro :)
Humm, nunca he usado la variable focus, de hecho, ni siquiera la recuerdo.
Pero horizon sí, es algo que incluso yo mismo pregunté a Slainté. Según me contó, el algoritmo del modo7 que está implementado no tiene nada que ver con el de DIV, de hecho, es una versión más simple, y nunca supo implementar el cambio de altura en el horizonte, y sigue sin hacerse desde que Fenix es Fenix.
A cambio, puedes tener color transparente y transparencias, y en las últimas versiones de Bennu, incluso mapas de 16bits (no recuerdo si se implementaron los de 32bits).

Se pueden hacer cosas muy chulas con el modo7, más allá de juegos de carreras o similares a lo que se hacía en SNES con planos abatidos. Hay quien ha recreado la batalla de Hoth de SNES en Pulplife Wars (o algo así, no recuerdo el nombre exacto), épicos combates contra jefes en Nazca Dreams (si tienes suerte de que te funcionen) y algún experimento raro en las crapcompos, por ejemplo.

creo que lo expresaste perfectamente... nunca se "SUPO implementar" el tema, al menos yo nunca me puse seriamente a hacerlo, salvo algun que otro experimento a prueba y error...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Drumpi

Lo gracioso es que el modo7 es más que un simple plano abatido. Si somos rigurosos, el modo7 de SNES permite hacer todo tipo de deformaciones a una imágen: escalados, rotaciones, abatimientos, o cosas tan espectaculares como un fondo cilíndrico (Super Castlevania IV) o unas deformaciones geniales en no-me-acuerdo-qué-juego-de-naves :P

También teníamos la VSE, una librería para Fenix 083b que permitía crear un "modo7 con alturas", en la que se podía hacer rotaciones y ajustar la cámara en un entorno "3D", pero estaba en fase experimental y tenía un fallo con la cámara en ángulos múltiplos de 90º (división por cero, es una de las cosas que tenía en la pila de proyectos para revisar :S). Era como los terrenos de Unity, pero más primitivos.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

SplinterGU

ya la VSE no era modo7.

el verdadero modo 7, solo permite fondos, o sea, piso y techo... la VSE me parece iba mas alla...

el modo 7, se llama asi, porque era el modo numero 7 de los 8 modos de video disponible en la super video... aca lo explica bien...

https://es.wikipedia.org/wiki/Modo_7
https://en.wikipedia.org/wiki/Mode_7
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Drumpi

Por eso he dicho "modo7 con alturas", entre comillas, porque no es el modo7 de SNES.
VSE dibujaba una línea vertical por cada pixel del mapa, desde la parte inferior de la ventana hasta la altura indicada en el mapa de alturas, respetando la profundidad de cada una. Es por ello que no se podían dibujar techos, aunque sí que se podían dibujar dos terrenos en el mismo mapa, ya que hay que pasarle como parámetro un mapa creado con MAP_NEW donde renderizar, y hacerle un MAP_CLEAR después de cada frame.
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)

l1nk3rn3l

la idea seria portar este modo7 que esta mas completo..

https://github.com/gustavosbarreto/mario-kart


mientras usa estas librerias para bennu

usando sprites bennu el motor YETI3D
https://sourceforge.net/projects/coldev/files/Yeti3D%2B%2B/


usando OPENGL el motor 3DM8ee
https://sourceforge.net/projects/coldev/files/Bennugd3D/

SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Drumpi

Oye, y por curiosidad (ahora que tengo la cabeza totalmente ida por tirarme un par de horas de programación intensiva)... si Mike Green tiene el código original de DIV ¿no sería interesante preguntarle a él si nos lo puede ceder? aunque esté bajo los derechos de Fastrack, si se le va a añadir transparencia y modos de 16 y 32 bits ¿no serían suficientes cambios para decir que no es el mismo código?
Hala, como con 1001 procesos sólo va a 9 FPS, vamos a meterle 32 veces más, a ver si revienta.
(Drumpi epic moment)