Пятница, 29 Ноября 2024, 08:47

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
UniRx и Job system, дайте советов..
killing002Дата: Четверг, 11 Марта 2021, 15:05 | Сообщение # 1
почетный гость
Сейчас нет на сайте
Всех приветствую!
При разработке проекта возникла ситуация.. Нужно, чтобы в кадре было много нпс, например возьмем толпы зомби. Очевидно, что все это будет тормозить, и я сразу подумал о многопоточности. Много статей перечитал, часто видел такие фразы как: "юнити не потокобезопасный", "все игры на юнити тормозят" и все в этом духе. Но тем не менее я наткнулся на такие термины как UniRx и Job system. Как я понял, система заданий все же позволяет разделить код на потоки, не весь код конечно, но все же. Читая о реактивном программировании, а именно о UniRx, я так понял, что оно тоже предполагает деление на потоки. И я теряюсь в том аспекте, - что же использовать, на что способен UniRx и тд. Документацию по UniRx пока не читал, хотелось бы узнать с начало об общих положениях. Заранее спасибо за ответ.


123
drcrackДата: Четверг, 11 Марта 2021, 17:51 | Сообщение # 2
старожил
Сейчас нет на сайте
Job System нужен когда узкое место это именно твои скрипты
Нет смысла делать многопоточность просто ради многопоточности, когда ты еще не знаешь, что именно будет тормозить игру
killing002Дата: Суббота, 13 Марта 2021, 11:43 | Сообщение # 3
почетный гость
Сейчас нет на сайте
Цитата drcrack ()
Нет смысла делать многопоточность просто ради многопоточности, когда ты еще не знаешь, что именно будет тормозить игру

Это многопоточность ради оптимизации. То, что будет тормозить очевидно - > всякие рейкасты и проверки и логика нпс.

Вот, что по поводу JobSystem.. Я тут некоторые тесты проводил над игрой, игрался с профайлером и т.д. И заметил, что без моего собственного вмешательства , а именно добавления Job'ов и тд. Некоторые процессы сами распараллеливаются.


Тут можно наблюдать во вкладке Job, что уже существуют worker'ы. То есть Job System уже потихоньку внедряется в Unity. Как видно из скрина или нет, но там распараллеливаются процессы аниматоров, канвасов , в общем не очень понятно ..

Начитался документации по UniRx, в общем нужен для асинхронных действий какого либо характера. Как понял, на треды тоже можно распределить определенный код, но все это окутано пока тайной для меня.. И что интересно UniRx и Job System друг с другом не совместимы.


123

Сообщение отредактировал killing002 - Суббота, 13 Марта 2021, 11:54
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг