Skip to content

[Backport 7.x.x] Fixed a null ref exception in static sky when the default volume profile is invalid. #303

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
May 6, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions com.unity.render-pipelines.high-definition/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
- Fixed depth prepass and postpass being disabled after changing the shader in the material UI.
- Fixed a performance issue with stochastic ray traced area shadows.
- Made more explicit the warning about raytracing and asynchronous compute. Also fixed the condition in which it appears.
- Fixed a null ref exception in static sky when the default volume profile is invalid.

### Changed
- Rejecting history for ray traced reflections based on a threshold evaluated on the neighborhood of the sampled history.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,9 @@ void UpdateCurrentStaticLightingSky()
var profileSkyParameters = m_SkySettingsFromProfile.parameters;

var defaultVolume = HDRenderPipeline.GetOrCreateDefaultVolume();
defaultVolume.sharedProfile.TryGet(skyType, out SkySettings defaultSky);
SkySettings defaultSky = null;
if (defaultVolume.sharedProfile != null) // This can happen with old projects.
defaultVolume.sharedProfile.TryGet(skyType, out defaultSky);
var defaultSkyParameters = defaultSky != null ? defaultSky.parameters : null; // Can be null if the profile does not contain the component.

// Seems to inexplicably happen sometimes on domain reload.
Expand Down