я создаю проект vr У меня есть простой куб в сцене с коллайдером ящика с проверенным триггером на нем, теперь я хочу, чтобы, когда моя рука vr входила в триггер этого куба, захватывать анимацию моего vrрука должна играть, но когда я ввожу свою руку в триггер куба, то ничего не происходит, поэтому для целей тестирования я отлаживаю сообщение, которое определяет, обнаруживает ли оно руку или нет, хорошо, когда она входит в мою руку и когда она уходит, но анимацияздесь не воспроизводится мой код
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
публичный класс VRHandsController: MonoBehaviour {
public VRTK.VRTK_ControllerEvents vrcontroller;
public VRTK.VRTK_InteractGrab vrtkgrab;
Animator anim;
// Start is called before the first frame update
void Start()
{
anim = GetComponent<Animator>();
//
anim.SetBool("indicate", false);
anim.SetBool("grab", false);
anim.SetBool("idle", true);
//anim.SetBool("isGrabbing", false);
}
// Update is called once per frame
void Update()
{
if (vrcontroller.touchpadPressed)
{
anim.SetBool("indicate", true);
anim.SetBool("grab", false);
anim.SetBool("idle", false);
//anim.SetBool("isGrabbing", true);
}
else if (vrtkgrab.IsGrabButtonPressed())
{
anim.SetBool("indicate", false);
anim.SetBool("grab", true);
anim.SetBool("idle", false);
}
else if (vrcontroller.triggerClicked)
{
anim.SetBool("indicate", true);
anim.SetBool("grab", false);
anim.SetBool("idle", false);
}
else
{
anim.SetBool("indicate", false);
anim.SetBool("grab", false);
anim.SetBool("idle", true);
//a///nim.SetBool("isGrabbing", false);
}
}
private void OnTriggerEnter(Collider other)
{
if(other.gameObject.tag == "object")
{
anim.SetBool("indicate", false);
anim.SetBool("grab", true);
anim.SetBool("idle", false);
Debug.Log("colliding>>>>>");
}
}
private void OnTriggerStay(Collider other)
{
if (other.gameObject.tag == "object")
{
anim.SetBool("indicate", false);
anim.SetBool("grab", true);
anim.SetBool("idle", false);
Debug.Log("colliding>>>>>");
}
}
private void OnTriggerExit(Collider other)
{
if (other.gameObject.tag == "object")
{
anim.SetBool("indicate", false);
anim.SetBool("grab", false);
anim.SetBool("idle", true);
Debug.Log("leaving trigger");
}
}
}