Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(551)

Issue 2674493003: Add compositor support for half-float RGBA buffers and textures (Closed)

Created:
3 years, 10 months ago by ccameron
Modified:
3 years, 10 months ago
CC:
cc-bugs_chromium.org, chromium-reviews, hubbe, piman+watch_chromium.org
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Add the ResourceFormat RGBA_F16, and appropriate GL and Skia values. Add the GPU capability color_buffer_float, to expose if it is possible to create a RGBA_F16 render target. When allocating a RenderPass texture, use RGBA_F16 if the output surface is high-bit-depth (which will include HDR surfaces). Add the method OutputSurface::IsHighBitDepth to indicate this property. Note that this cannot be tested by the cc pixel tests (the correct way to test this) because they use a version of Mesa that does not support floating-point textures. Tests so far have been manual, as we work on upgrading Mesa. This will be tested by having the pixel tests which currently run in software and GL mode also run in "GL with high bit depth output surface" mode. BUG=687346 CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel;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/2674493003 Cr-Original-Commit-Position: refs/heads/master@{#448143} Committed: https://chromium.googlesource.com/chromium/src/+/197ec6b2ea2af1d95c0acdf9a0ebf0cd479fdf40 Review-Url: https://codereview.chromium.org/2674493003 Cr-Commit-Position: refs/heads/master@{#448375} Committed: https://chromium.googlesource.com/chromium/src/+/22094236e8ef012d05e313c6e77c07a71addb37e

Patch Set 1 #

Total comments: 5

Patch Set 2 : Remove OutputSurface part #

Patch Set 3 : Update test expectations #

Patch Set 4 : Rebase agin #

Patch Set 5 : Don't enable on non-ES3 yet #

Unified diffs Side-by-side diffs Delta from patch set Stats (+204 lines, -299 lines) Patch
M cc/output/direct_renderer.h View 1 chunk +1 line, -0 lines 0 comments Download
M cc/output/direct_renderer.cc View 1 chunk +3 lines, -3 lines 0 comments Download
M cc/output/gl_renderer.h View 1 chunk +1 line, -0 lines 0 comments Download
M cc/output/gl_renderer.cc View 1 2 3 4 2 chunks +7 lines, -1 line 0 comments Download
M cc/output/software_renderer.h View 1 chunk +1 line, -0 lines 0 comments Download
M cc/output/software_renderer.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M cc/raster/gpu_raster_buffer_provider.cc View 1 2 3 1 chunk +3 lines, -1 line 0 comments Download
M cc/raster/raster_buffer_provider.cc View 3 chunks +4 lines, -1 line 0 comments Download
M cc/resources/platform_color.h View 1 chunk +1 line, -0 lines 0 comments Download
M cc/resources/platform_color_unittest.cc View 1 chunk +1 line, -0 lines 0 comments Download
M cc/resources/resource_format.h View 1 chunk +2 lines, -1 line 0 comments Download
M cc/resources/resource_format.cc View 6 chunks +7 lines, -0 lines 0 comments Download
M cc/resources/resource_format_utils.cc View 1 chunk +2 lines, -0 lines 0 comments Download
M cc/resources/resource_provider.cc View 1 2 3 5 chunks +13 lines, -2 lines 0 comments Download
M cc/resources/resource_provider_unittest.cc View 1 2 3 2 chunks +2 lines, -2 lines 0 comments Download
M gpu/command_buffer/common/capabilities.h View 1 2 3 4 1 chunk +88 lines, -87 lines 0 comments Download
M gpu/command_buffer/common/capabilities.cc View 1 2 3 4 1 chunk +1 line, -86 lines 0 comments Download
M gpu/command_buffer/service/feature_info.h View 1 chunk +58 lines, -57 lines 0 comments Download
M gpu/command_buffer/service/feature_info.cc View 1 2 3 4 2 chunks +2 lines, -58 lines 0 comments Download
M gpu/command_buffer/service/gles2_cmd_decoder.cc View 1 2 3 4 1 chunk +2 lines, -0 lines 0 comments Download
M gpu/ipc/common/gpu_command_buffer_traits_multi.h View 1 2 3 4 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 53 (37 generated)
ccameron
ptal
3 years, 10 months ago (2017-02-01 23:21:44 UTC) #9
enne (OOO)
https://codereview.chromium.org/2674493003/diff/1/cc/output/output_surface.cc File cc/output/output_surface.cc (right): https://codereview.chromium.org/2674493003/diff/1/cc/output/output_surface.cc#newcode40 cc/output/output_surface.cc:40: return true; I'm a little surprised you return true ...
3 years, 10 months ago (2017-02-01 23:55:22 UTC) #12
jbauman
gpu/ stuff lgtm https://codereview.chromium.org/2674493003/diff/1/cc/output/direct_renderer.cc File cc/output/direct_renderer.cc (right): https://codereview.chromium.org/2674493003/diff/1/cc/output/direct_renderer.cc#newcode612 cc/output/direct_renderer.cc:612: texture->Allocate(size, Is it expected that BackbufferFormat ...
3 years, 10 months ago (2017-02-01 23:59:21 UTC) #13
danakj
https://codereview.chromium.org/2674493003/diff/1/cc/output/output_surface.h File cc/output/output_surface.h (right): https://codereview.chromium.org/2674493003/diff/1/cc/output/output_surface.h#newcode96 cc/output/output_surface.h:96: virtual bool IsHighBitDepth() const; On 2017/02/01 23:55:22, enne wrote: ...
3 years, 10 months ago (2017-02-02 16:23:09 UTC) #14
ccameron
Updated. I removed the OuputSurface part because it's premature -- adding that was so that ...
3 years, 10 months ago (2017-02-02 21:08:41 UTC) #16
enne (OOO)
lgtm
3 years, 10 months ago (2017-02-02 22:18:57 UTC) #21
ccameron
ping tsepez@ for security review
3 years, 10 months ago (2017-02-03 07:58:20 UTC) #26
Tom Sepez
lgtm
3 years, 10 months ago (2017-02-03 20:04:41 UTC) #27
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2674493003/40001
3 years, 10 months ago (2017-02-03 20:16:44 UTC) #30
commit-bot: I haz the power
Failed to apply patch for cc/resources/resource_provider.cc: While running git apply --index -p1; error: patch failed: ...
3 years, 10 months ago (2017-02-03 20:36:35 UTC) #32
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2674493003/60001
3 years, 10 months ago (2017-02-04 00:08:01 UTC) #35
commit-bot: I haz the power
Committed patchset #4 (id:60001) as https://chromium.googlesource.com/chromium/src/+/197ec6b2ea2af1d95c0acdf9a0ebf0cd479fdf40
3 years, 10 months ago (2017-02-04 02:08:59 UTC) #38
Ken Russell (switch to Gerrit)
A revert of this CL (patchset #4 id:60001) has been created in https://codereview.chromium.org/2676153002/ by kbr@chromium.org. ...
3 years, 10 months ago (2017-02-05 00:33:11 UTC) #39
ccameron
I've removed the part that enables this on non-es3 contexts. We'll need to enable this ...
3 years, 10 months ago (2017-02-06 19:15:02 UTC) #45
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.org/2674493003/80001
3 years, 10 months ago (2017-02-06 20:23:33 UTC) #50
commit-bot: I haz the power
3 years, 10 months ago (2017-02-06 20:30:02 UTC) #53
Message was sent while issue was closed.
Committed patchset #5 (id:80001) as
https://chromium.googlesource.com/chromium/src/+/22094236e8ef012d05e313c6e77c...

Powered by Google App Engine
This is Rietveld 408576698