Перемещение за время в Unity

<?the_title()?>

Очень частый вопрос, который я встречал на форумах — «Как переместить объект в Unity за время?»
Без какого-либо твинера, это можно сделать рассчитывая дельту для интерполяции по времени.
Например, вот так:

Скрипт перемещает объект в центр контейнера за 3 секунды. Легко можно адаптировать его, чтобы поворачивать за время, перемещать объект за время в 3d, и т.д.

Понравилась статья? Поделиться с друзьями:
Автор snezhok_13
Пишет статьи о разработке игр. Не инди, — работает рендеринг-программистом в крупной ААА студии в Санкт-Петербурге. Большой поклонник игр Naughty Dog.

6 комментариев на «Перемещение за время в Unity»

  1. Sasha Domase:

    А не проще yield return new WaitForSecond ?

  2. иван иванов:

    если в Update написать это:
    rectTransform.anchoredPosition = Vector2.Lerp(startPosition, targetPosition, delta/3);
    разве это не даст такой же результат?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *