Emulator Issues #12040
closedDolphin Android crashes on savestate when using Vulkan (AbstractTextureFormat assert fails)
0%
Description
Game Name?
Seemingly any game. Tested with:
Pokémon Colosseum (PAL)
Mario Kart: Double Dash!! (PAL)
Beyblade VForce (PAL)
The Legend of Zelda: The Wind Waker (USA)
Game ID? (right click the game in the game list, Properties, Info tab)
In the above order:
GC6P01
GM4P01
GBTP70
GZLE01
MD5 Hash? (right click the game in the game list, Properties, Verify tab, Verify Integrity button)
In the above order:
2be2607ae4826cbc77efb4ef4ada6385
d9a2e9c73f4be1a0456734445402d35d
5b3df8a487cf85f51ac1292fa0e992fe
d8e4d45af2032a081a0f446384e9261b
What's the problem? Describe what went wrong.
When saving or loading a savestate on Android, Dolphin will freeze and stop responding.
In logcat, the following error appears:
org.dolphinemu.dolphinemu.debug E/Dolphin: [NativeLibrary] Alert: An error occurred.
Line: 648
File: ../../../../../../Core/VideoCommon/RenderBase.cpp
Ignore and continue?
This line refers to the assert statement in the following code:
void Renderer::ScaleTexture(AbstractFramebuffer* dst_framebuffer,
const MathUtil::Rectangle<int>& dst_rect,
const AbstractTexture* src_texture,
const MathUtil::Rectangle<int>& src_rect)
{
ASSERT(dst_framebuffer->GetColorFormat() == AbstractTextureFormat::RGBA8);
When inspecting the dst_framebuffer
the color format is R32F
instead of RGBA8
, causing the assert to fail.
I have commented out the assert and recompiled Dolphin. This fixes the issue. However, since this assert was probably put there for a reason and I'm not familiar enough with Dolphin to locate the root cause I have decided to submit an issue instead of a pull request.
What steps will reproduce the problem?
- Open Dolphin on Android
- Enable Vulkan video backend
- Enable savestates
- Load one of the mentioned games
- Save or load a savestate
Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.
Yes, 5.0-11830.
Is the issue present in the latest stable version?
No stable Android version available.
If the issue isn't present in the latest stable version, which is the first broken version? (You can find the first broken version by bisecting. Windows users can use the tool https://forums.dolphin-emu.org/Thread-green-notice-development-thread-unofficial-dolphin-bisection-tool-for-finding-broken-builds and anyone who is building Dolphin on their own can use git bisect.)
The last working version is 5.0-10697. The first broken version is 5.0-10707.It has the following desription:
Merge pull request #6321 from stenzek/efb-savestates
Support saving EFB and texture cache in save states
If your issue is a graphical issue, please attach screenshots and record a three frame fifolog of the issue if possible. Screenshots showing what it is supposed to look like from either console or older builds of Dolphin will help too. For more information on how to use the fifoplayer, please check here: https://wiki.dolphin-emu.org/index.php?title=FifoPlayer
N/A
What are your PC specifications? (CPU, GPU, Operating System, more)
Nokia 8 TA-1012, Snapdragon 835, Android 9 (1 January 2020 security patch)
Is there anything else that can help developers narrow down the issue? (e.g. logs, screenshots,
configuration files, savefiles, savestates)