4
4
using Microsoft . MixedReality . Toolkit . CameraSystem ;
5
5
using Microsoft . MixedReality . Toolkit . UI ;
6
6
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
7
13
using UnityEngine . XR ;
14
+ #endif // !UNITY_2020_1_OR_NEWER
8
15
9
16
namespace Microsoft . MixedReality . Toolkit . Examples . Demos . ReadingMode
10
17
{
@@ -16,12 +23,32 @@ public class ReadingModeSceneBehavior : MonoBehaviour
16
23
[ SerializeField ]
17
24
private PinchSlider renderViewportScaleSlider = null ;
18
25
26
+ private float previousSliderValue = - 1 ;
27
+ private const float MinScale = 0.001f ;
28
+
19
29
private void Update ( )
20
30
{
21
- if ( renderViewportScaleSlider != null )
31
+ if ( renderViewportScaleSlider == null || renderViewportScaleSlider . SliderValue == previousSliderValue )
32
+ {
33
+ return ;
34
+ }
35
+
36
+ previousSliderValue = renderViewportScaleSlider . SliderValue ;
37
+
38
+ #if UNITY_2019_3_OR_NEWER
39
+ if ( XRSubsystemHelpers . DisplaySubsystem != null )
40
+ {
41
+ XRSubsystemHelpers . DisplaySubsystem . scaleOfAllViewports = Mathf . Max ( renderViewportScaleSlider . SliderValue , MinScale ) ;
42
+ return ;
43
+ }
44
+ #endif // UNITY_2019_3_OR_NEWER
45
+
46
+ #if ! UNITY_2020_1_OR_NEWER
47
+ if ( XRDevice . isPresent )
22
48
{
23
- XRSettings . renderViewportScale = renderViewportScaleSlider . SliderValue ;
49
+ XRSettings . renderViewportScale = Mathf . Max ( renderViewportScaleSlider . SliderValue , MinScale ) ;
24
50
}
51
+ #endif // !UNITY_2020_1_OR_NEWER
25
52
}
26
53
27
54
public void EnableReadingMode ( )
0 commit comments