Есть британское и английское произношение. Американское: skeh -jool - ˈskejəl - скеджул Британское: sheh -jool - шеджул Так что вы в прошлый раз правильно произносили, а в этот намешали обеих)
В AccelerationJob делить нужно не на count, а на количество совпадений. В противном случае если отслеживаемая дальность не покрывает все элементы, они будут улетать в 0 (что нигде не оговаривалось). В уроке это не сильно заметно, т.к. коробка маленькая и с центром в нуле.
И это не единственная ошибка в этом коде. Слагаемое averageSpread рассчитывается неверно, оно должно зависеть от дистанции обратно пропорционально. Плюс можно избежать вычисления квадратного корня.
Шкедыл ) Где то слышал шутку, что чем лучше английское произношение у автора, тем херовее он спец как выясняется. Поэтому у тебя все хорошо с мат частью ) Спасибо за ролик, хотя и сложновато если честно, но как упростить я даже хз. Кстати может выкладывать на гит куда нибудь дабы можно было покопатсья и понять устройство более детально?
@@gaitavr1992 Спасибо. Но я не про то что скрыл или не показал. Иногда надо просто спокойно пару минут посмотреть, полистать и пазл в голове для себя сложить
@@gaitavr1992 А можно немного подробнее, потому-что я пока тоже считаю, что мы теряем последний элемент и делимое у нас без двух элементов. У нас вроде как Count это индекс последнего, а мы берем ещё и меньше Count, а значит последний - упускаем. Или я что-то не понимаю...
@@mypaxa003 видео пока не смотрел и не знаю что у вас там за Count, но обычно Length и Count показывают кол-во обьектов, но индекс последнего [Count-1]
А в сравнении с компьют шейдерами будет видео? Как я понимаю в многопоточности выигрыш только в разветвлённом коде? А в данной ситуации можно было обойтись компьют.
Сравнение может и будет, если условий нет то компьют хорошо себя показывает. В 2020 юнити можно результат из шейдера сразу в native array получить для работы в джобе
@@gaitavr1992 каждая капсула - это гейм обжект на сцене. И в иерархии он виден. Я просто думал, рас уж с жобами что то делать, то можно и объекты на сцене создавать как Entity. Конечно, в рамках видео по жобам, это будет лишним усложнением.
@@gaitavr1992 Спасибо, я теперь понимаю что я лох. Буду продолжать обучаться. Сложно понять какой у тебя уровень когда ты занимаешься разработкой один по вечерам под пивко) А сколько лет вы занимаетесь геймдевом?
Ставь лайк, если Schedule произнес нормально в этот раз ))
не в этот раз ) но за видео лайк )
Пора создавать секту свидетелей произношения))
шкедул ?)
Есть британское и английское произношение.
Американское: skeh
-jool - ˈskejəl - скеджул
Британское: sheh
-jool - шеджул
Так что вы в прошлый раз правильно произносили, а в этот намешали обеих)
Да нормально, мощно
Пример конечно довольно сложный, но общий принцип понятен. Краса!
Отличное и полезное видео. В резюме в графе курсы, укажу твой канал. Очень много полезной информации и хорошего кода
Великое видео, спасибо за контент!
Максим, требуем еще больше алгоритмов как Boids, это потрясающе!) Спасибо вам!
Я в шоке! 10000 капсул и 40 фпс)))
Ну, это конечно, ДО добавления им стайного интеллекта, но всё равно впечатляет)
Спасибо за урок!
А что производительнее для данного алгоритма - джобы или компьют шейдеры?
7:00 если у вас тоже нихрена не разворачиваются капсулы - на главном скрипте поменяйте Destination Threshold с нуля на другие значения.
В AccelerationJob делить нужно не на count, а на количество совпадений. В противном случае если отслеживаемая дальность не покрывает все элементы, они будут улетать в 0 (что нигде не оговаривалось). В уроке это не сильно заметно, т.к. коробка маленькая и с центром в нуле.
И это не единственная ошибка в этом коде.
Слагаемое averageSpread рассчитывается неверно, оно должно зависеть от дистанции обратно пропорционально.
Плюс можно избежать вычисления квадратного корня.
Шкедыл ) Где то слышал шутку, что чем лучше английское произношение у автора, тем херовее он спец как выясняется. Поэтому у тебя все хорошо с мат частью )
Спасибо за ролик, хотя и сложновато если честно, но как упростить я даже хз. Кстати может выкладывать на гит куда нибудь дабы можно было покопатсья и понять устройство более детально?
Добавил в описание, хотя, конкретно в этом случае он не очень то и нужен, ведь я показал в видео абсолютно весь код и ничего за кулисами не оставил
@@gaitavr1992 Спасибо. Но я не про то что скрыл или не показал. Иногда надо просто спокойно пару минут посмотреть, полистать и пазл в голове для себя сложить
Мой препод по программированию C# называет «си шейп».
Пришел за джобы разобраться, ушел гуглить как произносится schedule -_-
А разве при расчёте кол-ва юнитов надо вычитать 1, ведь тогда мы не считаем последнего юнита. Оператора continue при своем индексе будет достаточно
Ну мы ж делим на этот count. Получается, что делимое считалось без учета одного элемента, а делитель содержит все количество. Поэтому отнимается 1.
@@gaitavr1992 А можно немного подробнее, потому-что я пока тоже считаю, что мы теряем последний элемент и делимое у нас без двух элементов. У нас вроде как Count это индекс последнего, а мы берем ещё и меньше Count, а значит последний - упускаем. Или я что-то не понимаю...
@@mypaxa003 видео пока не смотрел и не знаю что у вас там за Count, но обычно Length и Count показывают кол-во обьектов, но индекс последнего [Count-1]
@@Nightmareinfos Обычно, если речь о коллекциях - да. А тут я уже и сам не помню.
@@mypaxa003 Да, все правильно вы подметили, автор пропускает последний элемент.
А в сравнении с компьют шейдерами будет видео? Как я понимаю в многопоточности выигрыш только в разветвлённом коде? А в данной ситуации можно было обойтись компьют.
Сравнение может и будет, если условий нет то компьют хорошо себя показывает. В 2020 юнити можно результат из шейдера сразу в native array получить для работы в джобе
@@gaitavr1992 хотелось бы видео про компьют шейдер.
Одно видео я снимал летом, про рейтрейсинг
Мелкое замечание, но я слишком нудный. Надо чуть донастроить гитигнор, разве на Райдере(верно ж?) работаешь, а не вс. А так, крутые уроки!
Гитигнор со старого проекте взял, который на vc был, все верно
А почему капсулы не энтитисы?
Не совсем понял вопрос
@@gaitavr1992 каждая капсула - это гейм обжект на сцене. И в иерархии он виден. Я просто думал, рас уж с жобами что то делать, то можно и объекты на сцене создавать как Entity. Конечно, в рамках видео по жобам, это будет лишним усложнением.
А ну я рассматриваю только job систему без ecs на данный момент
@@gaitavr1992 до твоего видео и не подозревал, что job систему можно использовать отдельно от ECS =)
Ну это одна из трех составляющих dots
Это какая то жесть, с каждым роликом я всё больше убеждаюсь, что вообще программировать не умею. Ничего не понимаю.
Задавайте вопросы)
@@gaitavr1992 Спасибо, я теперь понимаю что я лох. Буду продолжать обучаться. Сложно понять какой у тебя уровень когда ты занимаешься разработкой один по вечерам под пивко) А сколько лет вы занимаетесь геймдевом?
7
@@gaitavr1992 а ну у меня тогда ещё всё впереди, я ток где то с полгода занимаюсь)
Многопоточность непростая тема, ничего страшного, что ты ничего не понял.
А можно ссылку на гит.
github.com/gaitavr/UnityJobSystem.git