Анимация не работает при использовании Vector3.Lerp в Unity3D

#c# #unity3d #game-development

Вопрос:

Я создаю игру FPS, в которой у меня есть сценарий GunController… Который имеет метод DetermineAim (), в основном функцию «область действия». У меня также есть анимация простоя. Таким образом, проблема в том, что и Цель, и анимация не работают вместе. Если я добавлю анимацию, то функция DetermineAim() перестанет работать, а если я удалю анимацию, то скрипт снова начнет работать.

PS: Я новичок в Unity. Любая помощь или предложение будут оценены по достоинству. Спасибо

Определите код:

 void DetermineAim()
{
    Vector3 target = normalLocalPosition;

    if (Input.GetMouseButton(1))
    {
        target = aimLocalPosition;
    }
    Vector3 desiredPosition = Vector3.Lerp(transform.localPosition, target, Time.deltaTime * aimSmoothing);

    transform.localPosition = desiredPosition;

}
 

Какой метод делает:
введите описание изображения здесь
Поэтому, как только вы добавите в него анимацию простоя, она перестанет работать. Любая помощь или предложения будут оценены по достоинству.

Комментарии:

1. Аниматор-это одна из последних вещей, применяемых во время кадра — > как только какое-либо состояние содержит один ключевой кадр для определенного свойства, аниматор всегда перезапишет все, что вы делаете в коде. Вы можете разделить его на два объекта (родительский и дочерний) и анимировать либо только родителя, а затем переместить ребенка с помощью кода, либо наоборот

2. Спасибо за помощь, я только что создал родительский пустой объект, применил к нему анимацию, и это сработало 🙂 Спасибо!