TEXTURE_MAX/BASE_LEVEL is incorrectly clamped to 16-bit integer on MacOSX |
|||||
Issue descriptionGetTexParameter returns negative values if these two params are set to values beyond 16-bit. Need to verify how rendering is affected by this.
,
May 31 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6c2262abe85a3b1f03bf849ca670be2e505d34ec commit 6c2262abe85a3b1f03bf849ca670be2e505d34ec Author: cwallez <cwallez@chromium.org> Date: Tue May 31 18:12:30 2016 command_buffer: MAX/BASE_LEVEL fixes for GetTexParameter This fixes two bugs for GetTexParameter: - It seems the OSX OpenGL driver stores the levels on int16_t causing the large values used by some tests to overflow and return as negative numbers. This is fixed by getting the values from the command buffer state tracking. - This exposed a bug in the state tracking where the base / max levels weren't rounded correctly when specified as floats. BUG= 483282 BUG= 610153 CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_optional_gpu_tests_rel;tryserver.chromium.mac:mac_optional_gpu_tests_rel;tryserver.chromium.win:win_optional_gpu_tests_rel Review-Url: https://codereview.chromium.org/2019453003 Cr-Commit-Position: refs/heads/master@{#396864} [modify] https://crrev.com/6c2262abe85a3b1f03bf849ca670be2e505d34ec/content/test/gpu/gpu_tests/webgl2_conformance_expectations.py [modify] https://crrev.com/6c2262abe85a3b1f03bf849ca670be2e505d34ec/gpu/command_buffer/service/gles2_cmd_decoder.cc [modify] https://crrev.com/6c2262abe85a3b1f03bf849ca670be2e505d34ec/gpu/command_buffer/service/texture_manager.cc [modify] https://crrev.com/6c2262abe85a3b1f03bf849ca670be2e505d34ec/gpu/config/gpu_driver_bug_list_json.cc [modify] https://crrev.com/6c2262abe85a3b1f03bf849ca670be2e505d34ec/gpu/config/gpu_driver_bug_workaround_type.h
,
Jun 15 2016
,
Sep 10 2016
For clarification, the test that was failing because of this bug was: https://www.khronos.org/registry/webgl/sdk/tests/deqp/functional/gles3/texturestatequery.html and the driver bug workaround can be disabled, exposing the underlying bug, by passing the command line argument: --use_shadowed_tex_level_params=0
,
Sep 10 2016
Filed as Radar 28236705.
,
Dec 20 2016
The Apple driver bug is fixed in 10.12.2 (16C67). We can turn off the workaround there.
,
Dec 20 2016
FYI: I resolved the radar.
,
Dec 22 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/2347b6c10bbe0810aa8eb3ceb8bf583ff74a9dd8 commit 2347b6c10bbe0810aa8eb3ceb8bf583ff74a9dd8 Author: zmo <zmo@chromium.org> Date: Thu Dec 22 02:47:07 2016 Lift texture's MAX_LEVEL/BASE_LEVEL workaround on OSX 10.12.2+ with AMD GPU. The driver has been fixed in 10.12.2 BUG= 610153 TEST= TBR=kbr@chromium.org CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Review-Url: https://codereview.chromium.org/2594253002 Cr-Commit-Position: refs/heads/master@{#440319} [modify] https://crrev.com/2347b6c10bbe0810aa8eb3ceb8bf583ff74a9dd8/gpu/config/gpu_driver_bug_list_json.cc
,
Dec 22 2016
,
Jun 20 2017
|
|||||
►
Sign in to add a comment |
|||||
Comment 1 by cwallez@chromium.org
, May 30 2016