Хах как всегда самый простой вариант просмотрел, спасибо!)Добавлено (05 Апреля 2020, 08:43)
---------------------------------------------
Предположим у меня лодка по которой можно ходить и на ней же плавать. При выходе с лодки работает код указанный выше, а при входе на нее это не помогает. Персонж резко меняет направление когда становится дочерним. Есть ли какие то решения этой проблемы?
Добавлено (05 Апреля 2020, 09:39)
---------------------------------------------
Похоже частично можно решить проблему так:
Код
Quaternion rotation;
float y;
void Update()
{
y += Input.GetAxisRaw("Mouse X");
if (transform.parent)
{
transform.localRotation = Quaternion.Euler(0, y, 0) * rotation;
}
else
{
transform.rotation = Quaternion.Euler(0, y, 0);
}
}
void OnTriggerEnter(Collider other)
{
GameObject vr = other.gameObject;
if (transform.parent == false)
if (vr.GetComponent<OnTrigger>())
{
transform.parent = vr.transform;
rotation = Quaternion.Inverse(transform.parent.rotation);
}
}
void OnTriggerExit(Collider other)
{
GameObject vr = other.gameObject;
if (vr.GetComponent<OnTrigger>())
{
transform.parent = null;
}
}