Chromium Bug 1301748

Example

Issue Summary

We've found a known issue when using Google Chrome, on Intel Based Apple Macs, with AMD GPU's, on MacOS 11.6.4 and later, where rendering elements that have more than 64k triangles results in artifacts. This is due to a known technical glitch in Chrome, and some other browsers built similarly to Chrome. Oddly enough, this glitch doesn't go away easily - it sticks around even if you restart your browser or your computer.

It's linked to a particular process in Chrome named the "passthrough command decoder". This decoder is a part of the browser that's supposed to handle 3D models. But, in this case, it seems to be struggling with models that have a high number of triangles.

Maintainers of Google Chrome (/Chromium) are aware of this issue and are hard at work trying to fix it. They're focusing on tweaking a certain aspect of Chrome that might resolve the problem. Unfortunately, as of July 2023, this solution isn't ready to be rolled out yet.

Unfortunately - as Konfig, this issue is kind of out of our hands. We'll keep updating this article as the situation develops.

Scope

This bug affects the following 'venn diagram'

  • Intel Based Macs
  • With AMD GPUs (ie - the 'Pro' line-up)
  • Running MacOS 11.6.4 or later
  • Running a Chromium Based Browser (Chrome, Arc, Edge, etc.)
  • Configurators that have elements that have more than 64k elements

Workarounds

  • The main workaround here is to only upload elements that are limited to 64k triangles.

Technical Summary

Issue 1301748 is a technical problem in which 3D models with over 64,000 triangles are rendered with errors in Chromium based browsers. This bug is encountered specifically on Chrome versions 98.0.4758.109 and later, running on OS X Mac OS 11.6.4 and later. It does not affect other browsers that don't run a chromium source like Safari or Firefox.

The issue is stateful and can persist even after closing the Chrome/Chromium browser or rebooting the system. The bug is mainly detected when the triangles in the 3D models are connected to the wrong vertices, leading to a flawed rendering of the 3D mesh surface. This issue affects certain AMD GPUs on macOS and has been discovered to be specific to Chrome's use of a "passthrough command decoder".

The issue was reported in February 2022 and has since been tested and replicated. Workarounds have been proposed that involve using different command decoder options, and the problem has been categorized under the Blink>WebGL component for further investigation.

As of July 2023, there's been substantial discourse around the problem, but a definitive solution within the stable version of Chrome is yet to be finalized. The Chrome team is pressing forward with the launch of the passthrough command decoder and is trying to expedite the shipment of ANGLE's Metal backend to fix this issue.

Further Reading:

Changelog

  • 2023-07-28 - Initial Article Written