Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Nissan Presents - Over Drivin' GT-R] Problème d'affichage in game (RBG0) #417

Closed
BenjaminSiskoo opened this issue Jan 14, 2019 · 14 comments

Comments

@BenjaminSiskoo
Copy link
Collaborator

Kronos 1.6.0

En désactivant le RBG0, on a plus l'arrière plan mais le jeu est jouable.

nissan2

@FCare FCare closed this as completed Apr 8, 2019
@fafling
Copy link

fafling commented May 10, 2019

@BenjaminSiskoo Est-ce que tu peux rouvrir ? Ce n'est pas résolu en WIP du 21/04, dernière avant que le jeu ne se mette à freezer ( #482 ).

@fafling
Copy link

fafling commented May 10, 2019

Le RBG0 affiche l'arrière-plan et le volant au moyen de 2 paramètres de rotation. Le RBG0 est donc affiché avec 2 priorités différentes et comme il n'utilise pas de special priority, c'est qu'il doit y avoir un interrupt à la moitié de l'écran qui modifie la priorité de cette couche.

Capture_need_for_speed_volant_VDP2

En v1.6.0, la modif à mi-écran de la priorité est bien prise en compte, par contre le paysage est affiché à la place du volant (ce paysage tourne si on appuie à gauche ou à droite !).

Need for speed

Peut-être que cela indique que l'interrupt sert aussi à modifier l'adresse du bitmap affiché par le 2ème paramètre de rotation (ce qui est curieux car normalement, il n'y a pas besoin d'interrupt pour définir un graphisme différent pour chaque paramètre de rotation), et que la v1.6.0 ne prendrait pas en compte cette modification. Vu les adresse des 3 bitmaps 8 bits affichés par l'écran debug du VDP2, il y a de fortes chances que le volant soit aussi un bitmap 8 bit situé à l'adresse 60000.

En WIP du 21/04, la modif de priorité n'est plus prise en compte par Kronos et le paysage du bas n'est visible que si on désactive le NBG0 et les sprites.

Capture_need_for_speed_volant

Capture_need_for_speed_volant2

Il serait utile que l'écran debug du VDP2 affiche les adresse de bitmap ou tilemap de chaque paramètre de rotation utilisé par le RBG0 quand il en utilise 2. Actuellement on n'en voit qu'une seule, or chaque paramètre de rotation peut être associé à des adresses différentes.

@fafling
Copy link

fafling commented Nov 20, 2019

Toujours présent dans les 2 noyaux en WIP extui-align du 19/11.

@fafling
Copy link

fafling commented Dec 30, 2019

Toujours présent en WIP du 30/12.

@fafling
Copy link

fafling commented Apr 5, 2020

Toujours présent en WIP du 04/04, je remarque qu'il y a un progrès par rapport à mes dernières captures d'écran : le volant est maintenant affiché si on désactive les sprites et le NBG0. Il ne reste donc que le changement de priorité du RBG0 en cours d'affichage qui n'est pas émulé.
image

@BenjaminSiskoo
Copy link
Collaborator Author

Corrigé en ce jour avec la version du 5 Janvier 2021

@fafling
Copy link

fafling commented Jan 5, 2021

Corrigé par 32833e0

@BenjaminSiskoo
Copy link
Collaborator Author

BenjaminSiskoo commented Oct 15, 2021

Le volant n'est plus affiché avec la version du 14.10.2021 en OpenGL et CS

@fafling
Copy link

fafling commented Oct 16, 2021

Le volant n'a disparu qu'en RBG CS. En OpenGL (RBG CS désactivé), il est toujours là.
Le problème apparaît lors du fix des bitmaps en RBG CS du 24-25/09 (voir #537 ) :

  • Dans la WIP du 24, le RBG0 disparaît complètement.
  • Dans celle du 25, le paysage réapparaît, mais pas le volant.

@fafling
Copy link

fafling commented Dec 8, 2021

On est dans le même cas de figure que dans la démo de Hellslave #1272 , 2 bitmaps sur le RBG0 en rotation parameter mode 2.

Etant donné qu'un seul paramètre de rotation peut s'afficher correctement sur la console dans cette situation, c'est donc que l'adresse du bitmap est modifiée en milieu d'écran non pas sur le 2ème paramètre de rotation comme je le supposais, mais en fait sur le même paramètre de rotation que celui qui affiche le paysage.

@fafling
Copy link

fafling commented Dec 8, 2021

@FCare Est-ce que tu peux décommenter le test du registre de map offset MPOFR dans sameVDP2RegRBG0 ?
C'est lui qui donne l'adresse de début du bitmap.

Il y a aussi une autre modif qui servirait à Quake dans la même fonction, voir #461 (comment)

@fafling
Copy link

fafling commented Dec 11, 2021

Presque bon dans les 2 noyaux en WIP du 10/12/2021.

Il reste un problème en RBG CS off visible sur certaines portions du circuit du désert :
image

Le changement de priorité a l'air d'être fait une ligne plus tôt que le changement de graphisme entre le paysage et le volant. Du coup une ligne du paysage apparaît devant le tableau de bord au milieu de l'écran.

Ce problème est déjà présent en v2.2.0 publique.

Save state :
Nissan_desert.zip

@fafling
Copy link

fafling commented Dec 11, 2021

La ligne incorrecte apparaît en RBG OpenGL dans les versions de Kronos qui implémentent le changement de priorité en cours d'affichage (ça va ça vient...). On la voit en v1.6.0 par exemple. Même en RBG CS on, le RBG était forcé en OpenGL dans Nissan jusqu'à récemment car le rendu des bitmaps était corrompu en CS (fixé le 24-25/09/2021).

Captures en integer scaling dans la dernière WIP en désactivant les sprites, CS d'abord, OpenGL ensuite :
Nissan_desert_RBG_CS
Nissan_desert_RBG_OpenGL
Il n'y a pas de décalage de texture sur la partie supérieure entre les 2 noyaux, donc c'est le changement de priorité qui est pris en compte une ligne trop tôt en OpenGL.

@FCare
Copy link
Owner

FCare commented Dec 13, 2021

Corrigé le 13/12/2021

@FCare FCare closed this as completed Dec 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants