Bug 221163

Summary: https://eventshare.co/ camera doesn’t show image
Product: WebKit Reporter: Dean Jackson <dino>
Component: WebGLAssignee: Dean Jackson <dino>
Status: ASSIGNED    
Severity: Normal CC: dino, kbr, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   

Dean Jackson
Reported 2021-01-29 16:09:30 PST
This page does some feature detection and decides that we are not a compatible WebGL context. This only reproduces with WebGL 2 enabled. I traced it a bit, but didn't quite track it down to a particular piece of logic. It uses PixiJS, but I'm not sure if that's the code which is failing.
Attachments
Radar WebKit Bug Importer
Comment 1 2021-01-29 16:09:39 PST
Dean Jackson
Comment 2 2021-01-29 16:10:45 PST
This is the actual radar: rdar://problem/67756671
Kenneth Russell
Comment 3 2021-01-29 16:38:15 PST
In DevTools, after clicking the "+" button to start the camera: photobooth - eventshare.co, source file jeelizFaceFilter.js: Against a WebGL2RenderingContext: It looks for ["EXT_color_buffer_float", "WEBGL_color_buffer_float", "OES_color_buffer_float"] (succeeds with EXT_color_buffer_float) then for ["EXT_color_buffer_half_float", "WEBGL_color_buffer_half_float", "OES_color_buffer_half_float"] (succeeds with EXT_color_buffer_half_float) then for ["OES_texture_float", "MOZ_OES_texture_float", "WEBKIT_OES_texture_float"] (fails) then for ["OES_texture_float_linear", "MOZ_OES_texture_float_linear", "WEBKIT_OES_texture_float_linear"] (succeeds) then for ["OES_texture_half_float", "MOZ_OES_texture_half_float", "WEBKIT_OES_texture_half_float"] (fails) then for ["OES_texture_half_float_linear", "MOZ_OES_texture_half_float_linear", "WEBKIT_OES_texture_half_float_linear"] (fails) then for ["OES_texture_half_float", "MOZ_OES_texture_half_float", "WEBKIT_OES_texture_half_float"] (fails) then for ["EXT_color_buffer_float", "WEBGL_color_buffer_float", "OES_color_buffer_float"] (succeeds with EXT_color_buffer_float) then for ["EXT_color_buffer_half_float", "WEBGL_color_buffer_half_float", "OES_color_buffer_half_float"] (succeeds with EXT_color_buffer_half_float) then for ["OES_texture_float", "MOZ_OES_texture_float", "WEBKIT_OES_texture_float"] (fails) then for ["OES_texture_float_linear", "MOZ_OES_texture_float_linear", "WEBKIT_OES_texture_float_linear"] (succeeds) then for ["OES_texture_half_float", "MOZ_OES_texture_half_float", "WEBKIT_OES_texture_half_float"] (fails) then for ["OES_texture_half_float_linear", "MOZ_OES_texture_half_float_linear", "WEBKIT_OES_texture_half_float_linear"] (fails) then for ["OES_texture_half_float", "MOZ_OES_texture_half_float", "WEBKIT_OES_texture_half_float"] (fails) then for ["OES_texture_float", "MOZ_OES_texture_float", "WEBKIT_OES_texture_float"] (fails) ... Chrome returns null for EXT_color_buffer_half_float Chrome also returns null for OES_texture_half_float_linear (subsumed into WebGL 2.0) My best guess is that the presence of EXT_color_buffer_half_float - which we added as a concession to iOS - is confusing their code. Have you tried commenting out WebKit's advertising of that extension?
Note You need to log in before you can comment on or make changes to this bug.