Versión para imprimir

Soluciones "efecto Tearing" en diferentes emus.iniciada por Mikonos

marcianitos > Otros emuladores

Part 1 of 1   

Mikonos4/2/2005, 18:21
Pues se me ha ocurrido que podriamos listar las soluciones al efecto tearing en los distintos emus que utilizamos, pues algunas veces se requieren búsquedas exageradas para dar con la solución (léase mi aventura para dar con la solución de PlayStation para el plugin gráfico D3D).


La solución para Playsatión para dos diferentes plugins gráficos ya está dada, para Mame también (le tiraré una foto), acabo de redactarla en el post sobre PSX anterior.

Os animáis a publicar las diferentes soluciones para los emus que quedan y echarle , si es posible, una foto?

Saludos.

BUBU ;-)4/2/2005, 18:58
Hola. Mikonos, parece interesante la idea. COn lo de la foto, ¿qué quieres decir? ¿Una foto al emulador en ejecución con Tearing vs sin-Tearing?
Mikonos4/2/2005, 19:54
Me refiero a una captura de windows que ejemplifique dónde está la opción/es a marcar para evitar el "Tearing", exactamente como lo que posteé para PSX.

Saludos.
Mikonos4/2/2005, 21:46
Mame32

Solución "efecto Tearing"

Habrás de ir a "Default game options/pestaña - advanced" y señalar "Use direct draw" y, bajo esta, "Triple buffering". Otra medida de apoyo para suprimir tal efecto es marcar también la opción "Match game refresh rate".

(IMG:http://img202.exs.cx/img202/8862/mameetearing3vs.jpg)


Saludos

BUBU ;-)4/2/2005, 21:55
Más bien MAME32
Mikonos4/2/2005, 22:20
Eso es, es Mame32. Ya lo modifiqué arriba.


Saludos.
BUBU ;-)4/2/2005, 23:36
Mame

En el fichero C:\...\MAME\Mame.ini incluir las siguientes líneas

 CODE 
### Windows video options ###

waitvsync              1
triplebuffer            1
ddraw                   1

BUBU ;-)4/2/2005, 23:36
Pero lo que acabo de poner, a mí me quitó el tearing, pero hizo que los gráficos pegaran saltos, en lugar de ir suaves. Me volveré a fijar, y si fueron paranoias mías pues borro este mensaje.
Mikonos5/2/2005, 00:00
Prueba quitando el WaitSync. Yo nunca activo esa casilla.
BUBU ;-)5/2/2005, 00:08
Esa información la recojí de otro marciano que quitó el tearing así. Voy a quitar ahora mismo el wativsync a ver qué tal y te comento.
BUBU ;-)5/2/2005, 00:29
Pues ya he probado. Yo siempre que chequeo el Tearing en MAME uso el Ghosts'n'Goblins. El tearing en este juego es descarado.
Bueno, tanto si pongo como siquito la opción de waitvsync, el tearing desaparece con las otras dos opciones. Por tanto sentencio que waitvsync no desteariniza.
Ahora bien: lo he probado en el monitor de mi PC (frec. horizontal =31.5 kHz, frec. vertical=60 Hz). Creo que el tearing no sólo es dependiente del software (MAME) sino también del hardware (frecuencias de refresco).

Me queda probar estas opciones en el monitor arcade (frec. horizontal = 15.7 kHz, frec. vertical=47 Hz)

BUBU ;-)5/2/2005, 01:22
Jiji, y además, he resuleto el tema de la imagen a saltos. De la faq de MAME se obteine este texto sobre el tearing

 CODE Certain games do not have the exact same screen refresh rate as your monitor. Hence, there can be some dropped (or doubled) frames as the emulator tries to compensate.

Another problem is that the screen updating is not locked to the screen refresh rate. Therefore, the screen may be refreshed when only half of it has been updated. In these cases, this causes the top part of the screen be new, and the bottom part is from the previous frame. This is especially noticeable in horizontally scrolling games.

To fix this, use the -triplebuffer parameter. Triple buffering updates the screen at exactly the screen refresh intervals to avoid tearing. However, since the monitor refresh rate can still be different from the emulation screen refresh rate, the games can still exhibit choppiness. In the Windows version, you can try to avoid this by using the -matchrefresh parameter. It will select a refresh rate that most closely matches the original.

It should be noted that neither the Windows nor the DOS version support using the exactly correct monitor refresh rates for all games. Usually this is not a concern, but if you are feeling adventurous, you can try out making your own video modes (information at How-To-Add Video Modes to Windows) or using AdvanceMAME, which offers much more flexibility over the video output. Be sure to read the documentation that comes with it, since it is not the easiest software to configure.


el cual traduzco:


Algunos juegos no tienen la misma tasa de refresco de imagen que la de tu monitor. De ahí a que pueda haber varios frames eliminados (o duplicados) que el emulador intenra compensar.

Otro problema es que la actualización de la imagen no está bloqueada respecto a la tasa de refresco de la misma. Por tanto, la imagen podría refrescarse cuando sólo una mitad ha llegado a acutalizarse. En estos casos, esto provoca que la parte superior de la imagen sea nueva, y la parte inferior muestre aún el frame anterior. Esto se nota especialmente en los juegos de scroll horizontal.

Para arreglar esto, usa el parámetro -triplebuffer. Triple Buffering actualiza la imagen exactamente en los intervalos de refresco de la pantalla para evitrar el Tearing. En cambio, debido a que la tasa de refresco del monitor puede ser también diferente al del emulador, los juegos podrían seguir mostrando un temblor. En la versión para Window$, se puede intentar evitar esto usando el parámetro -matchrefresh. Esto seleccionará una tasa de refresco lo más parecido al original.

Hay que hacer notar que ni la versión de Window$ ni la de DO$ dan soporte a las tasas de refresco del monitor correctas para todos los juegos. Normalmente esto no concierne, pero si te sientes aventurero, puedes intentar fabricarte tus propios video modes, o usar AdvanceMAME, que ofrece mucha más flexibilidad frente a la salida de vídeo. Asegúrate de leer la documentación que viene con AdvanceMAME, ya que no es precisamente el software más sencillo de configurar



Bueno, pues me he puesto lo del triple buffering, y lo del matchrefresh, y va PERFECTO.
Mikonos5/2/2005, 01:23
Ainss, Bubu. Si me tomo las molestias en comentar como se quita ese efecto en Mame y poner una foto (además de hospedarla) es que tengo bien controlado el tema. Por tanto, ya sabías que el tearing desaparecía marcando las opciones anteriormente comentadas y no dependian de nada más. Vaya "perogrullada" me que dices. Jajaja.

Saludos

Mikonos5/2/2005, 01:27
Claro, Bubu. De ahí que en la definición que dí del Tearing solo hacía referencia a que el efecto sólo se producía en PC y TV.
BUBU ;-)5/2/2005, 01:29
Pero creo que estás a medias. Además de triplebuffer, marca matchrefresh.
Mikonos5/2/2005, 01:34
Ok, como dice el texto esta es otra manera de prevenir ese efecto si no funciona lo anterior, aunque te aseguro que este, por sí sólo, no lo previene. Creéme, Bubu.

Bueno, lo incluiremos también. Ya modifico el segundo post para que lo cojas de ahí tal cual.

Vaquero6/2/2005, 01:57
Buenas.

A ver si me podeis hechar una mano, uso mame DOS con mamewah de frontend y en C:/mame no tengo ningún mame.ini, el mame.ini le tengo en la carpeta de mamewah pero no tiene opciones de video, donde puedo encontrar esas opciones?

Un saludo.
Quark9/2/2005, 21:51
Jarl :wacko: tengo abandonado el Glosario, ultimamente entro y salgo rapido. Weno, añadido el "Efecto Tearing" en el Glosario II ;)
BUBU ;-)9/2/2005, 22:01
Pecador !!!

btw, ¿qué pasa con los otros sistemas? No hay más tearing que en MAME?
Quark9/2/2005, 22:02
:blink: no lo digo solo para el mame :P
BUBU ;-)9/2/2005, 22:06
No, lo de los otros emuladores no era por ti, jiji, por ti sólo era lo de "Pecador!!!"
Lo de los otros emuladores va por todos, a ver si alguien dice al menos si ocurre o no el tearing en sus emulatas.
Mikonos9/2/2005, 22:21
El efecto tearing se da en todos los emus ejecutados en Tv y Monitor Pc. Pero si esto lo he dicho casi en el enunciado del post. De hecho la foto donde hago la reconstrucción del efecto tearing es el Zinc. Hay que leer un poco más.
BUBU ;-)9/2/2005, 22:23
No tiene por qué, Mikonos. Si el refresco del monitor coincide con los fps del emulador, no hay Tearing.
Mikonos9/2/2005, 22:33
Bubu, el monitor del ordenador funciona entre 35 y 60 Hz, por tanto todo lo que le metamos relacionado con la emulación acarreará este defecto.
BUBU ;-)9/2/2005, 22:35
La verdad es que no entiendo. Si la frecuencia vertical es de, p.ej., 50 Hz, significa que se muestran 50 pantallas por segundo. Si el emulador genera la imagen 50 veces por segundo también, andandará el efecto tearing?
Mikonos9/2/2005, 22:40
Veamos, la frecuencia de refresco de un monitor de PC por defecto es de 60 Hz. ¿Cuántos juegos emulados pueden tener una tasa de refresco semejante?
BUBU ;-)9/2/2005, 23:17
Pues p.ej. MAME, poniendo el triple buffer. Con ese parámetro sabemos que genera la imagen 60 veces por segundo. Y el emulador X, a lo mejor lo genera sin necesidad de cambiar ningún parámetro
Quark9/2/2005, 23:31
Como he puesto en el glosario... esto se produce cuando las imagenes por segundo que el juego envia a la tarjeta grafica superan a los Hz de frecuencia vertical. Las rayas se producen porque el monitor no dibuja todas las imagenes que el juego envia y quedan "huecos" que se ven en negro.

Mikonos10/2/2005, 00:53
Jeje.

Vamos con otro emu.

Gen+: Para evitar el "efecto tearing" en este multiemulador habremos de dirigirnos a "Graphics" y macar ahí, en las opcoiones desplegadas a continuación, la opción "Vsync". Esto será suficiente para garantizar el correcto visionado de nuestras roms y hará funcionar algunas otras que no se mostrarían de otro modo (ej: Thunder Force IV).

(IMG:http://img162.exs.cx/img162/8088/gens4co.jpg)



A ver si alguien se anima y va desentramando cómo se elimina el efecto en otros emus.

Saludos
greenbered10/2/2005, 21:24
soulucion efecto taring
yo por ejeplo lo he probado todo para jugar al wonderboy el cual tiene mogollon tearing
la solucion que me ha ido mejor ha sido poner el monitor a 45 herz entrelazado
casi no se nota la molesta rallita
con tv nolo he provado todavia

Part 1 of 1   

Powered by ForumCommunity.net · Powered by Invision Power Board © 2002  IPS, Inc.