New issue
Advanced search Search tips

Issue 832185 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 3
Type: Bug
Proj-VR
Proj-XR



Sign in to add a comment

Tune WebXR rendering performance/quality on mobile

Project Member Reported by bajones@chromium.org, Apr 12 2018

Issue description

WebXR's API design makes it easier for the browser to tune performance by setting the default size of the render targets used and making it more feasible to use render paths that don't require as many copies. The buffer sizes allocated by WebXR by default (and the number of antialiasing samples used) should be tuned to account for that.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Apr 12 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3d65b87b507fa24041ed9a68da6a7fe0fe2c8ddf

commit 3d65b87b507fa24041ed9a68da6a7fe0fe2c8ddf
Author: Brandon Jones <bajones@chromium.org>
Date: Thu Apr 12 22:01:29 2018

Drop the default MSAA samples to 2x for WebXR on mobile

This makes it easier to hit the 60FPS ideal while encouraging apps to
use some antialiasing by default. Should be paired with a future CL
that bumps the default buffer resolution slightly to help compensate
for the quality loss.

Bug:  832185 
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I7f089b4cde6c2d55d3965a4927d05a2a74520e2b
Reviewed-on: https://chromium-review.googlesource.com/1010774
Reviewed-by: Klaus Weidner <klausw@chromium.org>
Reviewed-by: Ian Vollick <vollick@chromium.org>
Commit-Queue: Ian Vollick <vollick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550378}
[modify] https://crrev.com/3d65b87b507fa24041ed9a68da6a7fe0fe2c8ddf/third_party/blink/renderer/platform/graphics/gpu/xr_webgl_drawing_buffer.cc

Project Member

Comment 2 by bugdroid1@chromium.org, Apr 14 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/25421ef824fff79586aefd9916ed5073f5e3af2c

commit 25421ef824fff79586aefd9916ed5073f5e3af2c
Author: Brandon Jones <bajones@chromium.org>
Date: Sat Apr 14 00:06:27 2018

Allow WebXR and WebVR to use different framebuffer scales.

WebXR can render more efficently and now uses a lower MSAA sample count
by default, so we can raise the overall resolution and still get the
same performance.

Bug:  832185 
Change-Id: I620870a022323eade891a0cf8d4aa108118cb5c7
Reviewed-on: https://chromium-review.googlesource.com/1012600
Commit-Queue: Brandon Jones <bajones@chromium.org>
Reviewed-by: Chris Palmer <palmer@chromium.org>
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Reviewed-by: Klaus Weidner <klausw@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550820}
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/device/vr/android/gvr/gvr_device.cc
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/device/vr/oculus/oculus_device.cc
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/device/vr/openvr/openvr_device.cc
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/device/vr/public/mojom/vr_service.mojom
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/third_party/WebKit/LayoutTests/vr/getEyeParameters_match.html
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/third_party/WebKit/LayoutTests/vr/resources/fake-vr-displays.js
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/third_party/WebKit/LayoutTests/xr/resources/xr-device-mocking.js
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/third_party/blink/renderer/modules/vr/vr_display.cc
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/third_party/blink/renderer/modules/xr/xr_session.cc

Labels: Merge-Request-67 OS-Android
Status: Fixed (was: Started)
Requesting merge for M67. The first commit it this issue made the branch point but the second did not. They're intended to be used in conjunction to maintain a performance/quality balance.
Labels: Test-Complete
Project Member

Comment 5 by sheriffbot@chromium.org, Apr 17 2018

Labels: -Merge-Request-67 Merge-Approved-67 Hotlist-Merge-Approved
Your change meets the bar and is auto-approved for M67. Please go ahead and merge the CL to branch 3396 manually. Please contact milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), kbleicher@(ChromeOS), govind@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Project Member

Comment 6 by bugdroid1@chromium.org, Apr 17 2018

Labels: -merge-approved-67 merge-merged-3396
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c50380c2e4a535cf2df2385a245db25f3c308460

commit c50380c2e4a535cf2df2385a245db25f3c308460
Author: Brandon Jones <bajones@chromium.org>
Date: Tue Apr 17 16:44:24 2018

Allow WebXR and WebVR to use different framebuffer scales.

WebXR can render more efficently and now uses a lower MSAA sample count
by default, so we can raise the overall resolution and still get the
same performance.

Bug:  832185 
Change-Id: I620870a022323eade891a0cf8d4aa108118cb5c7
Reviewed-on: https://chromium-review.googlesource.com/1012600
Commit-Queue: Brandon Jones <bajones@chromium.org>
Reviewed-by: Chris Palmer <palmer@chromium.org>
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Reviewed-by: Klaus Weidner <klausw@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#550820}(cherry picked from commit 25421ef824fff79586aefd9916ed5073f5e3af2c)
Reviewed-on: https://chromium-review.googlesource.com/1014299
Reviewed-by: Brandon Jones <bajones@chromium.org>
Cr-Commit-Position: refs/branch-heads/3396@{#44}
Cr-Branched-From: 9ef2aa869bc7bc0c089e255d698cca6e47d6b038-refs/heads/master@{#550428}
[modify] https://crrev.com/c50380c2e4a535cf2df2385a245db25f3c308460/device/vr/android/gvr/gvr_device.cc
[modify] https://crrev.com/c50380c2e4a535cf2df2385a245db25f3c308460/device/vr/oculus/oculus_device.cc
[modify] https://crrev.com/c50380c2e4a535cf2df2385a245db25f3c308460/device/vr/openvr/openvr_device.cc
[modify] https://crrev.com/c50380c2e4a535cf2df2385a245db25f3c308460/device/vr/public/mojom/vr_service.mojom
[modify] https://crrev.com/c50380c2e4a535cf2df2385a245db25f3c308460/third_party/WebKit/LayoutTests/vr/getEyeParameters_match.html
[modify] https://crrev.com/c50380c2e4a535cf2df2385a245db25f3c308460/third_party/WebKit/LayoutTests/vr/resources/fake-vr-displays.js
[modify] https://crrev.com/c50380c2e4a535cf2df2385a245db25f3c308460/third_party/WebKit/LayoutTests/xr/resources/xr-device-mocking.js
[modify] https://crrev.com/c50380c2e4a535cf2df2385a245db25f3c308460/third_party/blink/renderer/modules/vr/vr_display.cc
[modify] https://crrev.com/c50380c2e4a535cf2df2385a245db25f3c308460/third_party/blink/renderer/modules/xr/xr_session.cc

Project Member

Comment 7 by bugdroid1@chromium.org, Apr 17 2018

Labels: merge-merged-testbranch
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/3d65b87b507fa24041ed9a68da6a7fe0fe2c8ddf

commit 3d65b87b507fa24041ed9a68da6a7fe0fe2c8ddf
Author: Brandon Jones <bajones@chromium.org>
Date: Thu Apr 12 22:01:29 2018

Drop the default MSAA samples to 2x for WebXR on mobile

This makes it easier to hit the 60FPS ideal while encouraging apps to
use some antialiasing by default. Should be paired with a future CL
that bumps the default buffer resolution slightly to help compensate
for the quality loss.

Bug:  832185 
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I7f089b4cde6c2d55d3965a4927d05a2a74520e2b
Reviewed-on: https://chromium-review.googlesource.com/1010774
Reviewed-by: Klaus Weidner <klausw@chromium.org>
Reviewed-by: Ian Vollick <vollick@chromium.org>
Commit-Queue: Ian Vollick <vollick@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550378}
[modify] https://crrev.com/3d65b87b507fa24041ed9a68da6a7fe0fe2c8ddf/third_party/blink/renderer/platform/graphics/gpu/xr_webgl_drawing_buffer.cc

Project Member

Comment 8 by bugdroid1@chromium.org, Apr 17 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/25421ef824fff79586aefd9916ed5073f5e3af2c

commit 25421ef824fff79586aefd9916ed5073f5e3af2c
Author: Brandon Jones <bajones@chromium.org>
Date: Sat Apr 14 00:06:27 2018

Allow WebXR and WebVR to use different framebuffer scales.

WebXR can render more efficently and now uses a lower MSAA sample count
by default, so we can raise the overall resolution and still get the
same performance.

Bug:  832185 
Change-Id: I620870a022323eade891a0cf8d4aa108118cb5c7
Reviewed-on: https://chromium-review.googlesource.com/1012600
Commit-Queue: Brandon Jones <bajones@chromium.org>
Reviewed-by: Chris Palmer <palmer@chromium.org>
Reviewed-by: Brian Sheedy <bsheedy@chromium.org>
Reviewed-by: Klaus Weidner <klausw@chromium.org>
Cr-Commit-Position: refs/heads/master@{#550820}
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/device/vr/android/gvr/gvr_device.cc
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/device/vr/oculus/oculus_device.cc
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/device/vr/openvr/openvr_device.cc
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/device/vr/public/mojom/vr_service.mojom
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/third_party/WebKit/LayoutTests/vr/getEyeParameters_match.html
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/third_party/WebKit/LayoutTests/vr/resources/fake-vr-displays.js
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/third_party/WebKit/LayoutTests/xr/resources/xr-device-mocking.js
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/third_party/blink/renderer/modules/vr/vr_display.cc
[modify] https://crrev.com/25421ef824fff79586aefd9916ed5073f5e3af2c/third_party/blink/renderer/modules/xr/xr_session.cc

Components: Blink>WebXR

Sign in to add a comment