|グラフィック||中||解決済み||修正済み||2010-02-10 07:29||2019-01-21 15:41|
popeye - ポパイ (revision D)
|詳 細||On the real Popeye hardware, sprite colour 0 is not transparent with respect to overlapping sprites. It's only transparent with respect to the background graphics.|
When two sprites overlap in Popeye, the sprite with the highest priority COMPLETELY overdraws the sprite underlying it, including the transparent area (pixel with colour value 0). The result is that instead of proper sprite prioritzing, overlapping sprites are overdrawn like chunky blocks.
The sprite rendering code in MAME wrongly treats sprite colour 0 as transparent, which is the case in almost all games with hardware sprites, but NOT Popeye.
|再現手順||Play the original Popeye PCB, and see what happens when two sprites overlap. For instance, let Popeye run into Brutus. You'll see that when Popeye overlaps Brutus, he completely overdraws him, with no pixel of Britus visible below the Popeye sprite block.|
|追加情報||I have included screenshots from my original Nintendo Popeye PCB which show the issue. The falling Popeye, when losing a life, completely overdraws the Bluto sprite.|
Note that it's quite hard to photograph, but anyone else owning a real Popeye will confirm it.
The PCB is 100% working, this is no hardware glitch. It's the way how the sprite hardware is designed to cope with high resolution sprites.
|添付ファイル||Popeye_Sprite.zip (2010-02-10 07:29)|
|popeye_pens.zip (2010-02-10 09:05)|
|101_9901.JPG (2010-02-10 21:14) |
|popeye1.jpg (2010-02-11 03:14) |
|popeye2.jpg (2010-02-11 03:14) |
|popeye3.jpg (2010-02-11 03:15) |
|popeye.c (2010-02-11 08:27)|