ФлеймФорумРазработка игр

как Вы дошли до Unity? (14 стр)

Страницы: 19 10 11 12 13 14
#195
20:26, 15 мая 2015

Dampire
У меня 4.5, и переползать пока не хочется, так-что, с экспериментами помочь не могу.
Так, что профайлер-то пишет?

#196
20:34, 15 мая 2015

KaZuaL
То, что в редакторе 1.2к fps. Профайлить проект как-то можно?
Unity 2015-05-15 20-35-29-32 | как Вы дошли до Unity?
Unity 2015-05-15 20-28-22-18 | как Вы дошли до Unity?

#197
20:36, 15 мая 2015

Dampire
> Но дерганая физика никуда не делась. Что делать, господа? Батла дает около 30
> на средних.

Всё довольно просто. Картинка обновляется на мониторе с одной частотой (Update), а изменение положения камеры на сцене происходит с другой частотой (FixedUpdate), потому что камера висит на Rigidbody. В результате, если частота Update > FixedUpdate, то периодически проскакивают два (несколько) кадров подряд с одинаковым положением камеры, а если Update < FixedUpdate, то между некоторыми кадрами камера окажется сдвинута сразу на два (несколько) шагов сразу. Отсюда дёрганье.

В твоём случае надо у rigidbody, к которому прикреплена камера, включить интерполяцию или экстраполяцию. Камера дёргаться перестанет. Если NPC тоже дёргается (я этого не замечаю), у его rigidbody сделать то же самое.

#198
20:37, 15 мая 2015

Dampire
> Моя сценка на домашнем ноуте выдает 220-230 кадров в 1080p. Что один хрен мало,
> но уже куда ближе к реальности. Но дерганая физика никуда не делась. Что
> делать, господа? Батла дает около 30 на средних.
> Голая сцена со стоковыми шейдерами и камерой, воткнутой в пол дает 205, лол.
> Отмечу. Видяха GT640M. На сцене нет ВООБЩЕ ничего кроме плейна и камеры,
> которую утнули в пол под углом 45 градусов. И нет, KaZuaL. vsync выключен. В
> эдиторе фпс 1.2k+. Сбилдите ради интереса у себя и запустите. Чота мне кажется
> у вас та же байда будет.
Differed shading?

#199
20:43, 15 мая 2015

Бунтарчик
Разумеется.

#200
20:45, 15 мая 2015

Dampire
> Разумеется.
А чего ты тогда хотел? :)
Differed shading по умолчанию уже нехило грузит видеокарту, даже если ничего не рисовать. У тебя там небось и эффекты какие-нибудь включены.

#201
20:46, 15 мая 2015

Народ, не занимайтесь ерундой. Профилировать проект, который выдаёт четырёхзначный fps, бессмысленно. На другом конце города птичка чихнёт ― на всех графиках сразу будет заметный всплеск.

#202
20:46, 15 мая 2015

alexzzzz
> В твоём случае надо у rigidbody, к которому прикреплена камера, включить
> интерполяцию или экстраполяцию
Спасибо, помогло. Хоть один человек знает что делать.
Бунтарчик
Ничего я не включал. Я наоборот кучу всего выключил. В моем поделии тоже deferred, фпс выше. Банально потому, что он менее наворочен технологически.

#203
20:50, 15 мая 2015

Вообще это как-то странно выбирать движок с DS и жаловаться на тормоза.

#204
21:01, 15 мая 2015

В общем раз хотя бы часть вопросов разрешилась (меня больше всего бесила дерготня), то эксперимент продолжается. Попробую выжать ту же картинку, что и у себя в движке.

#205
21:06, 15 мая 2015

Вообще, рекомендуется/принято:

1. В FixedUpdate прикладывать только силы к rigidbody.

2. Все ручные перемещения объектов (не под действием физических сил) производить в Update, включая кинематические rigidbody, включая способ rigidbody.MovePosition().

3. Камеру перемещать в LateUpdate, когда все остальные объекты уже переместились. Критично для случаев, когда камера каким-либо образом привязана скриптом к какому-либо движущемуся объекту (например, следит за ним). Тогда перемещение камеры может отставать от объекта на кадр (Update у камеры случился раньше, чем Update у этого объекта).

4. У тех rigidbody, которые после всего этого всё ещё выглядят чуть дёрганными, включать интерполяцию или экстраполяцию.

#206
22:05, 15 мая 2015

Насчёт fps, который показывается в редакторе - он не меряется, он приблизительно прикидывается. Вероятно, это попытка исключить накладные расходы самого редактора. Формула расчёта примерно такая: 1 / Max(Max(CpuTime, RenderTime), 1e-5)

У меня в редакторе расчётный fps примерно 2000, а реальная скорость обновления окошка чуть больше 100 fps. В билде реальный fps чуть больше 1000, но какой он мог бы быть на самом деле неизвестно, потому что Unity всегда принудительно его ограничивает в районе 1000. Иначе Time.deltaTime может оказаться таким маленьким, что расчёты с его использованием будут давать большие погрешности.

Зацените картинку:

+ Показать
#207
0:40, 16 мая 2015

Ееее! Я теперь круче Кармака!
Моя самостоятельно-сделанная-в-одиночку-мега-игра-на-юнити! :)))

+ Показать
#208
0:43, 16 мая 2015

Ducat
Отскоки от стенок добавь ;)

#209
2:10, 16 мая 2015

Чё-то я даже позавидовал :)

Страницы: 19 10 11 12 13 14
ФлеймФорумРазработка игр

Тема в архиве.