Unity/유니티VR
[유니티 VR] 컨트롤러 인터렉션
도이(doi)
2021. 10. 5. 17:57
728x90
컨트롤러 Haptic 기능 넣기
XR controller 스크립트를 보게 되면 아래와 같은 함수가 보인다.
public override bool SendHapticImpulse(float amplitude, float duration)
{
if (inputDevice.TryGetHapticCapabilities(out var capabilities) &&
capabilities.supportsImpulse)
{
return inputDevice.SendHapticImpulse(0u, amplitude, duration);
}
return false;
}
이 함수를 호출하게 되면 컨트롤러에 Haptic이 발생한다.
호출하는 코드는 아래와 같다. 파라미터 값이 현재는 0.7f, 2f로 설정 되어 있는데 앞에 숫자는 진동의 진폭을 설정한다. 즉, 진동의 강도를 설정할 수 있고 뒤에 있는 값은 진동의 지속시간을 정할 수 있다.
private XRController xr;
void Start()
{
xr = (XRController) GameObject.FindObjectOfType(typeof(XRController));
}
void ActivateHaptic()
{
xr.SendHapticImpulse(0.7f, 2f);
}
UI 컨트롤러 인터렉션
https://www.youtube.com/watch?v=BZt74PVb7sM
728x90
반응형