Et pourquoi pas un simulateur d'ecran ?

Quel émulateur pour quel jeu, astuces de config...
Nouvelles releases, updates d'émulateurs. Le forum général sur l'émulation.
Avatar de l’utilisateur
niluge
Radiant Silverpost
Messages : 1247
Inscription : 29 juin 2006, 15:29
Localisation : Above and beyond

Mais qu'est ce qu'il raconte celui là ?

Et bien voila, je repensais dernièrement a la discussion qu'il y a eu sur le forum a propos de la fidélité du rendu des émulateurs, et plus particulièrement au problème de l'entrelacement.

L'entrelacement consiste a afficher, pour certaines raisons technique, une image non pas en une mais en deux passes. On commence par afficher uniquement les lignes paires de l'images, puis dans un second temps on affiche les lignes impaires. pour plus d'info, je vous renvois sur la page Wiki suivante qui est plutot bien foutue :
http://fr.wikipedia.org/wiki/Entrelacement

Je me suis alors demandé pourquoi les émulateurs ne procédaient pas de la sorte pour leur rendu. Il suffirait après avoir généré l'image final de laisser le moteur de rendu de gérer l'entrelacement. le moteur afficherais d'abord les lignes paires, puis 1/50 eme ou 1/60eme de seconde plus tard les lignes impaires. On pourrait même pousser le vice plus loin en rajoutant comme paramètre la rémanence. Lors de l'affichage des lignes impaires, il suffirait alors de reprendre les lignes paires et de diminuer pour chaques points de celle ci l'intensité lumineuse en fonction de son emplacement (et donc du temps ecoulé depuis son activation).

M'est alors venue une idée que je pense être interessante. Pourquoi ne pas réaliser un simulateur d'écran sur lequel on brancherais nos émulateurs ? Les émulateurs aurait alors la forme de pluggin qui laisseraient au simulateur d'écran le soin de gérér les options de rendu. Le fait que l'écran et l'émulateur soient gérés par deux processus ou thread différents permettrait je pense des options interessante et notamment de gérer correctement ce rendu en deux passes nécéssaire au fonctionnement de mon moteur d'entrelacement.

Bon je sais pour le moment tout ça n'est que lettre morte, mais j'aimerais bien savoir ce qu'en pense les spécialistes du forum. Comme j'envisage depuis longtemps l'idée de m'initier à la programmation d'émulateurs avec un émulateurs NES (Programmation du processeur et du GPU etc.) je me dit que je pourrais en profiter pour mettre au point une maquette de ce simulateur d'écran. Mais bon, si je peux réflechir a l'architecture d'un tel systeme dans mon coin, je me vois mal réalisé ça tout seul (enfin en tout cas pas dans un temps raisonnable :p )
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Houlà, je suis pas un spécialiste mais émuler l'entrelacement ça serait à mon avis une prise de tête inutile. L'intérêt des émulateurs est justement de permettre de le supprimer pour pouvoir afficher en mode progressif regardable sur nos écrans de PC.

Par contre un programme qui se lancerait en parallèle, qui gèrerait scanlines et filtrage à la place des émulateurs, j'y ai aussi pensé. J'ignore comment faire et si c'est seulement réalisable...il faudrait un très grand nombre de modes adaptés aux résolutions des jeux et aux nombreux niveaux d'upscale. Ensuite va savoir à quel point certains émulateurs autoriseront ou non un autre programme à s'insinuer dans leur fonctionnement normal...
Pour les émulateurs "à plugins" ça paraît plus simple, mais il faudrait coder un plugin pour chacun de ces émulateurs. Pour les autres en revanche...
Vois déjà ce que tu peux apprendre sur le travail de Blargg, qui a déjà fait un filtre 'advanced ntsc' très bon sur Zsnes et Nestopia, et qui est en train de le porter sur Regen et Kega Fusion sous forme de plugin.

M'enfin oui, un programme applicable à 'tous' façon launcher/frontend ça serait cool, parce que vu le peu d'intérêt que les joueurs et même la plupart des programmeurs portent au réalisme et à la fidélité du rendu, on pourrait attendre des décennies avant que ça bouge vraiment.

:(

EDIT: sinon ça fait un moment que je réfléchis à la possibilité d'un shader pour le plugin OpenGL2 de Pete Bernert (ePSXe) qui irait mieux avec le système de scanlines émulées inclus. Un shader à flou directionnel quoi (voir explication de Shinnen dans le topic 'Pour avoir les jeux dans leur beauté originale sur mame!', section émulation).
Dongorath
As du Slalom
Messages : 175
Inscription : 24 juin 2008, 17:14

Un émulateur d'écran comme plugin ou integré à un émulateur, oui, indépendant des émulateurs, je ne pense pas... Tout d'abord parceque chaque programme a sa façon de gérer l'affichage (mode fenêtré ou plein écran, overlay ou pas, dual screen ou pas, etc.) et ce serait quasi ingérable. Ensuite, ca fait un 2e programme à gérer en plus de l'émulateur, et je sais que perso, je n'ai pas envie de m'emmerder à gérer la config de plusieurs programmes en même temps...

Après, ce n'est pas une idée jeune (mais pas mauvaise pour autant !). Quelques plugins existent déjà comme dit par Ultramanu avec souvent de bons résultats. Integré à un émulateur, je connais le filtre NTSC de Shay Green dans Classic99, un émulateur de TI-99/4A, qui donne des résultats fidèles au matériel d'origine (cf. http://xona.com/ti994a/parsec.html , point 12).

Quant à dire que ce serait une prise de tête inutile, je ne suis pas d'accord. Perso, je n'en ai rien à carer, des scanlines, mais certaines personnes refusent de passer à l'émulation justement parcequ'elles ne sont pas présentes (et donc l'émulation n'est pas assez fidèle et bla bla bla). Après, c'est chacun ses goûts. (Tous les dégoûts sont dans la nature, comme dirait l'autre)

Après, ce ne doit pas être une priorité dans la réalisation de l'émulateur. Ca ne sert à rien si aucun jeu peut tourner dessus :)
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Non mais je voulais dire que l'entrelacement est inutile en émulation, pas les scanlines. ^^

Sinon ouais comme tu as dit: je doute que beaucoup d'émulateurs 'laissent' un autre programme afficher quelque chose 'devant', 'superposé'.

Par contre pour en revenir aux scanlines, moi je trouve que c'est quand même vachement important au moment de la réalisation d'un émulateur, parce que d'après ce que j'ai vu, seuls les émulateurs dont le cœur intègre déjà l'émulation de scanlines peuvent en afficher de correctes (càd le bon nombre et à la bonne place). Au contraire ceux qui ne possèdent pas cette fonction à la base se retrouvent avec des 'effets' merdiques à la façon du Mame actuel: complètement faux.

Alors que beaucoup de gens s'en tapent d'accord, mais si cette fonction est inexistante dans l'émulateur, ben c'est une déception pour ceux qui veulent un rendu plus 'fidèle'.
Je trouve ça dommage et pour les joueurs qui s'en préoccupent et pour la 'postérité' qui doit avoir la possibilité de pouvoir voir à quoi ressemblaient à peu près les jeux d'antan autrement qu'avec des hyper-filtres qui dénaturent complètement le travail des programmeurs des ces 30 dernières années.
Dongorath
As du Slalom
Messages : 175
Inscription : 24 juin 2008, 17:14

Les scanlines sont le résultat de l'entrelacement...

Le choix d'un plugin est peut être effectivement un mauvais choix pour la qualité du résultat, mais que ce soit un plugin ou une option dans l'émulateur, à mon avis (pour ce que ca vaut...), le problème de l'entrelacement doit rester dans la TODO list assez bas, sous les bugs et les fonctionnalités indispensables à l'utilisation de l'émulateur. J'aurais beau avoir un super moteur graphique avec entrelacement, si à chaque fois que je charge une ROM, ca plante ou s'il ne reconnait pas mon pad/stick, ce me fera une belle jambe.
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Euh, "les scanlines sont le résultat de l'entrelacement" c'est pas le problème, on parle de ce qui est visible et de mettre des lignes sombres qui n'existent pas à la base pour se passer d'entrelacement et afficher en progressif 'moins dégueu' justement.

Trouve moi un émulateur/plugin dont le but est de cracher un signal entrelacé...

Et il faut savoir aussi une chose à propos des plugins qui possèdent une option 'scanlines': ils font appel à l'émulation de scanlines qui existe déjà dans le cœur de l'émulateur, c'est le cas avec les plugins dispos sous ePSXe par exemple, Squall Leonheart, codeur d'ePSXe, l'a lui même confirmé.
(expliquant au passage pourquoi ces scanlines une fois activées augmentaient de beaucoup l'importance du processus)

C'est pour ça que j'insistais sur l'importance de la fonction scanlines dès le départ dans le cœur de l'émulateur, parce qu'essayer d'en rajouter 'après' c'est un merdier quasi-impossible (vois Mame avec ses effets en .png).

En fait - je peux me tromper bien sûr - on s'en fout de l'entrelacement, on doit justement s'en débarrasser en émulation.
Mug Superstar
Radiant Silverpost
Messages : 1160
Inscription : 29 mars 2004, 09:42
Localisation : Lille (59)

Ultramanu ... mon héro !!!

Mug
... bon d'accord j'arrête ...! mais depuis que tu m'a filer le mame 1.06, ben c'est ma manière à moi de te dire merci

alors merci :)
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Lawl, tu vas leur faire croire qu'on a une relation 'spéciale' à force ! :D

Mais de rien sinon, mon cher. ^^

(Au fait t'as vu que Mame Plus 0.105 a un petit truc en plus: filtres autres que bilinéaire en mode D3D. Moins joli que l'option qui nous intéresse mais au cas où...enfin une version à avoir autant que la v0.106 je dirais, tu peux toujours la rajouter avec les autres sur le disque si tu l'as pas déjà, ça prend 5mn.)
Avatar de l’utilisateur
niluge
Radiant Silverpost
Messages : 1247
Inscription : 29 juin 2006, 15:29
Localisation : Above and beyond

hummmmm ce qui me gêne avec les scanline tel qu'implémenté actuellement, c'est qu'on vire grosso modo une ligne sur deux, alors qu'avec l'entrelacement toutes les lignes apparaissent à l'ecran (bon les unes apres les autres, mais quand même)

Ensuite pour le faire, a partir du moment ou on a le signal brute à la sortie de la console (autrement dit, une surface bitmap a là résolution d'origine de la console), le traitement n'est pas bien compliqué a gérer.

Quand a mon idée, ce n'était pas de faire un programme en plus de l'émulateur, mais plutot un programme qui prendrait en entré deux type de plugin. un plugin qui gérerait la simulation de l'écran (et là je ne parle pas que de l'entrelacement, on pourrait aussi bien foutre du SAI ou du eagle derriere) et un autre qui serait en fait résponsable de simuler le fonctionnement de la console. le programme s'occuperait alors de gérer la communication entre les deux (une sorte de peritel virtuelle quoi ^^)

ce qui fait que d'un coté les dev d'émulateur n'aurait plus qu'a gérer la sortie brut (sans traitement d'image) et de l'autre, d'autre dev pourrait s'occuper du traitement d'image en sachant que leur boulot pourra être utilisé sur tous les émulateur prévus pour tourner sur ma super peritel virtuelle.

Bon je sais, c'est une idée un peu bizarre et pas très réalisable, mais je pense que ça va me trotter dans la tete quelque temps :D
djvinc
Big Boss Killer
Messages : 767
Inscription : 02 déc. 2005, 00:41
Localisation : Paris

alors au début je me disais que tu fumais la moquette, mais finalement pas tant que ça :))

Mon sentiment pour le moment, c'est que d'émuler un double balayage sur un écran à "simple balayage", ça revient plus ou moins à afficher l'image pleine à chaque fois, mais avec alternativement les lignes paires et impaires légèrement atténuées pour simuler la rémanence ?

A essayer..
Shinnen
Radiant Silverpost
Messages : 1151
Inscription : 05 mars 2004, 14:58
Localisation : Marseille
Contact :

- Hum ! -


Il fallait que j'intervienne dans ce topic pour clarifier deux trois points :



1) L'entrelacement:

Méthode d'affichage permettant d'afficher "plus de lignes" pour une même bande passante.

Seulement, contrairement à ce que beaucoup pensent, il ne s'agit pas d'afficher les lignes paires et impaires de la même image !!!

On affiche en fait des demi images (moitié de la résolution verticale d'origine), différentes temporellement.

D'où le fait qu'il manque des informations . Et d'où les tracas causés par le désentrelacement (pour afficher une trame complète à pleine résolution).



2) CRT et écrans plats (matrices)


Les CRT sont abandonnés de la plupart des utilisateur, dans un mouvement qui peu importe la technologie employée, se dirigie vers le "tout matriciel" .

Sur un écran plat dit "à matrice" (lcd, plasma, sed, fed ou DLP etc. ), il est impossible de faire de l'entrelacement.

L'image est affichée uniquement dès lors que toutes les informations ont été communiquées.
C'est la grosse différence par rapport à la technologie CRT qui affiche le premier point en haut à gauche dès que l'information arrive, en temps réel. Il peut donc afficher une trame complète (progressif) ou des demi trames différentes temporellement, car il peut restituer cette différence temporelle.

C'est aussi pour ça que les CRT seront ipso facto TOUJOURS plus rapides que les écrans matriciels.
Quand le dernier point en bas à droite de l'image est affiché sur un CRT, alors seulement à ce moment là un écran plat livre sa trame, il affiche toute l'image d'un seul jet (pas de balayage).
Les écrans plats auront toujours au minimum une trame de retard sur le CRT , même le plus bas de gamme possible. :P
Et dans la réalité, c'est bien pire, car il faut compter sur la réactivité des cellules qui s'exprime en millisecondes, alors que sur un CRT on est en nanoseconde ( cf les premiers décodeurs Canal + qui lançaient un retard de lignes sur trois valeurs exprimées en nanosecondes pour créer le brouillage de l'image).


3) Les scanlines (encore!)


Je réagis à ça :
Les scanlines sont le résultat de l'entrelacement...

----

ce qui me gêne avec les scanline tel qu'implémenté actuellement, c'est qu'on vire grosso modo une ligne sur deux, alors qu'avec l'entrelacement toutes les lignes apparaissent à l'ecran (bon les unes apres les autres, mais quand même)
:X aaarg mes yeux !!!....


Non. Du tout !

Ce qu'on nomme "scanlines" n'a rien à voir avec l'entrelacement. Les jeux en lo-rez ont un rendu particulier qu'on nomme par abus "effet scanline" , qui indique en fait ce que tout le monde observe : des traits noirs horizontaux, bien nets et distincts.

Mais en fait, une "scanline" , c'est une ligne scannée, c'est-à-dire affichée.

Les lignes noires qu'on nomme par erreur "scanlines" sont en fait le résultat de la faible résolution verticale (240 lignes maximum) et de la taille limite du spot du canon à électron. Et non du fait de "virer une ligne sur deux" (perdre des informations !).

Il y a peu de lignes à afficher (mais elle le sont toute, car on est en progressif !) , le spot ne peut pas grossir indéfiniment , il résulte donc des interstices "vides" (noirs, non illuminés) entre les lignes affichées.

Si ce rendu est typique des jeux vidéo lo-rez (qui sont les seules applications à utiliser un affichage progressif en dessous du standard télévisé de 480i / 576i ) on retrouve le même phénomène sur les moniteurs PC de grande diagonale , pour peu qu'ils soient équipés d'une bonne dalle.
En 640*480 sur un 21" , on voit des "scanlines" , parce qu'il y a à la fois un nombre de lignes trop faible par rapport à la capacité de la dalle, et qu'on a atteint le diamètre d'ouverture maxi du spot.

Ceci dit, pour des questions de commodité, tout le monde sait à quoi on se réfère quand on parle de "scanlines" : il s'agit des lignes noires qu'on observe pas dans des résolutions plus hautes, et sur les écrans plats.

Note: en mode entrelaçé (sur CRT donc ! ^^), on observe de façon fugace les "scanlines" de la low-rez, car il s'agit d'images ( de demi images ! ) de faible résolution . Mais elles ne sont pas nettes, épaisses, bien distinctes, et fixes .




4) L'affichage des émulateurs


Pas la peine d'imaginer des processus complexes qui viennent se greffer sur des programmes déjà écrits.


La solution existe, elle est SIMPLE , et nécessite peu de ressources . (arrg, à chaque fois que j'y pense........)

Il s'agit de choisir un ratio entier pour le zoom ( x2, x3, x4, x5...), de caler une ligne noire fine à chaque interval de ligne scannée (pas ailleurs ! ) , et de filtrer l'image uniquement à l'horizontal (pas de bilinéaire ! ), pour se rapprocher du fonctionnement du balayage d'un tube CRT, des limites du diamètres du spot, des transitions horizontales entre chaque pixel (parce que le canon balaye à l'horizontal) qui assurent un aspect "soft" à l'image .

Bref, rien de sorcier.


Le plus difficile, c'est de faire comprendre aux gens comment marche le canon d'un tube CRT, et comment appliquer ce principe correctement avec un émulateur (et donc, de démontrer aussi comment les émulateurs proposent des rendus dégueulasses et des chiées d'options qui donnent libre court à l'utilisateur pour faire n'importe quoi, caler des lignes n'importe où, assombrir l'image, flouter le tout, interpoler, coller des pseudo grilles de triades de phosphores etc.).


Et je peux te dire que c'est difficile. Qu'il t'en faut des tartines de posts et des exemples en images .... :eek: :P
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Mais ça marche pas... moi tu m'as convaincu mais j'ai eu beau exporter la démonstration et tenter de faire campagne sur plusieurs sites, tout le monde s'en foutait. :(

D'où, peut-être, l'idée de niluge d'un éventuel programme qui ferait le boulot à la place des émulateurs j'imagine, vu que les devs ne sont pas intéressés, mais on a vu que ça a l'air assez improbable.

Bref, il semblerait toujours que la modification du code des émulateurs par nous-mêmes (voire carrément la création de nos propres émulateurs) soit la seule solution.

Qui est prêt à se taper 800 pages de documentation ? :D

(je veux dire que c'est probablement pas sorcier pour les développeurs, mais pour les profanes...)
Dongorath
As du Slalom
Messages : 175
Inscription : 24 juin 2008, 17:14

Très interressant, ton post, Shinnen, merci !!!

Juste un point que j'ai du mal à saisir :
Shinnen a écrit :Il s'agit de choisir un ratio entier pour le zoom ( x2, x3, x4, x5...), de caler une ligne noire fine à chaque interval de ligne scannée (pas ailleurs ! ) , et de filtrer l'image uniquement à l'horizontal (pas de bilinéaire ! ), pour se rapprocher du fonctionnement du balayage d'un tube CRT, des limites du diamètres du spot, des transitions horizontales entre chaque pixel (parce que le canon balaye à l'horizontal) qui assurent un aspect "soft" à l'image .
Après, c'est surement parceque je suis bête, mais ma solution naïve aurait été de calculer mon image normalement (zooms, filtres, etc.), et au dernier moment (juste avant l'affichage), remplacer une ligne sur 2 par une ligne noire (d'abord les paires, puis impaires, puis paires, etc.) Y a-t-il une problème majeur et évident que j'aurais raté avec ma solution ?

(PS : les 2 seules applications "graphiques" que j'ai faites sont 2 pauvres winform rendant une matrice ou un fractale dessiné par itération, donc si ca se trouve, je viens de dire une grosse connerie...)
imalipusram
Radiant Silverpost
Messages : 1414
Inscription : 24 mai 2006, 10:40
Localisation : Paris
Contact :

La taille des pixels influe dans le calcul.

Un sprite dessiné en 16*16 (c'est un exemple hein), rendu en HD par un zoom *2, donnera en memoire video un bloc de 32*32.
si tu passe en noir une ligne sur deux, tu perds le rendu d'origine qui voudrait que tu passe en noir 2lignes toute les 2lignes.

et ça adapté à tous les facteurs de zoom.
Un million de Lemmings ne peuvent pas se tromper.

http://mumetc.free.fr

Image
Dongorath
As du Slalom
Messages : 175
Inscription : 24 juin 2008, 17:14

Effectivement, mais dans se cas, on pourrait s'affranchir de la contrainte du zoom entier en appliquant le zoom à la toute fin (ce qui donnerait : filtres/whatever, ajout des lignes noires, zoom, affichage), non ? (avec les effets bizarres de distortions et autres lignes toujours noires qui s'en suivent, évidemment...)
imalipusram
Radiant Silverpost
Messages : 1414
Inscription : 24 mai 2006, 10:40
Localisation : Paris
Contact :

Ptet ben.

Mais j'avoue que 'faire du vieux avec du neuf' n'est pas un concept qui m'a souvent motivé :)

C'est comme mettre un accroche-caravane derrière une Ferrari... What's the point ? ^^
Un million de Lemmings ne peuvent pas se tromper.

http://mumetc.free.fr

Image
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Ben c'est toujours le même 'point': la disparition des crt.

C'est vrai que pour le moment on s'en fout un peu vu qu'on peut toujours en trouver plein d'occase... mais ça sera moins drôle dans 10 ans par exemple. Et ne me sortez pas l'excuse "un crt ça peut tenir 20 ans" ou "on a le temps" parce qu'il en passe des tonnes à la décharge (me confirme un gars trieur de déchets, ils sont presque toujours défoncés ou noyés par contre, il arrive pas à en récupérer de bons).

Il faudra bien un jour arriver à faire de l'émulation qui imite autant que possible le rendu originel, sinon quand on se trouvera dans la situation où les crt seront devenus rares et que presque tout le monde aura oublié à quoi ça ressemblait... ben on aura perdu quelque chose.

Condamner les jeux Toaplan au filtrage bilinéaire pour l'éternité ? Jamais ! :D
(je bosse pas pour Mame moi, non mais ^^)
raphael
Dieu de la Borne
Messages : 1653
Inscription : 08 juil. 2006, 13:06
Localisation : Paris 9
Contact :

Bon j'avais envie de répondre "Et pourquoi pas un vrai d'écran ?" ... mais bon ...

Moi j'aime bien le rendu sans scanlines ... et SANS FILTRAGE LINEAIRE.
Le pixel art a t'il forcément besoin de scanlines ?
Le pixel art a besoin de netteté et de ratio juste, ça c'est certain par contre.

Et puis de toute façon, dans 10, 20 ans, les résolutions d'écran, leur taille et la rapidité des machines feront qu'on devrait pouvoir régler ce problème de fidélité d'affichage beaucoup plus simplement qu'aujourd'hui.

En attendant, quand je peux je joue sur CRT, en résolution native avec le top rendu le plus fidèle à l'original :P
folkN
Big Boss Killer
Messages : 775
Inscription : 08 avr. 2006, 19:07
Localisation : Lyon

raphael a écrit :Le pixel art a t'il forcément besoin de scanlines ?
besoin je sais pas, mais l'age d'or du pixel art, correspond à l'époque des écrans cathodique, et donc avec un affichage de "scanlines" (cf l'explication de Shinnen plus haut)...

Donc la plupart des jeux qui sont sur MAME, par exemple, ont été fait en fonction de ce rendu...
AHO
imalipusram
Radiant Silverpost
Messages : 1414
Inscription : 24 mai 2006, 10:40
Localisation : Paris
Contact :

La question est en partie là.
Est-on sur que le design a été fait en fonction du format de sortie ?
Ou alors, pas cons, les gars ont pondu un design, et advienne que pourra, le rendu est fonction de ce sur quoi ça tourne.

Bref, on inverserait pas cause et conséquence dans cette recherche du 'rendu d'origine' ?
Un million de Lemmings ne peuvent pas se tromper.

http://mumetc.free.fr

Image
folkN
Big Boss Killer
Messages : 775
Inscription : 08 avr. 2006, 19:07
Localisation : Lyon

imalipusram a écrit :La question est en partie là.
Est-on sur que le design a été fait en fonction du format de sortie ?
Ou alors, pas cons, les gars ont pondu un design, et advienne que pourra, le rendu est fonction de ce sur quoi ça tourne.

Bref, on inverserait pas cause et conséquence dans cette recherche du 'rendu d'origine' ?
Ben je me trompe peut-être mais, à l'époque, le mec qui faisait le jeu (je simplifie) il bossait sur un cathodique (pour son boulot, pour ses tests, debug & co) et le jeu au final tournait aussi sur du cathodique, donc avec un rendu a peu près équivalent...


D'ailleurs il me semble avoir entendu sur un reportage sur NoLife, que les gars à l'époque dessinaient sur du papier quadrillé, donc avec des lignes entre chaque "pixel", bref même en dessinant il avait des pseudos scanlines sur son bout de papier !

Donc ok il se disait pas "ouais ça va trop bien rendre avec ces lignes entre chaque pixel" mais indirectement c'était le cas...
AHO
imalipusram
Radiant Silverpost
Messages : 1414
Inscription : 24 mai 2006, 10:40
Localisation : Paris
Contact :

certes, mais je doute pour le coup des lignes :)
(c'est pas gros une ligne entre deux carrés coloriés ^^)
Un million de Lemmings ne peuvent pas se tromper.

http://mumetc.free.fr

Image
folkN
Big Boss Killer
Messages : 775
Inscription : 08 avr. 2006, 19:07
Localisation : Lyon

imalipusram a écrit :certes, mais je doute pour le coup des lignes :)
(c'est pas gros une ligne entre deux carrés coloriés ^^)
Ah oui ça c'est sûr on est d'accord !, mais je parle dans l'esprit.

De bout en bout, le designer avait toujours quelque chose qui séparait ses "pixels" et cela devait sûrement être un élément du rendu.

Et puis il faut se remettre dans le contexte, à l'époque, on imaginait sûrement pas qu'un jour il n'y aurait plus ses lignes noirs, d'ailleurs on a du se rendre compte de ses lignes le jour où elles n'ont plus été là...
AHO
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Bien sûr que le design des jeux est fait en fonction des formats de sortie et bien sûr que le matériel 'HD' ne peut pas afficher les graphismes 'à l'ancienne' basse résolution correctement.

C'est pas par fantaisie que Shinnen, moi et d'autres nous intéressons au problème, c'est parce qu'il est malheureusement bien réel. :(

L'émulation avec affichage 'scanlines + lignes sombres' (pour être plus précis) c'est tout ce qu'on a pour approcher un rendu fidèle, sinon il faudra se contenter de filtres dégueulasses pour toujours !

A la rigueur on peut redessiner tous les graphs pour les amener au niveau des résolutions HD, comme Capcom avec SFIITHD ou Cave avec DeathSmiles...

Vous imaginez l'entreprise ? :eek: Impossible.

Bon alors un max de joueurs s'en foutent, ok.
Par contre c'est toujours marrant de faire à quelqu'un la démonstration comparative:
- original sur crt
- émulé avec système de scanlines + lignes noires (un 'convenable' de préférence comme sur Zsnes ou un vieux Mame)
- émulé avec filtrage bilinéaire ou autre
Et de voir la réaction: "Ah oui quand même..." :D

Ceux qui ont suffisamment foi en l'émulation, en la conscience des développeurs et en l'évolution des technologies d'affichage se trompent, si on ne fait rien, si on n'insiste pas, ça ne s'arrangera pas, au contraire.
Avatar de l’utilisateur
niluge
Radiant Silverpost
Messages : 1247
Inscription : 29 juin 2006, 15:29
Localisation : Above and beyond

C'est bien pour ça que je reflechit a cette histoire d'ecran et de peritell virtuel (j'aime bien cette idée ^^ )

J'ai fait plus de recherche sur "l'effet" scanline sur internet, et je n'ai rien trouvée qui coroborais tes explications (ni même l'idée que je m'en faisait).
J'ai trouvé des gens qui comme moi pensais que ça venais de l'entrelacement. Une autre personne expliquant qu'en fait le problème viendrais de l'adaptation des jeux à la résolution des écrans (passage de 240 a 480), mais rien de bien précis ni de sure. Si tu as des docs Solides ou un bon site internet a me recommandé ça m'interesse ^^
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Ben j'ai rien trouvé de mieux que les explications de Shinnen pour le moment.

Si tu veux des détails précis sur le rendering des machines et comment les divers émulateurs s'en sortent, il faut demander directement aux développeurs en postant sur les forums officiels et en croisant les doigts pour qu'ils daignent répondre.

Sinon chez ceux qui font des plugins comme Pete Bernert ou Blargg, ils en connaissent un rayon...

Mais sans vraiment vouloir me répéter, je pense que se prendre la tête sur l'entrelacement est une perte de temps car c'est précisément ce dont on ne veut pas en émulation, c'est caca, flou, bâtard.

Ton but c'est d'avoir du progressif avec des lignes noires entre chaque ligne de scan, et de faire en sorte que ça ressemble le plus possible à l'original. La méthode suggérée par Shinnen étant la meilleure que j'ai pu voir.

Reste à trouver comment l'appliquer et c'est sûrement sur les forums de devs que tu trouveras des réponses... il y en a un paquet, plus ou moins accueillants, ça fait un bail que je me renseigne moi aussi mais j'ai compris que ça prendrait des années ><.
(mameworld c'est même pas la peine :? , sur ngemu c'est plus réactif mais ça ne passionnera pas grand monde, chez Pete ça a l'air sympa mais j'y ai encore jamais posté, etc... ah et bien sûr tu trouveras 10x plus d'infos en anglais bien sûr ^^)
Avatar de l’utilisateur
niluge
Radiant Silverpost
Messages : 1247
Inscription : 29 juin 2006, 15:29
Localisation : Above and beyond

Bah la partie dev ne me pose pas de problème étant donnée que c'est mon boulot. Quand a l'émulateur, comme jee l'ai deja dit, je compte me faire un emulateur NES un des ce 4, je pense que je pourrais faire des tests directement a ce moment là.
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Ouais c'est une bonne idée, et tu devrais jeter un coup d'œil à Nestopia, ce dernier intègre le fameux système de Blargg: http://www.fly.net/~ant/libs/ntsc.html tu trouveras de la doc et du code sur son site. ;)
Mug Superstar
Radiant Silverpost
Messages : 1160
Inscription : 29 mars 2004, 09:42
Localisation : Lille (59)

Salut,

allez jeter un oeil là-dessus

http://www.neo-arcadia.com/forum/viewto ... 60#p315860

je ne sais pas si cela fera avancer le débat mais ... on ne sait jamais

Mug
... ********* ... mon héro ... :))

oui bon d'accord ...

\me sort tout seul ...
UltramanU
Militari
Messages : 8128
Inscription : 08 janv. 2006, 23:24

Héhé, un Mame à la française financé par la Bibliothèque de France, si vous voulez mon avis c'est des petits malins qui ont trouvé de quoi avoir du taf pour les trois années à venir en profitant de l'ignorance de l'administration dans le domaine.

Gag. :)
Répondre