Search Issue Tracker
Active
Fixed in 6000.0.23f1
Votes
11
Found in
2022.3.19f1
2023.2.10f1
2023.3.0b7
6000.0.0b11
6000.1.0a7
7000.0.0a1
Issue ID
UUM-63692
Regression
No
Motion Vectors bleed through any Geometry when using URP Temporal Anti-Aliasing
How to reproduce:
1. Open the “MotionVectorArtefacts.zip” project
2. Open the “SampleScene“
3. Enter the Play Mode
4. Observe the Game view
Expected results: Motion vectors do not bleed through the “Wall“ GameObject
Actual results: Motion vectors bleed through the “Wall” GameObject
Reproducible in: 2022.3.19f1, 2023.2.10f1, 2023.3.0b7
Could not test in: 2021.3.35f1 (No TAA)
Reproduced on: Windows 11 Pro (23H2)
Not reproduced on: No other environment tested
Notes:
- The reporter states, that the issue is also reproducible with third-party scripts (DLSS and FSR, both are attached to the project)
- The issue does not reproduce if the “Main Camera” is within around 30 units of the moving GameObject
- The issue is also reproducible in the Player
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Rigidbody2D.Slide API does not have the needed configuration when creating a 2D Top-Down character controller
- Opening reference for "Playables"component redirects to a missing page
- Sprite Renderer image is changed when switching Mask Interaction and changing Sprite to a shared Sprite
- An unsigned integer is not compared with an integer correctly in player when using IL2CPP backend
- Graphical artifacts are being rendered in Scenes that are loaded during run-time when GPU Resident Drawer is turned on
AlteregoGames01
Feb 27, 2024 16:20
Reports say it seems to come from object motion vectors using this Z bias and camera motion vectors not using it.
AlteregoGames01
Feb 27, 2024 16:17
BIRP, URP and HDRP all have this issue. BIRP only when Dynamic Batching is enabled, it is fixed when the motionvector depth bias is removed from the following lines:
BIRP:
o.pos.z -= _MotionVectorDepthBias * o.pos.w;
URP:
output.positionCS.Z -= unity_MotionVectorsParams.z * output.positionCS.w;
HDRP:
input.vmesh.positionCS.Z -= unity_MotionVectorsParams.z * input.vmesh.positionCS.w;
For Unity 2021 URP its also broken when using custom TAA, like FSR 3 or DLSS, so it is highly recommended to backport it to 2021 and 2022 as well.