Replace UltimateXR with HurricaneVR
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using HurricaneVR.Framework.Core;
|
||||
using HurricaneVR.Framework.Core.Grabbers;
|
||||
using HurricaneVR.Framework.Core.HandPoser;
|
||||
using HurricaneVR.Framework.Shared;
|
||||
using UnityEngine;
|
||||
|
||||
namespace HurricaneVR.TechDemo.Scripts
|
||||
{
|
||||
public class DemoPoseSqueeze : MonoBehaviour
|
||||
{
|
||||
public Transform Target;
|
||||
public Vector3 ScaleTarget;
|
||||
public HVRGrabbable Grabbable;
|
||||
|
||||
private Vector3 _scale;
|
||||
|
||||
void Start()
|
||||
{
|
||||
TryGetComponent(out Grabbable);
|
||||
Grabbable.HandReleased.AddListener(OnReleased);
|
||||
_scale = Target.localScale;
|
||||
}
|
||||
|
||||
private void OnReleased(HVRHandGrabber arg0, HVRGrabbable arg1)
|
||||
{
|
||||
//clear the parameter when no longer holding the object
|
||||
HVRAnimationParameters.ClearFloatParameter(arg0.HandSide, "Squeeze");
|
||||
Target.localScale = _scale;
|
||||
}
|
||||
|
||||
|
||||
void Update()
|
||||
{
|
||||
if (Grabbable.HandGrabbers.Count > 0)
|
||||
{
|
||||
var hand = Grabbable.HandGrabbers[0];
|
||||
var value = hand.Controller.ControllerType == HVRControllerType.Knuckles ? hand.Controller.GripForce : hand.Controller.Trigger;
|
||||
|
||||
//setting the 'Squeeze' parameter that coincides with the parameter name set on the grabpoint's HVRHandPoser
|
||||
HVRAnimationParameters.SetFloatParameter(hand.HandSide, "Squeeze", value);
|
||||
Target.localScale = Vector3.Lerp(_scale, ScaleTarget, value);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user