Skip to content

Commit e440ec6

Browse files
committed
Only update renderViewPortScale if an XR device is present
1 parent 8348d2e commit e440ec6

File tree

1 file changed

+27
-1
lines changed

1 file changed

+27
-1
lines changed

Assets/MRTK/Examples/Demos/ReadingMode/Scripts/ReadingModeSceneBehavior.cs

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,14 @@
44
using Microsoft.MixedReality.Toolkit.CameraSystem;
55
using Microsoft.MixedReality.Toolkit.UI;
66
using UnityEngine;
7+
8+
#if UNITY_2019_3_OR_NEWER
9+
using Microsoft.MixedReality.Toolkit.Utilities;
10+
#endif // UNITY_2019_3_OR_NEWER
11+
12+
#if !UNITY_2020_1_OR_NEWER
713
using UnityEngine.XR;
14+
#endif // !UNITY_2020_1_OR_NEWER
815

916
namespace Microsoft.MixedReality.Toolkit.Examples.Demos.ReadingMode
1017
{
@@ -16,12 +23,31 @@ public class ReadingModeSceneBehavior : MonoBehaviour
1623
[SerializeField]
1724
private PinchSlider renderViewportScaleSlider = null;
1825

26+
private float previousSliderValue = -1;
27+
1928
private void Update()
2029
{
21-
if (renderViewportScaleSlider != null)
30+
if (renderViewportScaleSlider == null || renderViewportScaleSlider.SliderValue == previousSliderValue)
31+
{
32+
return;
33+
}
34+
35+
previousSliderValue = renderViewportScaleSlider.SliderValue;
36+
37+
#if UNITY_2019_3_OR_NEWER
38+
if (XRSubsystemHelpers.DisplaySubsystem != null)
39+
{
40+
XRSubsystemHelpers.DisplaySubsystem.scaleOfAllViewports = renderViewportScaleSlider.SliderValue;
41+
return;
42+
}
43+
#endif // UNITY_2019_3_OR_NEWER
44+
45+
#if !UNITY_2020_1_OR_NEWER
46+
if (XRDevice.isPresent)
2247
{
2348
XRSettings.renderViewportScale = renderViewportScaleSlider.SliderValue;
2449
}
50+
#endif // !UNITY_2020_1_OR_NEWER
2551
}
2652

2753
public void EnableReadingMode()

0 commit comments

Comments
 (0)