Алгоритм Boids в юнити. Практическое применение Job System

2020 ж. 21 Жел.
11 508 Рет қаралды

Продолжаем тему job system в юнити и в этом видео применим ее в алгоритме boids. Как симулировать движение стаи объектов.
Дискорд сервер - / discord
Первая часть - • Unity job system. Как ...
Material instancing - • Оптимизация игр на uni...
Исходный код - github.com/gaitavr/UnityJobSy...
Паблик игроделов - vk.com/special3d
Поддержка канала:
Patreon - www.patreon.com/user?u=32502669
В крипте:
BTC - 16WmTb4VTFGYrwEjjnMKNNMMzsMB1rPEqD
ETH - 0x8d35406f8317b846528d0a9ea4a34ce59968dff2
XRP - rLW9gnQo7BQhU6igk5keqYnH3TVrCxGRzm (TAG - 1438215071)
LTC- MNSWdzdVsUMnozSU5HhUPEscfxaUK3Fdck
#unity3d #jobsystem #ecs #dots #boids #ityoutubersru

Пікірлер
  • Ставь лайк, если Schedule произнес нормально в этот раз ))

    @gaitavr1992@gaitavr19923 жыл бұрын
    • не в этот раз ) но за видео лайк )

      @Dimetroc@Dimetroc3 жыл бұрын
    • Пора создавать секту свидетелей произношения))

      @gaitavr1992@gaitavr19923 жыл бұрын
    • шкедул ?)

      @Veyron104@Veyron1043 жыл бұрын
    • Есть британское и английское произношение. Американское: skeh -jool - ˈskejəl - скеджул Британское: sheh -jool - шеджул Так что вы в прошлый раз правильно произносили, а в этот намешали обеих)

      @Nightmareinfos@Nightmareinfos2 жыл бұрын
    • Да нормально, мощно

      @horrest790@horrest7902 жыл бұрын
  • Отличное и полезное видео. В резюме в графе курсы, укажу твой канал. Очень много полезной информации и хорошего кода

    @user-nm5zh2zb8c@user-nm5zh2zb8c3 жыл бұрын
  • Максим, требуем еще больше алгоритмов как Boids, это потрясающе!) Спасибо вам!

    @shyxiaolong@shyxiaolong2 жыл бұрын
  • Пример конечно довольно сложный, но общий принцип понятен. Краса!

    @Bushido_Cat@Bushido_Cat5 ай бұрын
  • Великое видео, спасибо за контент!

    @katarsis6541@katarsis65416 ай бұрын
  • Я в шоке! 10000 капсул и 40 фпс))) Ну, это конечно, ДО добавления им стайного интеллекта, но всё равно впечатляет) Спасибо за урок!

    @skarabeydm@skarabeydm3 жыл бұрын
  • 7:00 если у вас тоже нихрена не разворачиваются капсулы - на главном скрипте поменяйте Destination Threshold с нуля на другие значения.

    @user-uh5rj8gr2e@user-uh5rj8gr2e4 ай бұрын
  • В AccelerationJob делить нужно не на count, а на количество совпадений. В противном случае если отслеживаемая дальность не покрывает все элементы, они будут улетать в 0 (что нигде не оговаривалось). В уроке это не сильно заметно, т.к. коробка маленькая и с центром в нуле.

    @user-lo6wr7oi8s@user-lo6wr7oi8s3 жыл бұрын
  • Шкедыл ) Где то слышал шутку, что чем лучше английское произношение у автора, тем херовее он спец как выясняется. Поэтому у тебя все хорошо с мат частью ) Спасибо за ролик, хотя и сложновато если честно, но как упростить я даже хз. Кстати может выкладывать на гит куда нибудь дабы можно было покопатсья и понять устройство более детально?

    @AlexStraga@AlexStraga3 жыл бұрын
    • Добавил в описание, хотя, конкретно в этом случае он не очень то и нужен, ведь я показал в видео абсолютно весь код и ничего за кулисами не оставил

      @gaitavr1992@gaitavr19923 жыл бұрын
    • @@gaitavr1992 Спасибо. Но я не про то что скрыл или не показал. Иногда надо просто спокойно пару минут посмотреть, полистать и пазл в голове для себя сложить

      @AlexStraga@AlexStraga3 жыл бұрын
    • Мой препод по программированию C# называет «си шейп».

      @JackFastGame@JackFastGame2 жыл бұрын
  • А что производительнее для данного алгоритма - джобы или компьют шейдеры?

    @evggg@evgggАй бұрын
  • А в сравнении с компьют шейдерами будет видео? Как я понимаю в многопоточности выигрыш только в разветвлённом коде? А в данной ситуации можно было обойтись компьют.

    @gulyaevw@gulyaevw3 жыл бұрын
    • Сравнение может и будет, если условий нет то компьют хорошо себя показывает. В 2020 юнити можно результат из шейдера сразу в native array получить для работы в джобе

      @gaitavr1992@gaitavr19923 жыл бұрын
    • @@gaitavr1992 хотелось бы видео про компьют шейдер.

      @gulyaevw@gulyaevw3 жыл бұрын
    • Одно видео я снимал летом, про рейтрейсинг

      @gaitavr1992@gaitavr19923 жыл бұрын
  • Мелкое замечание, но я слишком нудный. Надо чуть донастроить гитигнор, разве на Райдере(верно ж?) работаешь, а не вс. А так, крутые уроки!

    @kirillsviderski4739@kirillsviderski47393 жыл бұрын
    • Гитигнор со старого проекте взял, который на vc был, все верно

      @gaitavr1992@gaitavr19923 жыл бұрын
  • Пришел за джобы разобраться, ушел гуглить как произносится schedule -_-

    @lord_vampire@lord_vampire2 жыл бұрын
  • А разве при расчёте кол-ва юнитов надо вычитать 1, ведь тогда мы не считаем последнего юнита. Оператора continue при своем индексе будет достаточно

    @romich9865@romich98653 жыл бұрын
    • Ну мы ж делим на этот count. Получается, что делимое считалось без учета одного элемента, а делитель содержит все количество. Поэтому отнимается 1.

      @gaitavr1992@gaitavr19923 жыл бұрын
    • @@gaitavr1992 А можно немного подробнее, потому-что я пока тоже считаю, что мы теряем последний элемент и делимое у нас без двух элементов. У нас вроде как Count это индекс последнего, а мы берем ещё и меньше Count, а значит последний - упускаем. Или я что-то не понимаю...

      @mypaxa003@mypaxa0032 жыл бұрын
    • @@mypaxa003 видео пока не смотрел и не знаю что у вас там за Count, но обычно Length и Count показывают кол-во обьектов, но индекс последнего [Count-1]

      @Nightmareinfos@Nightmareinfos2 жыл бұрын
    • @@Nightmareinfos Обычно, если речь о коллекциях - да. А тут я уже и сам не помню.

      @mypaxa003@mypaxa0032 жыл бұрын
    • @@mypaxa003 Да, все правильно вы подметили, автор пропускает последний элемент.

      @Nightmareinfos@Nightmareinfos2 жыл бұрын
  • Это какая то жесть, с каждым роликом я всё больше убеждаюсь, что вообще программировать не умею. Ничего не понимаю.

    @user-fd3nw3un7v@user-fd3nw3un7v3 жыл бұрын
    • Задавайте вопросы)

      @gaitavr1992@gaitavr19923 жыл бұрын
    • @@gaitavr1992 Спасибо, я теперь понимаю что я лох. Буду продолжать обучаться. Сложно понять какой у тебя уровень когда ты занимаешься разработкой один по вечерам под пивко) А сколько лет вы занимаетесь геймдевом?

      @user-fd3nw3un7v@user-fd3nw3un7v3 жыл бұрын
    • 7

      @gaitavr1992@gaitavr19923 жыл бұрын
    • @@gaitavr1992 а ну у меня тогда ещё всё впереди, я ток где то с полгода занимаюсь)

      @user-fd3nw3un7v@user-fd3nw3un7v3 жыл бұрын
    • Многопоточность непростая тема, ничего страшного, что ты ничего не понял.

      @JackFastGame@JackFastGame2 жыл бұрын
  • А можно ссылку на гит.

    @user-nm5zh2zb8c@user-nm5zh2zb8c3 жыл бұрын
    • github.com/gaitavr/UnityJobSystem.git

      @gaitavr1992@gaitavr19923 жыл бұрын
  • А почему капсулы не энтитисы?

    @DeMoZyou@DeMoZyou3 жыл бұрын
    • Не совсем понял вопрос

      @gaitavr1992@gaitavr19923 жыл бұрын
    • @@gaitavr1992 каждая капсула - это гейм обжект на сцене. И в иерархии он виден. Я просто думал, рас уж с жобами что то делать, то можно и объекты на сцене создавать как Entity. Конечно, в рамках видео по жобам, это будет лишним усложнением.

      @DeMoZyou@DeMoZyou3 жыл бұрын
    • А ну я рассматриваю только job систему без ecs на данный момент

      @gaitavr1992@gaitavr19923 жыл бұрын
    • @@gaitavr1992 до твоего видео и не подозревал, что job систему можно использовать отдельно от ECS =)

      @DeMoZyou@DeMoZyou3 жыл бұрын
    • Ну это одна из трех составляющих dots

      @gaitavr1992@gaitavr19923 жыл бұрын
KZhead