You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

75 lines
2.4 KiB
C#

//======= Copyright (c) Valve Corporation, All rights reserved. ===============
using UnityEngine;
using System.Collections;
using Valve.VR.InteractionSystem;
namespace Valve.VR.InteractionSystem.Sample
{
public class SkeletonUIOptions : MonoBehaviour
{
public void AnimateHandWithController()
{
for (int handIndex = 0; handIndex < Player.instance.hands.Length; handIndex++)
{
Hand hand = Player.instance.hands[handIndex];
if (hand != null)
{
hand.SetSkeletonRangeOfMotion(Valve.VR.EVRSkeletalMotionRange.WithController);
}
}
}
public void AnimateHandWithoutController()
{
for (int handIndex = 0; handIndex < Player.instance.hands.Length; handIndex++)
{
Hand hand = Player.instance.hands[handIndex];
if (hand != null)
{
hand.SetSkeletonRangeOfMotion(Valve.VR.EVRSkeletalMotionRange.WithoutController);
}
}
}
public void ShowController()
{
for (int handIndex = 0; handIndex < Player.instance.hands.Length; handIndex++)
{
Hand hand = Player.instance.hands[handIndex];
if (hand != null)
{
hand.ShowController(true);
}
}
}
public void SetRenderModel(RenderModelChangerUI prefabs)
{
for (int handIndex = 0; handIndex < Player.instance.hands.Length; handIndex++)
{
Hand hand = Player.instance.hands[handIndex];
if (hand != null)
{
if (hand.handType == SteamVR_Input_Sources.RightHand)
hand.SetRenderModel(prefabs.rightPrefab);
if (hand.handType == SteamVR_Input_Sources.LeftHand)
hand.SetRenderModel(prefabs.leftPrefab);
}
}
}
public void HideController()
{
for (int handIndex = 0; handIndex < Player.instance.hands.Length; handIndex++)
{
Hand hand = Player.instance.hands[handIndex];
if (hand != null)
{
hand.HideController(true);
}
}
}
}
}