Viewing Issue Advanced Details
ID Category [?] Severity [?] Reproducibility Date Submitted Last Update
03609 Misc. Minor Always Dec 27, 2009, 11:21 15 days ago
Tester haynor666 View Status Public Platform MAME (Official Binary)
Assigned To Resolution Open OS Windows XP (32-bit)
Status [?] Confirmed Driver
Version 0.135u4 Fixed in Version Build C2D
Fixed in Git Commit Github Pull Request #
Summary 03609: deadeye: Artwork covers main playfield, main character is not visible in -video ddraw/gdi
Description Artwork covers main playfield, main character is not visible in -video ddraw/gdi
Steps To Reproduce
Additional Information
Github Commit
Flags
Regression Version
Affected Sets / Systems deadeye
Attached Files
zip file icon deadeye.zip (591 bytes) Mar 6, 2010, 10:16
png file icon deadeye_d3d_artmrdo.png (1,973 bytes) Nov 30, 2013, 11:38 Uploaded by haynor
haynor
png file icon deadeye_d3d_lay.png (2,172 bytes) Nov 30, 2013, 11:38 Uploaded by haynor
haynor
png file icon deadeye_ddraw_artmrdo.png (1,964 bytes) Nov 30, 2013, 11:39 Uploaded by haynor
haynor
png file icon deadeye_ddraw_lay.png (2,150 bytes) Nov 30, 2013, 11:39 Uploaded by haynor
haynor
png file icon 0000_no_ext_art_d3d.png (3,787 bytes) Jul 23, 2014, 09:35 Uploaded by haynor666
haynor666
png file icon 0001_with_ext_art_d3d.png (3,280 bytes) Jul 23, 2014, 09:36 Uploaded by haynor666
haynor666
png file icon 0002_with_ext_art_finalwindow_d3d.png (19,656 bytes) Jul 23, 2014, 09:39 Uploaded by haynor666
haynor666
png file icon 0003_with_ext_art_finalwindow_ddraw.png (18,864 bytes) Jul 23, 2014, 09:39 Uploaded by haynor666
haynor666
png file icon 0004_no_ext_art_finalwindow_ddraw.png (19,433 bytes) Jul 23, 2014, 09:40 Uploaded by haynor666
haynor666
png file icon 0000.png (1,626 bytes) Jul 23, 2014, 09:43 Uploaded by haynor666
haynor666
png file icon 0002.png (1,533 bytes) Jul 23, 2014, 09:43 Uploaded by haynor666
haynor666
Relationships
related to 05085Resolvedhap  videopin: pinball mechanical parts not visible with artwork and GDI 
Notes
18
User avatar
No.05319
Haze
Senior Tester
Dec 27, 2009, 13:42
If it's a problem with the Artwork files it should be reported to the people providing the artwork files, as technically it's not a MAME bug*


* unless MAME is handling the artwork file incorrectly, and there is example code to prove this.
User avatar
No.05323
Tafoid
Administrator
Dec 27, 2009, 16:54
I've tried this game in multiple configurations. At no time does the shooter get completely covered up by any overlay or element of the overlay. There is some yellow that the shooter gets "behind" on the sides as he's shooting, but that's normal behavior.

I would suggest re-acquiring the artwork package, making sure you have all artwork options enabled (a default mame.ini would do this). Ensure you have no .CFG or .INI specific to this game or driver, as if you have one made from an earlier version, it might interfere with operation.
User avatar
No.05336
Fujix
Administrator
Dec 28, 2009, 11:07
Probably you should go to the Mr. Do's site and report this issue.
User avatar
No.05428
Tafoid
Administrator
Jan 6, 2010, 13:32
Haynor,

In the future, any settings that are NOT default for MAME must be reported with the bug. (In this case, D3D is default and assumed unless you tell us) It's very hard to confirm bugs which may require alternate flags or modes to be set unless the exact command line or settings are shared with the bug.

That said, I've reopened and confirmed this bug based on message on your other bug. Thanks for reporting.
User avatar
No.05446
haynor666
Tester
Jan 7, 2010, 10:10
edited on: Jan 7, 2010, 10:12
Thanks Tafoid and please don't close bugs so fast because I and probably many other testers don't have enough time to react to bugs, test them and post comments. Please, leave open reports for at least 3 days.

BTW.

0.133u1: Some improvements to the Meadows driver [Robiza]: Set autocenter value to 0 in Dead Eye

maybe this caused problems :|
User avatar
No.05751
Janez
Tester
Feb 23, 2010, 17:38
With this deadeye.lay file the problem is fixed.

<!-- deadeye.lay -->

<mamelayout version="2">
        <element name="overlay">
                <rect>
                        <bounds left="0" top="0" right="400" bottom="30" />
                        <color red="0.25" green="0.75" blue="0.25" />
                </rect>
                <rect>
                        <bounds left="0" top="30" right="400" bottom="60" />
                        <color red="0.25" green="0.25" blue="0.75" />
                </rect>
                <rect>
                        <bounds left="0" top="60" right="400" bottom="86" />
                        <color red="1.0" green="1.0" blue="0.125" />
                </rect>
                <rect>
                        <bounds left="0" top="86" right="25" bottom="277" />
                        <color red="1.0" green="1.0" blue="0.125" />
                </rect>
                <rect>
                        <bounds left="375" top="86" right="400" bottom="277" />
                        <color red="1.0" green="1.0" blue="0.125" />
                </rect>
                <rect>
                        <bounds left="0" top="277" right="400" bottom="300" />
                        <color red="1.0" green="1.0" blue="0.125" />
                </rect>
                <rect>
                        <bounds left="25" top="86" right="375" bottom="277" />
                        <color red="1.0" green="1.0" blue="1.0" />
                </rect>
        </element>
        <element name="bezel">
                <image file="deadeye_bezel.png" />
        </element>
        <view name="Upright_Artwork">
                <screen index="0">
                        <bounds x="415" y="365" width="1200" height="900" />
                </screen>
                <overlay element="overlay">
                        <bounds x="415" y="365" width="1200" height="901" />
                </overlay>
                <bezel element="overlay">
                        <bounds x="415" y="365" width="1200" height="901" />
                        <color alpha="0.1" />
                </bezel>
                <bezel element="bezel">
                        <bounds x="0" y="0" width="2000" height="1536" />
                </bezel>
        </view>
</mamelayout>

<!--

- Artwork type: Bezel, Overlay
- Bezel based on TAFA flyer
- Recreated for MAME by MASH
- Adjusted by Mr. Do
- Overlay based on TAFA Flyer by Mr. Do
- Lay file by Mr. Do

-->
User avatar
No.05752
Janez
Tester
Feb 23, 2010, 17:43
There is the same problem in gypsyjug.
I already fixed it with this gypsyjug.lay file.

<!-- gypsyjug.lay -->

<mamelayout version="2">
        <element name="overlay">
                <rect>
                        <bounds left="0" top="0" right="400" bottom="38" />
                        <color red="0.25" green="0.75" blue="0.25" />
                </rect>
                <rect>
                        <bounds left="0" top="38" right="400" bottom="65" />
                        <color red="0.25" green="0.25" blue="0.75" />
                </rect>
                <rect>
                        <bounds left="0" top="65" right="400" bottom="97" />
                        <color red="1.0" green="1.0" blue="0.125" />
                </rect>
                <rect>
                        <bounds left="0" top="97" right="13" bottom="267" />
                        <color red="1.0" green="1.0" blue="0.125" />
                </rect>
                <rect>
                        <bounds left="387" top="97" right="400" bottom="267" />
                        <color red="1.0" green="1.0" blue="0.125" />
                </rect>
                <rect>
                        <bounds left="0" top="267" right="400" bottom="300" />
                        <color red="1.0" green="1.0" blue="0.125" />
                </rect>
                <rect>
                        <bounds left="13" top="97" right="387" bottom="267" />
                        <color red="1.0" green="1.0" blue="1.0" />
                </rect>
        </element>
        <element name="bezel">
                <image file="gypsyjug.png" />
        </element>
        <view name="Upright_Artwork">
                <screen index="0">
                        <bounds x="222" y="250" width="720" height="540" />
                </screen>
                <overlay element="overlay">
                        <bounds x="222" y="250" width="720" height="541" />
                </overlay>
                <bezel element="overlay">
                        <bounds x="222" y="250" width="720" height="540" />
                        <color alpha="0.1" />
                </bezel>
                <bezel element="bezel">
                        <bounds x="0" y="0" width="1200" height="952" />
                </bezel>
        </view>
</mamelayout>

<!--

- Artwork type: Bezel, Overlay
- Bezel based on TAFA flyer
- Recreated for MAME by MASH
- Adjusted by Mr. Do
- Overlay based on TAFA Flyer by Mr. Do
- Lay file by Mr. Do

-->
User avatar
No.05756
Mr. Do
Tester
Feb 24, 2010, 05:35
edited on: Feb 24, 2010, 05:36
This is a ddraw issue, as the artwork is not covering the main playfield. I could "fix" it in the LAY file for the external artwork, but it wouldn't really be correct.

Both this game and Gypsy had an overlay that sat directly on the monitor (not reflected up to a mirror). The overlay element is used as both an overlay, and a bezel with an alpha of 0.1, because on the real game, if the overlay is directly on the monitor, you would be able to see it.

The real overlay would be clear in the middle, which is how the current external artwork file is setup.

If we use Janez's "fix," by making the middle white, it would fix the screenshot above, because haynor took a screenshot with bezels turned off. But with the bezels turned on, the middle of the screen would have the white tinge because of using the overlay as the see-thru bezel.

The way it seems MAME is working, with Direct-3D, things are handled correctly; in the area of the overlay where there is no color defined, it appears as see-through, and looks correct. With DirectDraw, it seems that since there is no color defined in that area of the overlay, it is being assumed that there is no color (black), and you get the error reported above.

Actually, I could "fix" this, by creating four separate overlays (top, left, right, bottom), so that no artwork element is even applied to the center of the screen. It's not really the right way to do it, but that would fix the problem above.
User avatar
No.05757
Janez
Tester
Feb 24, 2010, 13:51
It is not only a ddraw issue, because it happens in Linux too (SDLMAME 0.136.)
So, if the lay files are OK, is it a MAME's problem?
User avatar
No.05831
M.A.S.H.
Senior Tester
Mar 6, 2010, 10:17
I update the deadeye.lay with the correct layout informations
from MAME (src\mame\layout\deadeye.lay).
This fixed the bug!!!.
Simply add the attached deadeye.lay to artwork\deadeye.zip!
User avatar
No.05832
Haze
Senior Tester
Mar 6, 2010, 10:29
As stated above, there is still a bug because I see no reason why the behavior should differ between ddraw (and SDLMame) vs. d3d. Either d3d is incorrectly rendering it without a glitch, or the software renderer is gltichy. 'Fixing' the artwork just hides the real problem.
User avatar
No.05971
haynor666
Tester
Apr 14, 2010, 09:55
maybe you could look at this:

0.133u1: Some improvements to the Meadows driver [Robiza]: Set autocenter value to 0 in Dead Eye

this might problem really
User avatar
No.08193
haynor666
Tester
Feb 13, 2012, 20:19
edited on: Feb 13, 2012, 20:22
Recent changes with video and new lay files (available on Mr. Do site) didn't fixed this but ovelay color around playfield is no longer visible.
User avatar
No.10033
haynor666
Tester
Nov 30, 2013, 11:33
edited on: Nov 30, 2013, 11:40
It seems that internal mame lay is working fine, just external artwork does not work right. I attached screens.

In general adding external artwork for games that already have internal lay generally makes games look different, mostly darker, even for vector games. All testes on DDRAW and D3D.

Also colours in D3d vs DDRAW are a bit different.
User avatar
No.10851
haynor666
Tester
Jul 23, 2014, 09:39
edited on: Jul 23, 2014, 09:45
I've uploaded more screens, this time from superbug. It clearly visible that internal screen is different from visible on screen when I use external artwork and use d3d. When I use ddraw internal screen is exactly the same as what I see on screen. When I not use external artwork no matter what combination I use internal screen always match what I can see on screen.

I've also added screens from Invader's Revenge. In this case D3D or ddraw does not matter. Lower part of screen is always darker when external artwork is used.
User avatar
No.22533
hap
Developer
15 days ago
The overlay element here has an empty part in the middle, aka an alpha of 0.
On current .lay files this would translate to a multiply blend. I don't understand why d3d and bgfx show graphics when multiplying with 0 alpha.
User avatar
No.22538
cuavas
Administrator
15 days ago
The multiply mode ignores alpha – it’s an RGB multiply, not an RGBA multiply. If you were to multiply the alpha as well, zero alpha would multiply with the alpha of whatever’s underneath and produce zero alpha, rendering it transparent. That likely isn’t what you want, either.
User avatar
No.22542
hap
Developer
15 days ago
From the deadeye example (or anywhere), add this and do the multiply blend:

<rect>
<bounds left="0" top="0" right="400" bottom="300" />
<color red="1.0" green="0.0" blue="1.0" alpha="1.0" />
</rect>

- alpha="1.0"
gdi: magenta as expected
d3d: "
opengl: "
bgfx (default backend): "

- alpha="0.5"
gdi: ignores alpha, result is magenta
d3d: same as gdi
opengl: same as gdi
bgfx: result is light pink, so it actually takes alpha into account some way

- alpha="0.0"
gdi: black, it does not ignore alpha like before, but multiplies with black, why?
d3d: white, it does not ignore alpha like before, and instead appears to not multiply at all, why?
opengl: same as gdi
bgfx: white (which is consistent with alpha=0.5 being light pink)