mamedev / mame

MAME
https://www.mamedev.org/
Other
7.96k stars 1.98k forks source link

Several graphic issues with X68000 Akumajou Dracula #12773

Open HazukiXX opened 1 week ago

HazukiXX commented 1 week ago

MAME version

0.268

System information

Windows 11 64b English, i9 14900K, Radeon 7900 XTX, 96GB RAM, Video output module: Auto.

INI configuration details

No response

Emulated system/software

No response

Incorrect behaviour

First of all, I know the game is marked as having imperfect graphics, but I thought of reporting where exactly those imperfections are anyway.

So, I did extensive testing across multiple versions of the emulator. Some emulate the game better than others, and newer ones aren't necessarily better. I'll list how things look in 3 version ranges: 0.244-0.254, 0.255-0.258 and 0.259-Current.

0.244~0.254

As old as those versions are, surprisingly the game saw its best emulation in them. They emulate it almost perfectly, save for 2 issues:

1) The water from stages 1 and 2 have the wrong color. It actually matches how they look in the Playstation port, which probably also got that color due to inaccurate emulation. They're supposed to be a pretty dark green, as shown in those real hardware captures: https://www.youtube.com/watch?v=tFRuANqTiMw https://www.youtube.com/watch?v=5bmGKl64Y2U

XM6 Type G (the most accurate X68000 emulator) emulates it correctly. Below are some comparison screenshots (left is MAME and right is XM6):

1 2 3 4

2) The bottom row of pixels is glitchy. Most of the time it displays a black line when it's supposed to have graphics as well. Sometimes the emulator tries to load those graphics and they appear for only 1 frame, before reverting to the black line. This is especially noticeable in the werewolf battle room, where you can see Simon climbing the stairs through that line, which looks pretty silly.

1

0.255~0.258

Version 0.255 introduced another bug on top of those two. Some columns of pixels were incorrectly shifted to the left. This is easily noticeable at the beginning of the first stage when Simon enters the castle. You can see part of his body through the rightmost column. Also, after killing a boss, its icon gets replaced with a cross in the castle map. That cross is supposed to be centered in the boss' square, but here they appear shifted to the left as well.

1 2

I imagine this bug was caused by the "-x68k: fix bg layer positioning and another layer selection case [cracyc]" change.

0.259~Current

0.259 fixed the above bug, but introduced a different one. Now some rows of pixels were shifted upwards. You can see it at the opening cutscene (pay attention to the bottom of the big candle) and in other places like the floor at the beginning of stage 1, or the crosses from the boss icons. I believe this was also due to one of those changes made by cracyc.

1 2 3

To sum it up, if you guys could revert to how the game looked in 0.244~0.254, plus fix the bottom row of pixels and the color of water, everything would be perfect.

Expected behaviour

See above.

Steps to reproduce

No response

Additional details

No response

cuavas commented 1 week ago

@cracyc this seems to be related to a change you made. Can you have a look?

cracyc commented 5 days ago

https://github.com/mamedev/mame/commit/6a4b1b300cb02e7d173f78fe7016473caf350dac Dividing the color by 4 rather than 2 then adding makes it look more like the hardware pics.

HazukiXX commented 4 days ago

@cracyc thanks for the fixes, however there's still one issue left to address: the bottom row of pixels. Here are a couple zoomed-in comparison pics showing how it currently is (left) and how it's supposed to be (right):

1 2

At stage 1's sewers for example, there's no water at the bottom row when there should be. And at the werewolf boss room, Simon's body can be seen through the floor (also note the additional yellow tiles detail missing from it).

b0x-Cub3d commented 3 days ago

It looks like you need to compress the sprite layer by 1 line. That's just my guess, though.

cracyc commented 3 days ago

https://github.com/mamedev/mame/commit/bfc648f2b1c2e0d106659968a3042c73ec8e7991 fixes this issue with strider but doesn't for this, probably a related problem though where the vblank irq is firing too early.

HazukiXX commented 1 day ago

bfc648f fixes this issue with strider but doesn't for this, probably a related problem though where the vblank irq is firing too early.

This update made the bottom line from Dracula worse, causing visual artifacts to show up: 1 2

(You may need to open the couple screenshots in a new tab to see the glitches better)

b0x-Cub3d commented 1 day ago

I think those artifacts aren't meant to be seen on an actual CRT. So, it's actually more accurate in my opinion.