@@ -153,21 +153,32 @@ protected override void OnEnable()
153
153
using ( var c = new EditorGUI . ChangeCheckScope ( ) )
154
154
{
155
155
// Reconciling old Experience Scale property with the Experience Settings Profile
156
- var oldExperienceSettigsScale = ( experienceSettingsProfile . objectReferenceValue as MixedRealityExperienceSettingsProfile ) ? . TargetExperienceScale ;
156
+ ExperienceScale ? oldExperienceSettingsScale = null ;
157
+ if ( experienceSettingsProfile . objectReferenceValue is MixedRealityExperienceSettingsProfile oldExperienceSettingsProfile
158
+ && oldExperienceSettingsProfile != null )
159
+ {
160
+ oldExperienceSettingsScale = oldExperienceSettingsProfile . TargetExperienceScale ;
161
+ }
157
162
158
163
changed |= RenderProfile ( experienceSettingsProfile , typeof ( MixedRealityExperienceSettingsProfile ) , true , false , null , true ) ;
159
164
160
165
// Experience configuration
161
- if ( ! mrtkConfigProfile . ExperienceSettingsProfile . IsNull ( ) )
162
- {
166
+ if ( mrtkConfigProfile . ExperienceSettingsProfile != null )
167
+ {
163
168
// If the Experience Scale property changed, make sure we also alter the configuration profile's target experience scale property for compatibility
164
- var newExperienceSettigs = ( experienceSettingsProfile . objectReferenceValue as MixedRealityExperienceSettingsProfile ) ? . TargetExperienceScale ;
165
- if ( oldExperienceSettigsScale . HasValue && newExperienceSettigs . HasValue && oldExperienceSettigsScale != newExperienceSettigs )
169
+ ExperienceScale ? newExperienceSettingsScale = null ;
170
+ if ( experienceSettingsProfile . objectReferenceValue is MixedRealityExperienceSettingsProfile newExperienceSettingsProfile
171
+ && newExperienceSettingsProfile != null )
172
+ {
173
+ newExperienceSettingsScale = newExperienceSettingsProfile . TargetExperienceScale ;
174
+ }
175
+
176
+ if ( oldExperienceSettingsScale . HasValue && newExperienceSettingsScale . HasValue && oldExperienceSettingsScale != newExperienceSettingsScale )
166
177
{
167
- experienceScaleMigration . intValue = ( int ) newExperienceSettigs ;
178
+ experienceScaleMigration . intValue = ( int ) newExperienceSettingsScale ;
168
179
experienceScaleMigration . serializedObject . ApplyModifiedProperties ( ) ;
169
180
}
170
- // If we have not changed the Experience Settings profile and it's value is out of sync with the top level configuration profile, display a migration prompt
181
+ // If we have not changed the Experience Settings profile and its value is out of sync with the top level configuration profile, display a migration prompt
171
182
else if ( ( ExperienceScale ) experienceScaleMigration . intValue != mrtkConfigProfile . ExperienceSettingsProfile . TargetExperienceScale )
172
183
{
173
184
Color errorColor = Color . Lerp ( Color . white , Color . red , 0.5f ) ;
0 commit comments