Skip to content

Conversation

mikesfbay
Copy link
Contributor

@mikesfbay mikesfbay commented Jun 4, 2021

Purpose of this PR

  • URP late latching support to reduce VR latency.
  • Late Latching can potentially reduce ~15 ms of rendering latency (on Quest) by resampling HMD and controller input poses right before the final submit of command buffers to GPU (see doc below).

Add late latching support for camera and render pass. Use new late latching command buffer commands to mark/unmark URP stereo matrices such as stereo view and projection matrices for use in late latching.

For a detailed late latching overview, please see design doc:


Testing status

Tested late latching on Quest using template scene.


Comments to reviewers

Matching trunk PR: https://ono.unity3d.com/unity/unity/pull-request/126011/_/xr/late-latching-urp

mikesfbay added 5 commits May 11, 2021 15:00
…w late latching command buffer commands to mark/unmark URP stereo matrices such as stereo view and projection matrices for use in late latching.
…erties. Refactored mark/unmark late latching into separate functions: Mark/UnmarkLateLatchShaderProperties.
@mikesfbay mikesfbay requested review from a team as code owners June 4, 2021 22:35
@mikesfbay mikesfbay requested a review from amaestas13 June 5, 2021 04:53
@mikesfbay mikesfbay changed the title [Universal][XR] Reducing VR latency with late latching [Universal][XR] Reducing VR latency with Late Latching Jun 5, 2021
@mikesfbay mikesfbay requested a review from thomas-zeng June 8, 2021 00:27
Copy link
Contributor

@erikabar erikabar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

XR QA is added, I am approving from URP QA side without testing

Copy link

@amaestas13 amaestas13 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested on Quest and Quest 2

Ran manual Functional/Acceptance testing . Verified Dev Provided test projects and tested for regressions.

Ran multiple passes with these changes.

Last Verification for regressions on commit a281d5b

Tested on
Version: 2021.2.0a21.2949
Revision: trunk 75138d5880a6
Built: Tue, 08 Jun 2021 14:22:40 GMT

Copy link
Contributor

@thomas-zeng thomas-zeng left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Mike for the explanation. I'm approving the PR. To QA: if possible, please test some yflip case with this PR to make sure.

@phi-lira
Copy link
Contributor

@mikesfbay which version of Unity this PR requires? Seems like we need to bump minimum Unity version.

@mikesfbay
Copy link
Contributor Author

@phi-lira The minimum version is 2021.2.0a21

@mikesfbay mikesfbay requested a review from a team as a code owner June 17, 2021 21:59
@mikesfbay
Copy link
Contributor Author

@phi-lira After min version bump, yamato results are the same as master.
yamato PR URP trunk (a21) with branch results.
yamato PR URP trunk (a21) with master results.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants