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
- Palette Settings link to the documentation isn’t working
- Tags & Layers window has inconsistent remove button behaviour between Tags, Sorting Layers, and Rendering Layers when there are no removable items in the list
- "Type Options" and "Node Library" dropdowns do not open when clicked on the title
- Public char variables uneditable in Inspector when project setting "Use IMGUI Default Inspector" is enabled
- IAP Listener component’s list titles go out of bounds when resizing the Inspector window horizontally
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