Search Issue Tracker
Fixed
Votes
0
Found in
2021.2.14f1
2021.3
2022.1
2022.2
Issue ID
1419427
Regression
No
[HDRP] Visual Environment Background clouds setting doesn't change when changing via script
How to reproduce:
1. Open the user's attached "BrokenCloudTypeOverride" project
2. Enter the Play Mode in the "OutdoorsScene" Scene
3. Press the "2" key button on the keyboard to change the Visual Environment Background clouds to "Cloud Layer"
Expected result: Background clouds type changes to "Cloud Layer" and clouds become visible in the Scene
Actual result: Background cloud type changes, but visually nothing does
Reproducible with: 12.1.6 (2021.3.1f1), 13.1.8 (2022.1.0f1), 14.0.2 (2022.2.0a11)
Couldn't test with: 7.7.1 (2019.4.38f1), 10.8.1 (2020.3.33f1) (the project isn't compatible)
Note: When the Background clouds type is changed in the Inspector, the problem doesn't occur. However, if the type was changed via script, then the issue will reproduce even changing via Inspector afterward
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
- Unity CIL Linker fails on Player build when persistent listeners have "<" and ">" in their XML attribute names
- ”Lighting data asset ‘LightingData’ is incompatible with the current Unity version…” warnings are thrown when saving Indoors (URP) and Outdoors (URP) Scenes as Scene Templates
- [iOS] The screen blinks when transitioning from custom to Unity splash screen
- [macOS] ”Ignoring depth surface load action as it is memoryless” warnings are thrown when taking Game View Snapshot
- UI Builder Inspector scrolls back up when changes on an expanded but not fully displayed Inspector tab are saved
Resolution Note:
The volume system in script doesn't work that way. You have to edit the parameter instead of creating a new instance.
Try changing the code in ChangeCloudType.cs to:
if (Input.GetKey(KeyCode.Alpha1))
{
visualEnv.cloudType.value = 0;
}
if (Input.GetKey(KeyCode.Alpha2))
{
visualEnv.cloudType.value = (int)CloudType.CloudLayer;
}
You can find documentation on how to edit volumes at runtime here https://docs.unity3d.com/Packages/com.unity.render-pipelines.high-definition@13.1/manual/Volumes-API.html