model-viewer icon indicating copy to clipboard operation
model-viewer copied to clipboard

safari artifact issue

Open DusanMilko opened this issue 9 months ago • 4 comments

Description

Seeing artifacts in safari 17.2.1

Screenshot 2024-05-14 at 2 05 42 PM

Live Demo

https://modelviewer.dev/editor/

Version

Latest

Browser Affected

  • [ ] Chrome, version: xx.x.xxxx.xx
  • [ ] Edge
  • [ ] Firefox
  • [ ] IE
  • [x] Safari

OS

  • [ ] Android
  • [ ] iOS
  • [ ] Linux
  • [x] MacOS
  • [ ] Windows

AR

  • [ ] WebXR
  • [ ] SceneViewer
  • [ ] QuickLook

DusanMilko avatar May 14 '24 19:05 DusanMilko

Looking fine here on Safari on MacOS 14.4.1, with an M1 Macbook Pro. Can you give us your system details? image

elalish avatar May 15 '24 17:05 elalish

Oh, I'm on Safari 17.4.1 - does updating help? Might just be a driver bug.

elalish avatar May 15 '24 17:05 elalish

@elalish This is only happening in Safari on Intel Macs. I think it may be related to texture2DGradEXT in three.js.

#define texture2DGradEXT textureGrad

DusanMilko avatar May 30 '24 19:05 DusanMilko

Would you mind filing a bug on WebKit then?

elalish avatar May 30 '24 20:05 elalish

@elalish

I'm having the same issue on the latest version of Chrome(128.0.6613.113) on MacOS Sonoma(14.6.1). I don't see the issue happening in older version of ModelViewer though.

Intel based MBP from 2019. AMD Radeon Pro 5500M(4GB) and Intel UHD 630.

Video is attached as well as PC specs.

Screenshot 2024-09-03 at 1 12 07 PM

https://github.com/user-attachments/assets/117fb748-1a9c-4fcc-a5bc-11c2701015bf

Screenshot 2024-09-03 at 1 18 27 PM

cpiggott avatar Sep 03 '24 18:09 cpiggott

FYI @mrdoob @mugen Looks like there was a regression in a Three.js shader sometime between r160 and r163 for Intel/AMD Macbook pros. Maybe related to texture2DGradEXT - I'd look into it, but I don't have a machine that can repro it. Can anyone else repro? Ideally also in some of the Three.js glTF examples?

elalish avatar Sep 04 '24 15:09 elalish

Is there a live demo to test?

mrdoob avatar Sep 05 '24 05:09 mrdoob

@mrdoob Yes, the screenshots above are from https://modelviewer.dev/editor/ using Damaged Helmet or Boom Box from the select model drop-down.

elalish avatar Sep 05 '24 15:09 elalish

As best we can tell this is a GPU driver bug on older Macs that would only be resolvable by making some kind of shader work-around in three.js. This does not appear to be a wide-spread enough issue to warrant that kind of effort. I'm going to close this for now; if someone really wants to follow up, I'd recommend filing an issue on Three.js with a minimal repro - ideally one of the Three.js glTF examples.

elalish avatar Sep 13 '24 22:09 elalish

This should be reported to Apple and not to Three.js 🙏

mrdoob avatar Sep 14 '24 01:09 mrdoob

@mrdoob @elalish Would you mind pointing me in the direction of where to report to Apple.

We've had multiple people report this issue now to us directly. We were able to repro with r157.

cpiggott avatar Sep 17 '24 15:09 cpiggott