VRTK3.3.0 代码控制显示隐藏,UI射线 在右手控制器上,添加脚本
调整VRTK_Pointer设置,如下
添加重写VRTK_UIPointer脚本
using VRTK;
public class MyUIPointer : VRTK_UIPointer
{
public bool myHead;
public bool showState ;
public override bool PointerActive()
{
if (myHead)
{
return showState;
}
else
{
return base.PointerActive();
}
}
}
4丶创建脚本,用来控制UI射线的状态
using UnityEngine;
using VRTK;
public class MyVRController : MonoBehaviour
{
[Header("与UI交互的VRTK_Pointer")]
public VRTK_Pointer vRTK_Pointer;
[Header("自己重写的UIPointer")]
public MyUIPointer myUIPointer;
public void ActiveState(bool isActive)
{
if (isActive)
{
vRTK_Pointer.Toggle(true);
vRTK_Pointer.Toggle(true);
myUIPointer.showState = true;
}
else
{
vRTK_Pointer.Toggle(false);
myUIPointer.showState = false;
}
}
private void OnEnable()
{
if (myUIPointer.myHead)
{
ActiveState(myUIPointer.showState);
}
}
}
挂在脚本 原文:https://www.cnblogs.com/myunity/p/11283055.html
|