TGViewer
Game Development | YeaHub Game Development | YeaHub @yeahub_game_dev · 370 subscribers
Post #471 175
Update vs FixedUpdate — где двигать объект? + Time.deltaTime

Продолжаем разбор Update.

Вопрос с подвохом: где вызывать такой код — в Update или FixedUpdate?

private void Update()
{
transform.position += Vector3.forward * 10f;
}


Опытные разработчики уже чувствуют проблему

Если оставить код как есть и вызывать его в Update, скорость движения напрямую зависит от FPS:

• 30 FPS → объект едет медленно
• 120 FPS → объект летит быстрее

И FixedUpdate тоже не решение

Кажется логичным перенести код в FixedUpdate, но тут другая проблема: FixedUpdate вызывается реже, чем кадры
• между вызовами нет отрисовки
• визуально движение становится дёрганным

Решение — использовать Time.deltaTime

Нам нужно учитывать время между кадрами. Time.deltaTime — это количество секунд, прошедших с предыдущего кадра до текущего.

• Кадр 1 выполнился → прошло 0.008 секунд → Кадр 2 начался → Time.deltaTime = 0.008

Исправляем код:

private void Update()
{
transform.position += Vector3.forward * 10f * Time.deltaTime;
}


Теперь:
• скорость одинакова при любом FPS
• движение плавное

🤔 Тогда зачем вообще FixedUpdate?

Логичный вопрос:
если есть Time.deltaTime, зачем нужен FixedUpdate?

Коротко:

• Update — визуал и логика
• FixedUpdate — физика

Почему так:

Update вызывается между физическими тиками, он не синхронизирован с физическим движком
FixedUpdate вызывается строго перед физическим шагом

Последовательность такая:

1. FixedUpdate у всех объектов
2. Unity считает физику
• коллизии
• силы
• OnCollisionEnter, OnTriggerEnter и т.д.

Если считать физику в Update (даже с Time.deltaTime), начинаются проблемы:

• туннелирование (объект «пролетает» сквозь коллайдеры)
• нестабильное и непредсказуемое поведение

Итог

Плавное движение, позиция, визуал → Update + Time.deltaTime
Физика, Rigidbody, силы, коллизии → FixedUpdate

🚀 Пост Guru Unity: @Minerope
  • ❤ 3
  • 👍 1
More from @yeahub_game_dev
  1. Oct 8, 2026#Собес #lost #update 🤔 Что такое lost update и при каких условиях он возникает? 💬 Кратко…
  2. Oct 7, 2026#Собес #Task #ThreadPool #async 🤔 Как Task использует ThreadPool? 💬 Кратко: Task использ…
  3. Oct 5, 2026#Собес #memory_layout #data_alignment #padding 🤔 Какие есть исключения из правил хранения…
  4. Oct 2, 2026#tool #гит 📚 Хочешь изучить Git, не рискуя своей локальной установкой? Теперь можно запус…
  5. Oct 1, 2026#Собес #docker_rm #container #stop 🤔 Как удалить Docker-контейнер? 💬 Кратко: Чтобы удали…
  6. Sep 30, 2026#Собес #ContinueWith #Task #async 🤔 Что такое ContinueWith и для чего он используется? 💬…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →