¡Hola, bienvenido al foro de las noches Skyperas!

Entra con tu login, o registrate y disfruta con gente que tiene tus mismas aficiones.
Noches Skyperas
RegístrateBuscarFAQFavoritosMiembrosGruposConéctate
Noches Skyperas » Emuladores
Sobre Resoluciones. Integer Scale OFF / ON & Aspect Rati

Responder Página 1 de 1
Tema creado por Armandorev - Lun 15 May 2017 21:30 - 75 lecturas
Autor Mensaje
Armandorev
Vanguardia
Vanguardia


Reg.: 27 Ene 2017
starstarstarstarstarstarstar

Mensajes: 199
Género: Masculino
Ubicación: Milton Keynes
Reino Unido

Agradeció: 6 posts
Le agradecieron: 21 posts


#1 Escribió el primer mensaje de este tema Lun 15 May 2017 21:30 - Sobre Resoluciones. Integer Scale OFF / ON & Aspect Rati Responder citando
Aqui estaba revisando ahora resoluciones y demas para la pantalla de mi recreativa y estaba con un lio mental que al final creo que he resuelto y lo pongo por aqui por si a alguno le interesa, no solo para recreativa, sino para la resolucion en general que se use en emuladores. Leyendo por ahi mucha gente recomendaba dejar el integer scale en On.

El integer scale para que la gente entienda es lo siguiente. Cuando el emulador va a pintar la pantalla, si por ejemplo la resolucion de una CPS1 era de 384x224 tiene que calcular la resolucion a la que esta la pantalla y hacer el calculo de cuantas veces cabe esa resolucion entera . En el caso de estar a 640x480 solo cabe una vez ya que 384 X 2 es mas de 640 (aunque cupieran dos veces de alto), en el caso de estar a 800X600 cabria dos veces ( es decir cada pixel original se podria pintar como un cuadrado de 2X2), 1280x720 cabe tres veces, 1920x1080 cabe cuatro veces, 2560x1440 cabe 6 veces y a 4K (3840x2160) cabria 9 veces. Esto para algunas personas tiene la ventaja de que todos los pixeles son regulares, y sobre todo al aplicar scanlines o shaders todos son iguales y no hay perdidas en la calidad de los shaders o scanlines. La parte mala que tiene.. que sobra pantalla.

A 640x480 te quedarian unas barras de de 128 pixeles por arriba de la imagen, 128 por abajo , 128 por la izquierda y 128 por la derecha. a medida que aumentamos la resolucion estas barras son mas pequeñas en comparacion con el tamaño de la pantalla, a 800x600 41 pixeles por arriba, 41 por abajo (82 en vertical dire de aqui en adelante) y  152 en horizontal  . Esto es aproximadamente un 10% de resolucion vertical y un 25% en horizontal . en una pantalla 720p se perderian 128 pixeles en horizontal (10%) y 48 en horizontal (7%). Realmente lo unico que nos importa es la perdida vertical, ya que al ser formato apaisado donde siempre sobrara es en horizontal y en una resolucion 1080p se pierden 184 pixeles en vertical (un 17%!!!) Aqui se nota un salto mayor porque el aumento de resolucion no implica en la misma medida que quepa mas veces aun la pantalla original. 1440p se pierden 96 pixels (solo un 6%) y a 4K (2160p) se perderia igualmente un 7% de la pantalla en vertical.

Que tiene de malo forzar el integer scale ... que no podemos forzar un ratio de 4:3 del juego, bueno podemos, pero ya perderiamos la 'pureza' del integer scale. Las resoluciones originales de los sistemas no tenian porque ser 4:3 pero estaban pensadas para que la pantalla se estirase o achatase a 4:3.
Como afectaria esto... por ejemplo la resolucion de la CPS1,CPS2 y CPS3 (384x224) de echo es una resolucion de 16:9 y si mantenemos el integer ratio a ON y forzamos a 4:3 no nos vale de nada este calculo exacto, achatariamos la imagen horizontalmente para que fuera 4:3 y al final no seria un integer scale puesto que por ejemplo no tendriamos cada pixel representado por ejemplo por un cuadrado de 6x6 , sino por un cuadrado de 4.5x6 pixeles. Ya estamos metiendo ahi deformaciones y lo que es peor... decimales de pixeles. Dos pixeles originales juntos compartirian un pixel de pantalla al escalarlo (y el emulador deberia hacer el color medio de los dos para pintar ese pixel compartido). Ya hemos perdido toda la gracia de usar el escalado entero y encima perdemos parte de la pantalla por arriba y por abajo. Aunque estariamos teniendo este efecto solo en la horizontalidad. Verticalmente no habria ninguna perdida.
El dejar en off el escalado entero se salta toda esta parafernalia y directamente escala para que la altura siempre sea el 100% de la pantalla. Por simplificar, emulando una CPS2 (382x224) .. a 1080p tendriamos que escalar la pantalla 4.82 veces. cada pixel original se representaria por un cuadrado de 4.82x4.82 pixeles. es decir no habria ningun pixel representado perfectamente o visto de otra forma , cada pixel que pintamos al final tendria un 17% de imperfeccion, pero estamos usando el 100% de la pantalla y mantendriamos el ratio de 4:3 para ver los juegos como se veian en los monitores. Esta CPS2 a 4K dejaria que cada pixel original estaria representado por un cuadrado de 9.7x9.7 pixeles o como hemos dicho antes cada pixel tendria un 7% de imperfeccion, pero a resoluciones menores como 800x600 esto se nota muchisimo mas, ya que cada pixel original estaria representado por un cuadrado de 2.67x2.67 pixels y esto seria que cada pixel tendria un 25% de imperfeccion. Esto lo podeis notar porque aunque desactivemos el bilinear filtering la imagen se sigue viendo borrosa o con anti-aliass , aunque cuanto mayor es la resolucion se nota menos, ya que estas uniones entre pixeles son mas y mas pequeñas.

Tambien podeis preguntaros porque influye esto en los shaders, y es sencillo, los shaders cuanta mas calidad tienen en efectos mas resolucion requieren. es como si pensarais en la resolucion de detalle que puede pintar a cada pixel original. Imaginaros para hacer una idea que a 800x600 podeis hacer un 'sprite' de calidad 2.67x2.67 y a 4K 9.7x9.7 ... en 4K le podeis dar mucho mas detalle para simular las mil historias que tenian los Crt (phospor, reflejo en el cristal, bloom, etc..). De nuevas todo este efecto se pierde un poco con el integer scale off, pero a altas resoluciones casi se puede descartar esa perdida.

Despues de toda esta pelicula, aun tengo que pensar que hare, pero creo que dejare el escalado en OFF y disfrutar del 100% de la pantalla, e intentare pillar para la recreativa una pantalla de muy buena resolucion (1440p o 4K) y poder ponerle los shaders que tengo actualmente en la pantalla donde juego que son ya una pasada y encima al ser en una pantalla de una resolucion menor se veran mucho mejor creo.

Perdonarme por este ladrillo aunque espero que os haya parecido interesante :)

Saludos desde brexitlandia!

Dar gracias al autor por este mensaje
Subir ^
Chixpy
Vanguardia
Vanguardia


Reg.: 08 Ene 2017
starstarstarstarstarstarstarstar

Mensajes: 112
Género: Masculino
Castilla y León

Agradeció: 6 posts
Le agradecieron: 12 posts


#2 Lun 15 May 2017 23:21 - Asunto Responder citando
Bastante bien explicado, como ya dije es cuestión de gustos:

http://nochesskyperas.1foro.com/post2432.html?highlight=#2432

Lo que sí que quiero hacer notar, es que las recreativas no tienen porque ser 4:3, sino que algunas son 16:14 (por ejemplo Moon Cresta).

Y como cosa curiosa en el MAME de las competiciones he tenido que desactivar una opción llamada "unevenstretch" porque los barriles del Donkey Kong no eran redondos, ni los bloques del Thunder & Lighting cuadrados (además de que algunos bloques me aparecían con el doble de borde por un lado).


PD: Algunas veces, es posible mantener la relación de aspecto con escalado entero, no tiene porque ser mismo escalado de alto que de ancho; por ejemplo en el Moon Cresta tiene una resolución nativa de 224x768 y para mantener la relación de aspecto original de la pantalla hay que estirar el ancho al triple que el alto.

Dar gracias al autor por este mensaje
Subir ^
Armandorev
Vanguardia
Vanguardia


Reg.: 27 Ene 2017
starstarstarstarstarstarstar

Mensajes: 199
Género: Masculino
Ubicación: Milton Keynes
Reino Unido

Agradeció: 6 posts
Le agradecieron: 21 posts


#3 Escribió el primer mensaje de este tema Lun 15 May 2017 23:38 - Asunto Responder citando
Chixpy escribió :
Bastante bien explicado, como ya dije es cuestión de gustos:

http://nochesskyperas.1foro.com/post2432.html?highlight=#2432

Lo que sí que quiero hacer notar, es que las recreativas no tienen porque ser 4:3, sino que algunas son 16:14 (por ejemplo Moon Cresta).

Y como cosa curiosa en el MAME de las competiciones he tenido que desactivar una opción llamada "unevenstretch" porque los barriles del Donkey Kong no eran redondos, ni los bloques del Thunder & Lighting cuadrados (además de que algunos bloques me aparecían con el doble de borde por un lado).


Eso debe ser por lo que he comentado. Los juegos estaban pensados normalmente para 4:3  pero la resolucion no era esa, es decir si querian pintar un cuadrado no podian pintarlo por decirlo de 5x5 pixeles, porque al presentarlo a 4:3 seria mas estrecho que alto. tendrian que pintar calculando la transformacion que sufririan mas adelante . de ahi cuadrados rectangulares, circulos ovalados, bordes desiguales... Esto incluido a no usar escalado por enteros pues ya lo termina de liar :).

Dar gracias al autor por este mensaje
Subir ^
Chixpy
Vanguardia
Vanguardia


Reg.: 08 Ene 2017
starstarstarstarstarstarstarstar

Mensajes: 112
Género: Masculino
Castilla y León

Agradeció: 6 posts
Le agradecieron: 12 posts


#4 Mar 16 May 2017 15:48 - Asunto Responder citando
Ya, pero lo curioso es cuando desactivo esa opción es cuando ya no se conserva el 4:3.  Rolling Eyes

Con el Moon Cresta además quería decir que tiene una resolución interna de 224x768 (se puede comprobar sacando un vídeo con el MAME, o sacar una imagen pura pero hay que configurarlo porque por defecto lo hace normalizado) y que escalado entero no tiene porque ser por el mismo número en ambas direcciones. Puede ser x1 en la altura y x3 en el ancho como es el caso y MAME se empeña en dejarlo a 3:4 y creo que está mal (y en otros muchos juegos)

Como gané esa competición hay dos vídeos para comparar  Very Happy

El vídeo oficial de LNS. Capturado directamente de la pantalla y con el zoom de MAME cuando se juega, con un poco de antialising:
https://www.youtube.com/watch?v=kyiYXQYj4bs

El que subí a mi canal, que es un vídeo renderizado directamente por MAME y ampliado solo el ancho x3 sin suavizado (además de haber sido comprimido con h264, pero no es importante para lo que quiero mostrar):
https://www.youtube.com/watch?v=vw10GHRkpiw

Diferencias de color y antialiasing aparte, la mía se ve más ancha.

Cuando activo "unevenstretch" que por defecto está activado se ve a 3:4 (LNS) y si lo desactivo a 14:16 (mi vídeo). Solo puedo preguntar ¿3:4 o 14:16?

Mi respuesta es obviamente la que más te guste.

Al comenzar la máquina una rejilla de 0 de 28x32 caracteres y el cuadrado para elegir letra al poner record es cuadrado con 14:16 (sobre el minuto 14:40 en ambos vídeos).

Dar gracias al autor por este mensaje
Subir ^
Armandorev
Vanguardia
Vanguardia


Reg.: 27 Ene 2017
starstarstarstarstarstarstar

Mensajes: 199
Género: Masculino
Ubicación: Milton Keynes
Reino Unido

Agradeció: 6 posts
Le agradecieron: 21 posts


#5 Escribió el primer mensaje de este tema Mar 16 May 2017 23:33 - Asunto Responder citando
Bueno para ilustrar un poco los shaders y demas.. os pongo unas capturas que he hecho con el movil de la pantalla con y sin shaders, intentando sacar una zona similar. En algunas parece que se pierde detalle pero es mas por como el movil ha modificado la luz y el contraste en la foto

[ Aquí va una imagen (hay que estar registrado para verla) ]
[ Aquí va una imagen (hay que estar registrado para verla) ]
[ Aquí va una imagen (hay que estar registrado para verla) ]
[ Aquí va una imagen (hay que estar registrado para verla) ]

Dar gracias al autor por este mensaje
Subir ^
gadesx
Vanguardia
Vanguardia


Reg.: 03 Ene 2017
starstarstarstarstarstarstarstar

Mensajes: 82
Género: Masculino

Agradeció: 0 posts
Le agradecieron: 12 posts


#6 Dom 21 May 2017 19:18 - Asunto Responder citando
Como los juegos de antes, y muchos de ahora que son basados en sprites y tiles no en sistemas vectoriales,
al poner resoluciones que no son 1X, 2X y cosas así, los graficos se ven mal porque se inventan pixeles.

En la super nintendo pasa una cosa y es que la resolucion original es 256x240 o 256x224 normalmente,
que se ve casi cuadrado, y esta pensado que las propias televisiones de tubo estiren la imagen para que
se vea como esta pensado. El TV Aspect que llevan algunos emuladores es para eso.

PD: Esto es mas una anecdota mia, tengo la costumbre de que para poner
bien la resolucion en emuladores de NES poner el megaman y mirar
si se ve bien la barra de vida.

Dar gracias al autor por este mensaje
Subir ^
Mostrar mensajes anteriores:    
Responder Página 1 de 1
Horas en GMT + 2
Ir a: 

NO puedes: crear mensajes/responder temas/editar tus mensajes/borrar tus mensajes/votar en encuestas -> Regístrate/Conéctate
Volver a Emuladores