NEW 238328
WebGL2 occlusion query works only with early depth test
https://bugs.webkit.org/show_bug.cgi?id=238328
Summary WebGL2 occlusion query works only with early depth test
Juraj Bleho
Reported 2022-03-24 08:58:05 PDT
When fragment shader uses discard or gl_FragDepth the result of gl.ANY_SAMPLES_PASSED query is dependent on original depth of fragment instead of modified value from shader.
Attachments
Radar WebKit Bug Importer
Comment 1 2022-03-24 16:08:38 PDT
Kenneth Russell
Comment 2 2022-03-24 16:12:43 PDT
Can you offer a minimal test case showing the problem? https://github.com/KhronosGroup/WebGL/tree/main/sdk/tests/conformance2/query has a couple of tests that could be extended. Would you consider filing this on http://crbug.com/angleproject ? Ideally this will be fixed upstream in ANGLE first and then rolled into WebKit. The same problem likely happens on macOS, at least on M1 hardware.
Juraj Bleho
Comment 3 2022-03-25 02:28:10 PDT
In test you mentioned https://github.com/KhronosGroup/WebGL/tree/main/sdk/tests/conformance2/query just add discard into fragment shader. All pixel should be discarded and result should be 0 but it is 1
Note You need to log in before you can comment on or make changes to this bug.