Search Issue Tracker
By Design
Votes
0
Found in [Package]
13.1.0
Issue ID
1370549
Regression
No
[HDRP] Upscale functionality doesn't work as intended when Dynamic Resolution Type is set to Hardware or Software
How to repro:
1. Open the attached "case_1370549" project
2. Open the "OutdoorsScene" Scene
3. Enter the Play Mode
4. Click "Ctrl" / "Alt" ("Control" / "Option" on MacOS, accordingly) keyboard keys to upscale / downscale the Game view, accordingly
5. Set the "Rendering -> Dynamic resolution -> Upscale Filter" to any other in the "HD RP Asset"
6. Observe the Game view
Expected result: The quality of the upscaled object is different regarding which Upscale Filter is chosen
Actual result: The quality of the upscaled object is poor, the Upscale Filter doesn't affect it
Reproducible with: 10.7.0 (2020.3.22f1), 11.0.0 (2021.1.28f1), 12.1.0 (2021.2.2f1), 13.1.0 (2022.1.0a14)
Couldn't test with: 7.7.1 (2019.4.32f1) (downgrading errors)
Note: When "Dynamic Resolution Type" in the "HD RP Asset" is set to:
- "Software": upscaling is ignored
- "Hardware": the quality is poor
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
- Metal Vertex Shader warning is being thrown when creating a VR Template Project
- Asset database warning is thrown when declaring font variable in the USS text file
- Memory Leak warnings are thrown when opening an imported Prefab
- Crash on mono_push_other_roots when setting Normal Thread Affinity
- Editor exits Play mode when another project is being created using Unity Hub 3.8.0-beta.1
Resolution Note:
The reason why scaling does not work on this project is because it is using the wrong API.
In HDRP do not use the ScalableBufferManager API directly. Instead use the UnityEngine.Rendering.DynamicResolutionHandler API to control resolution scale.
https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@12.1/manual/Dynamic-Resolution.html
This is mentioned in the already "Render Pipeline Compatiblity" section where this example code was taken.
https://docs.unity3d.com/Manual/DynamicResolution.html
If qa thinks that we need a pass in the documentation, I advise sending this ticket to the documentation team perhaps to do a quick cleanup of this section so its more clear.
After adding these modifications to the project attached, to the script "DynamicResoltionTests", I got the expected results.
Also ensure to test from the latest HDRP package (regarding the other bugs found). THere has been tons of fixes in the last few months around DRS. Just to name a few:
https://github.com/Unity-Technologies/Graphics/pull/6492
https://github.com/Unity-Technologies/Graphics/pull/5902
https://github.com/Unity-Technologies/Graphics/pull/5660
https://github.com/Unity-Technologies/Graphics/pull/6292
https://github.com/Unity-Technologies/Graphics/pull/6136
https://github.com/Unity-Technologies/Graphics/pull/5948
https://github.com/Unity-Technologies/Graphics/pull/5675
https://github.com/Unity-Technologies/Graphics/pull/5373
https://github.com/Unity-Technologies/Graphics/pull/5329
https://github.com/Unity-Technologies/Graphics/pull/5320