Skip to content

Enabling Metal argument buffers in 1.2.10+ breaks rendering in Dolphin #2403

Open
@OatmealDome

Description

@OatmealDome

It appears that using Metal argument buffers, which is enabled by default in 1.2.10+, breaks rendering in Dolphin. Output is either a black screen or corrupted:

Expected Output

image

Apple M1

image

Intel UHD 630

image

Here's a GPU trace from the M1: LineWidthTest.gputrace.zip

If you would like to run the test for yourself, you can download a build of Dolphin with the latest MoltenVK commit (1d2ec638532268d076a550262df2e5e5e4fd2c9e) here: pr-13205-dolphin-latest-universal.dmg. Switch the video backend in Graphics button -> General tab to Vulkan, and then drag and drop this file on the Dolphin window to start rendering the test image: LineWidthTest.dff.

Turning off Metal argument buffers with MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS=0 resolves the issue.

I was able to reproduce the issue on:

  • M1 Pro / Sequoia 15.2 beta 4 (black screen)
  • M1 / Sonoma 14.6.1 (black screen)
  • Intel UHD 630 / Sequoia 15.1 (corruption)

I was unable to reproduce the issue on:

  • AMD Radeon Pro 5500M / Sequoia 15.1

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions