Как при извлечении дочернего объекта не изменять глобальную позицию?
У меня есть следующий код, который при уходе объекта из триггера, извлекает этот объект из родителя:
private void OnTriggerExit(Collider other)
{
transform.parent = null;
}
Но при выполнении данного кода объект изменяет свою глобальную позицию. Как это можно исправить?
Ответы (1 шт):
Автор решения: FiolDoll
→ Ссылка
Если я правильно понял ваш вопрос - можно сделать сохранение позиции в OnTriggerEnter, а в OnTriggerExit после "извлечения" дочернего объекта ставить сохранённую позицию
private Vector3 originalPosition;
private void OnTriggerEnter(Collider other)
{
originalPosition = transform.position;
// ...
}
private void OnTriggerExit(Collider other)
{
transform.parent = null;
transform.position = originalPosition;
}