[Webkit-unassigned] [Bug 253431] New: OffscreenCanvas missing WebGL support breaks all Construct 3 content

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Mar 6 05:19:01 PST 2023


https://bugs.webkit.org/show_bug.cgi?id=253431

            Bug ID: 253431
           Summary: OffscreenCanvas missing WebGL support breaks all
                    Construct 3 content
           Product: WebKit
           Version: Safari 16
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Major
          Priority: P2
         Component: WebGL
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: ashley at scirra.com
                CC: dino at apple.com, kbr at google.com, kkinnunen at apple.com

Created attachment 465313

  --> https://bugs.webkit.org/attachment.cgi?id=465313&action=review

Minimal repro

Safari 16.4 appears to ship only a partial implementation of OffscreenCanvas, with only support for the 2D context. The beta release notes include the line: "Added support for 2D-only OffscreenCanvas."

Calling `offscreenCanvas.getContext("webgl2")` in a worker returns null in Safari TP 164. This breaks all web content that feature-detects OffscreenCanvas with `typeof OffscreenCanvas !== "undefined"`, including all iOS apps and web content made by Construct (www.construct.net) published over the past few years. We can publish an update that works around this, but it will still cause major disruption as all of the past few years of content will all need updating, and some of it will not be actively maintained.

Sample web content broken in Safari TP 164: https://downloads.scirra.com/labs/spaceblaster/

Minimal repro attached. This attempts to get an OffscreenCanvas WebGL 2 context in both the DOM and a Web Worker. It works in the DOM but returns null in the worker in latest Safari only. (This also makes feature detection harder - you can't detect missing OffscreenCanvas support for WebGL in the DOM, prior to starting a worker.) Both Chrome and Firefox support WebGL in an OffscreenCanvas in a worker, so only Safari has this issue.

Please do not ship features if they are only partially supported! It means it passes feature detection but breaks. Using WebGL in an OffscreenCanvas in a worker is a major use case for both us and the OffscreenCanvas API. I would ask that OffscreenCanvas is unshipped from Safari releases until it is completed.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20230306/bda54109/attachment.htm>


More information about the webkit-unassigned mailing list