shenjianxing 6b341ae2b4 适配VR
2025-04-01 16:16:45 +08:00

72 lines
2.3 KiB
C#

////////////////////////////////////////////////////////////////////////////////
//
// Copyright (C) 2007-2020 , Inc. All Rights Reserved.
//
////////////////////////////////////////////////////////////////////////////////
using UnityEngine;
using UnityEngine.EventSystems;
using GCSeries.Core.Sdk;
namespace GCSeries.Core.Samples
{
public class StylusLEDFeedback : MonoBehaviour,
IPointerEnterHandler, IPointerExitHandler
{
////////////////////////////////////////////////////////////////////////
// Inspector Fields
////////////////////////////////////////////////////////////////////////
public Color HoverColor;
////////////////////////////////////////////////////////////////////////
// MonoBehaviour Callbacks
////////////////////////////////////////////////////////////////////////
private void Start()
{
if (ZProvider.IsInitialized)
{
this._stylusTarget = ZProvider.StylusTarget;
if (ZProvider.CurrentDisplay.Size !=
ZDisplay.GetSize(ZDisplay.Profile.Size24InchAspect16x9))
{
Debug.LogWarning("AIO model hardware not detected.\n " +
"Stylus vibration and LED light feedback will not " +
"be experienced.");
}
}
else
{
Debug.LogWarning("ZProvider can not initialize.\n Stylus" +
"LED light feedback will not be experienced.");
Destroy(this);
}
}
////////////////////////////////////////////////////////////////////////
// Public Methods
////////////////////////////////////////////////////////////////////////
public void OnPointerEnter(PointerEventData eventData)
{
this._stylusTarget.IsLedEnabled = true;
this._stylusTarget.LedColor = HoverColor;
}
public void OnPointerExit(PointerEventData eventData)
{
this._stylusTarget.IsLedEnabled = false;
}
////////////////////////////////////////////////////////////////////////
// Private Members
////////////////////////////////////////////////////////////////////////
private ZTarget _stylusTarget;
}
}