playcanvas / playcanvas/engine

WebGPU Intel Graphics error.

Open
#8,376 13 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
16.8k
Forks
2k
Avg merge
4h 32m
Merged PRs (30d)
222

Description

On devices with Intel GPU, this problem occurs at random moments when creating a instance + indirect draw.

I understand that the problem is not entirely engine related, but let's investigate.

Tested and error caught:
Device Driver
Intel UHD Graphics 770 31.0.101.2137
Intel Iris Xe Graphics 31.0.101.5978
Intel UHD Graphics 730 31.0.101.5537
ID3D12Device::GetDeviceRemovedReason failed with DXGI_ERROR_DEVICE_HUNG (0x887A0006)
 - While handling unexpected error type Internal when allowed errors are (Validation|DeviceLost).
    at CheckHRESULTImpl (..\..\third_party\dawn\src\dawn\native\d3d\D3DError.cpp:121)

Backend messages:
 * Device removed reason: DXGI_ERROR_DEVICE_HUNG (0x887A0006)

debug.js:117 WebGPU device was lost: ID3D12Device::GetDeviceRemovedReason failed with DXGI_ERROR_DEVICE_HUNG (0x887A0006)
 - While handling unexpected error type Internal when allowed errors are (Validation|DeviceLost).
    at CheckHRESULTImpl (..\..\third_party\dawn\src\dawn\native\d3d\D3DError.cpp:121)

Backend messages:
 * Device removed reason: DXGI_ERROR_DEVICE_HUNG (0x887A0006)
, this needs to be handled

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the WebGPU device loss during instance creation plus indirect draw on the listed Intel GPUs and drivers. Use the stack trace in third_party/dawn/src/dawn/native/d3d/D3DError.cpp as the initial error location, then determine whether the engine can isolate or handle the DXGI_ERROR_DEVICE_HUNG failure. Done means the cause or a reproducible engine-side fix is identified.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
computer-graphics
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.