forked from cgvr/DeltaVR
deltavr multiplayer 2.0
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
using UnityEngine.UI;
|
||||
using UnityEngine.XR.Interaction.Toolkit;
|
||||
|
||||
namespace UnityEngine.XR.Content.Interaction
|
||||
{
|
||||
public class DistanceCalculationToggle : MonoBehaviour
|
||||
{
|
||||
[SerializeField]
|
||||
Toggle m_Toggle;
|
||||
|
||||
[SerializeField]
|
||||
XRBaseInteractable[] m_Interactables;
|
||||
|
||||
void Start()
|
||||
{
|
||||
if (m_Toggle == null)
|
||||
return;
|
||||
|
||||
OnToggleValueChanged(m_Toggle.isOn);
|
||||
m_Toggle.onValueChanged.AddListener(OnToggleValueChanged);
|
||||
}
|
||||
|
||||
void OnToggleValueChanged(bool value)
|
||||
{
|
||||
var distanceCalculationMode = value
|
||||
? XRBaseInteractable.DistanceCalculationMode.ColliderVolume
|
||||
: XRBaseInteractable.DistanceCalculationMode.ColliderPosition;
|
||||
|
||||
foreach (var interactable in m_Interactables)
|
||||
{
|
||||
if (interactable != null)
|
||||
interactable.distanceCalculationMode = distanceCalculationMode;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user