Project

General

Profile

Actions

Emulator Issues #11496

open

Metroid Prime - Raindrop rendering appears to cause crash when using Intel HD 615 graphics

Added by Rupeeclock about 6 years ago. Updated almost 6 years ago.

Status:
New
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

Game Name?

Metroid Prime (Gamecube)
Including a European version, and a US version with widescreen hack applied.

Game ID? (right click the game in the game list, properties, info tab)

GM8P01 (EU Region)
GM8E01 (US Region)

MD5 Hash? (right click the game in the game list, properties, info tab, MD5 Hash: Compute)

GM8P01 - b1379c44e0ebc521e18215de3e5dbeea (compressed as .gcz)
GM8E01 - 0d2ba934eec6a59ee1e155e0d039f194 (widescreen hack + trimmed ISO)

What's the problem? Describe what went wrong.

When emulating Metroid Prime on newer development builds such as 5.0-9213, or less recent such as 5.0-85xx, an emulator crash can occur in a specific area of the game.
On the landing site of Tallon Overworld, rainfall can render raindrops on Samus' visor.
At any time raindrops can be generated, there is a small chance the emulator will crash when using Direct3D 11 graphical backend on Intel HD 615 graphics.
This includes during the landing cinematic cutscene when the Samus character model is loaded into the scene, emerging from her gunship.

What steps will reproduce the problem?

  • Emulate Metroid Prime on a device using Intel HD 615 integrated graphics, using recent 5.0 development builds.
  • Set graphical backend to Direct3D 11.
  • Finish the Frigate Orpheon opening section of the game.
  • Landing cutscene will play, during most of which Samus model is not loaded.
  • At first instance of Samus model appearing on-screen, there exists a small chance every frame of crash occurring.
  • If cutscene finishes playing without a crash, game can be saved to Gamecube memory card.
  • After save prompt, normal gameplay resumes, with Samus starting in area where raindrops can generate on visor.
  • Raindrops will generate when moving forward, or looking skyward.
  • Raindrops will not generate when looking down, under a ceiling, or submerged in water. In such instances a crash will not occur.

There are two variations of this crash.
When storing XFB Copies to Texture Only, the following warning will display.
Dismissing this error will cause the application to close.

DXTexture failed in c:\buildbot\release-win-x64\build\source\core\videobackends\d3d\dxtexture.cpp at line 124: Create backing DXTexture

A separate error is displayed when storing XFB copies to texture + ram, and disabling "Defer EFB Copies to RAM"
Dismissing this error will cause the warning at line 327 to repeat, until eventually the error at line 124 is re-encountered.

Map failed in c:\buildbot\release-win-x64\build\source\core\videobackends\d3d\dxtexture.cpp at line 327: Map readback texture

Issue has been occurring on multiple driver versions predating the current 25.20.100.6471 drivers release December 20th, 2018.
Issue will not occur in OpenGL backend.
Issue is not resolved by a wide number of graphical configuration changes, including ubershaders, internal resolution, use of widescreen hacks or not, scaled EFB copy, EFB access from CPU, fog settings, per-pixel lighting, EFB copy filter, arbitrary Mipmap detection, how EFB or XFB copies are stored to texture/ram, option to immediately present XFB, texture cache accuracy, ignore format changes, fast depth calculation, disable bounding box.

Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.

Dolphin version 5.0-9213

Is the issue present in the latest stable version?

No, tested on 5.0 stable release from mid-2016. No crash will occur.

What are your PC specifications? (CPU, GPU, Operating System, more)

GPD Win2:

  • Intel Core m3-7y30 @ 1.00GHz 1.61GHz
  • Intel(R) HD Graphics 615
  • Windows 10 Home version 1803
  • 8.00 GB RAM

Have also tested on a Dell XPS 15 using either GTX 1050 graphics or Intel HD 630 graphics, or a desktop PC using GTX 770 graphics or Intel HD 4600 graphics. No crash issue will occur.

Is there anything else that can help developers narrow down the issue? (e.g. logs, screenshots,
configuration files, savefiles, savestates)

See attached screenshots and attached savestate in five-part 7zip archive.

There is a possibility that this is related to graphical issue 11495, due to how the raindrops are not being rendered correctly.
https://bugs.dolphin-emu.org/issues/11495


Files

Screenshot (210).png (988 KB) Screenshot (210).png Crash info line 327 Rupeeclock, 12/23/2018 12:14 AM
Screenshot (211).png (842 KB) Screenshot (211).png Crash info line 124 Rupeeclock, 12/23/2018 12:14 AM
GM8P01.7z.001 (5 MB) GM8P01.7z.001 5.0-9213 savestate Rupeeclock, 12/23/2018 12:15 AM
GM8P01.7z.002 (5 MB) GM8P01.7z.002 5.0-9213 savestate Rupeeclock, 12/23/2018 12:15 AM
GM8P01.7z.004 (5 MB) GM8P01.7z.004 5.0-9213 savestate Rupeeclock, 12/23/2018 12:15 AM
GM8P01.7z.005 (3.29 MB) GM8P01.7z.005 5.0-9213 savestate Rupeeclock, 12/23/2018 12:15 AM
GM8P01.7z.003 (5 MB) GM8P01.7z.003 5.0-9213 savestate Rupeeclock, 12/23/2018 12:15 AM
Screenshot (267).png (786 KB) Screenshot (267).png 4.0-1146 screenshot Rupeeclock, 12/27/2018 12:45 AM
Actions #1

Updated by Rupeeclock almost 6 years ago

Whilst investigating issue 11495, retested this issue in Dolphin 4.0-1146 and 4.0-1192 (tev_fixes_new branch merge).
A crash would also occur in the same scenario, but with a different error message.

DX11::PSTextureEncoder::EncodeFailed in PSTextureEncoder.cpp at line 1168: map staging buffer (0x887a0005)

Actions #2

Updated by Stenzek almost 6 years ago

Might be worth testing this against https://github.com/dolphin-emu/dolphin/pull/7753, as EFB copies have been rewritten to use the common interface. https://dl.dolphin-emu.org/prs/pr-7753-dolphin-latest-x64.7z

Actions #3

Updated by Rupeeclock almost 6 years ago

Cool, I will check this out when I return home later today.
Will test the latest dev build on master branch first, then check this 7753 pull build.

Actions #4

Updated by Rupeeclock almost 6 years ago

Tested the issue again on my GPD Win 2, 5.0-9610 and [refs/pull/7753/head] 5.0-9612 both still experience crashes in the same scenario.
This was tested on an older set of drivers and the most recent Intel Graphics Driver version 25.20.100.6519 (January 14, 2019)

There were some differences in warnings and behaviour though.
Whilst fullscreen, Dolphin would become non-responsive and eventually quit by itself.
Whilst windowed, it would display a variety of warnings:
Failed to create 16x16x1 D3D backing texture
Failed to create 64x64x1 D3D backing texture
Failed to create 32x20x1 D3D backing texture
Failed to create 128x128x1 D3D backing texture
When ignoring these warnings, video output would be stuck on the last rendered frame but the game continues to be playable, accepting control input and producing sound.

I also observed that this crash would not occur when full speed emulation was not achieved. It was less likely to occur when playing at 2x internal resolution, and more likely on native where full speed was consistent.

Lastly, this does not resolve issue 11495 either.

Actions

Also available in: Atom PDF