Timescale объекты дёргаются

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

Timescale объекты дёргаются

Сообщение Splurgeola 07 янв 2019, 13:55

День добрый. Столкнулся с следующей проблемой.
Объект двигаю в FixedUpdate
Синтаксис:
Используется csharp
SphereRigidbody.MovePosition(transform.position + transform.right * Speed);


после изменения Time.timeScale ниже 1 появляются дёргания объекта. Как можно решить вопрос? Всё что гуглил не помогло
При этом анимации идут плавно, без рывков
Splurgeola
UNец
 
Сообщения: 44
Зарегистрирован: 24 янв 2016, 08:53
Откуда: Кемерово
Skype: sab0tag31
  • Сайт

Re: Timescale объекты дёргаются

Сообщение 1max1 07 янв 2019, 14:05

Update используй вместо FixedUpdate, ну и домножай скорость на таймскейл.
Аватара пользователя
1max1
Адепт
 
Сообщения: 1817
Зарегистрирован: 28 июн 2017, 10:51

Re: Timescale объекты дёргаются

Сообщение Splurgeola 07 янв 2019, 14:16

1max1 писал(а):Update используй вместо FixedUpdate, ну и домножай скорость на таймскейл.


Использовал раньше update но была делема другая, у меня много где на объект используется Addforce, и он постоянно отлетал в разные места в зависимости от колличества fps по всей видимости. перенёс в fixedupdate и вопрос решился.
Сейчас попробовал вернуть в update но рывки остались
Splurgeola
UNец
 
Сообщения: 44
Зарегистрирован: 24 янв 2016, 08:53
Откуда: Кемерово
Skype: sab0tag31
  • Сайт

Re: Timescale объекты дёргаются

Сообщение 1max1 07 янв 2019, 14:41

и он постоянно отлетал в разные места в зависимости от колличества fps

Нужно домножать силу на Time.deltaTime.
Аватара пользователя
1max1
Адепт
 
Сообщения: 1817
Зарегистрирован: 28 июн 2017, 10:51

Re: Timescale объекты дёргаются

Сообщение Splurgeola 08 янв 2019, 05:56

1max1 писал(а):
и он постоянно отлетал в разные места в зависимости от колличества fps

Нужно домножать силу на Time.deltaTime.

да в курсе, так и было
Splurgeola
UNец
 
Сообщения: 44
Зарегистрирован: 24 янв 2016, 08:53
Откуда: Кемерово
Skype: sab0tag31
  • Сайт

Re: Timescale объекты дёргаются

Сообщение Splurgeola 08 янв 2019, 13:19

Создал новый проект.
timescale 0.2
двигаю объект как угодно , хоть через transform.translate - дёргается :( это фишка юнити теперь? Думал уже что проблема в компьютере, перекинул на другой - так-же дёргается :-\
Splurgeola
UNец
 
Сообщения: 44
Зарегистрирован: 24 янв 2016, 08:53
Откуда: Кемерово
Skype: sab0tag31
  • Сайт

Re: Timescale объекты дёргаются

Сообщение 1max1 08 янв 2019, 13:44

Наверное юнити паленое попалось.

Аватара пользователя
1max1
Адепт
 
Сообщения: 1817
Зарегистрирован: 28 июн 2017, 10:51

Re: Timescale объекты дёргаются

Сообщение Splurgeola 09 янв 2019, 14:39

Спасибо за видео.
Вопрос по физике в замедленном времени:

Синтаксис:
Используется csharp
в fixedupdate:
playerRb.MovePosition(transform.position + transform.right * Speed * Time.timeScale * Time.fixedDeltaTime);


Синтаксис:
Используется csharp
 
Time.timeScale = 0.2f;
Time.fixedDeltaTime = 0.02f * Time.timeScale;

к примеру в движении меняю направление гравитации вместо -9.8 на 9.8
При timescale 1 объект обрабатывает физику адекватно, при timescale 0.2 объект просто падает вниз, похоже на то что физика просто не обрабатывается полностью. Подскажите где я не могу сообразить?
Splurgeola
UNец
 
Сообщения: 44
Зарегистрирован: 24 янв 2016, 08:53
Откуда: Кемерово
Skype: sab0tag31
  • Сайт

Re: Timescale объекты дёргаются

Сообщение Tolking 09 янв 2019, 15:00

https://docs.unity3d.com/ScriptReference/Rigidbody.MovePosition.html

void FixedUpdate ()
{
rb.MovePosition (transform.position + transform.forward * Time.deltaTime );
}
Ковчег построил любитель, профессионалы построили Титаник.
Аватара пользователя
Tolking
Адепт
 
Сообщения: 2158
Зарегистрирован: 08 июн 2009, 18:22
Откуда: Тула

Re: Timescale объекты дёргаются

Сообщение 1max1 09 янв 2019, 15:23

Мне кажется Time.deltaTime и Time.fixedDeltaTime в методе FixedUpdate буду выдавать одно и то же значение.
Аватара пользователя
1max1
Адепт
 
Сообщения: 1817
Зарегистрирован: 28 июн 2017, 10:51

Re: Timescale объекты дёргаются

Сообщение Jarico 09 янв 2019, 15:37

1max1 писал(а):Мне кажется Time.deltaTime и Time.fixedDeltaTime в методе FixedUpdate буду выдавать одно и то же значение.


С чего вдруг? Time.FixedDeltaTime - постоянное значение для физики а Time.deltaTime зависит от частоты рисования фреймов (FPS)

Time.fixedDeltaTime = значению в Time->Fixed Timestep

А ответ на эту тему прост... Приравняй Time.fixedDeltaTime к частоте кадров к примеру 1/60 = 0.016 (60 раз физика будет симулироваться за секунду что равно количеству кадров) Но не приравнивай к Time.deltaTime т.к. еще раз повторюсь значение зависит от FPS
Jarico
UNец
 
Сообщения: 11
Зарегистрирован: 06 янв 2019, 17:37

Re: Timescale объекты дёргаются

Сообщение 1max1 09 янв 2019, 16:36

С чего вдруг?

Фокус-покус...
Аватара пользователя
1max1
Адепт
 
Сообщения: 1817
Зарегистрирован: 28 июн 2017, 10:51

Re: Timescale объекты дёргаются

Сообщение Jarico 09 янв 2019, 18:13

1max1 писал(а):
С чего вдруг?

Фокус-покус...


И что дальше? Показываешь видео где научился выводить значения в логи? Ура! Для тебя даже дату в календаре выделим и будем праздновать
Jarico
UNец
 
Сообщения: 11
Зарегистрирован: 06 янв 2019, 17:37

Re: Timescale объекты дёргаются

Сообщение 1max1 09 янв 2019, 18:45

Я просто показал что я прав, вот и всё, не нервничай)
Аватара пользователя
1max1
Адепт
 
Сообщения: 1817
Зарегистрирован: 28 июн 2017, 10:51

Re: Timescale объекты дёргаются

Сообщение Tolking 09 янв 2019, 19:05

таймскейл измени для чистоты эксперемента.
Ковчег построил любитель, профессионалы построили Титаник.
Аватара пользователя
Tolking
Адепт
 
Сообщения: 2158
Зарегистрирован: 08 июн 2009, 18:22
Откуда: Тула

След.

Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: falcoware, Google [Bot], Yandex [Bot] и гости: 20