Unity job system. Как применять потоки в юнити неявно

  Рет қаралды 20,739

Максим Крюков

Максим Крюков

3 жыл бұрын

В этом видео мы будем разбирать job систему юнити, как часть DOTS. Job система очень неплохая альтернатива явной многопоточности, когда нужно производить много похожих вычислений.
Blittable типы - docs.microsoft.com/ru-ru/dotn...
Паблик игроделов - special3d
Многопоточная запись в файл - • Многопоточность и запи...
Поддержка канала:
Patreon - www.patreon.com/user?u=32502669
В крипте:
BTC - 16WmTb4VTFGYrwEjjnMKNNMMzsMB1rPEqD
ETH - 0x8d35406f8317b846528d0a9ea4a34ce59968dff2
XRP - rLW9gnQo7BQhU6igk5keqYnH3TVrCxGRzm (TAG - 1438215071)
LTC- MNSWdzdVsUMnozSU5HhUPEscfxaUK3Fdck
#unity3d #jobsystem #ecs #dots #ityoutubersru

Пікірлер: 61
@gaitavr1992
@gaitavr1992 3 жыл бұрын
Ой-ой, на 8-04 картинка съехала(( Если что, то там время жизни такое же, как у главного потока
@user-pv9zf9zh5o
@user-pv9zf9zh5o 3 жыл бұрын
Спасибо большое за ролик, Максим! Я давно пытался понять смысл NativeArray и разобраться с компонентами DOTS. Очень жду новых уроков по этой теме!
@seldemirov
@seldemirov 3 жыл бұрын
Максим у тебя невероятно полезные видео. Многопоточность чертовски нужная тема!
@shyxiaolong
@shyxiaolong 2 жыл бұрын
Это потрясающе, спасибо! Максим у вас на канале, я нашел много ответов для своих вопросов!
@NoldoWalker
@NoldoWalker 3 жыл бұрын
Полезно знать про такое. Спасибо. Местами похоже на работу постгри в параллельных транзакциях.
@igor_kharchuk_
@igor_kharchuk_ 2 жыл бұрын
Чет мозг плавиться) Но автор хорошо обьясняет, теперь я уже не такой темный лес) Спасибо)
@user-wv3vi4dt1p
@user-wv3vi4dt1p 3 жыл бұрын
Спасибо! Очень полезное видео!)
@kiteva7087
@kiteva7087 2 жыл бұрын
Самый лучший и качественный контент по Unity на русском, спасибо!)
@andrewmad
@andrewmad 3 жыл бұрын
Классный ролик, благодарю!
@user-dd1ot9oy5u
@user-dd1ot9oy5u 3 жыл бұрын
буду стремится к тому, чтобы когда нибуть пригодилось, спасибо
@gaitavr1992
@gaitavr1992 3 жыл бұрын
На вскидку применение - генерация меша
@yatsuk_vitalii
@yatsuk_vitalii 2 жыл бұрын
@@gaitavr1992 Добрый день, я как раз делал генерацию меша, но юнити говорит, что индекс вне диапазона IJobParallelFor в буфере чтения/записи. Уже день не могу ничего сделать, переписал код генерации чуть ли не с нуля, не могли бы вы, пожалуйста, сказать из-за чего может быть эта ошибка? Заранее благодарю
@IskanderPresent
@IskanderPresent 3 жыл бұрын
Спасибо за видео!
@mactepmac
@mactepmac 3 ай бұрын
Спасибо за информацию. Очень полезно для меня было посмотреть (послушать).
@Dimetroc
@Dimetroc 3 жыл бұрын
job system очень хорошо помогает когда нужно выполнить большое количество вычисленй паралельно и не тормозить при этом основной поток, кау это уже будет использовано в каждом кокреном случае это вопрос к разработчику , в данном ролике отлично заполнине пробелы которые не описаны в документации по юнити, Макс спасибо
@easycodeunity3d14
@easycodeunity3d14 2 жыл бұрын
Круто! Спасибо!
@deltavgamesstudio9968
@deltavgamesstudio9968 3 жыл бұрын
Наконец то нормальный тип, который знает что говорит, красава бро
@Bald_Panther
@Bald_Panther 2 жыл бұрын
Это вам не корутины) Отличный материал и классный канал.
@user-pj5np8wo6i
@user-pj5np8wo6i 2 жыл бұрын
огонь!
@assachan5202
@assachan5202 3 жыл бұрын
Спасибо.
@JackFastGame
@JackFastGame 2 жыл бұрын
Видео не смотрел, но поинтересуюсь - класс Task для этой задачи не подойдёт?
@andrew_t800
@andrew_t800 3 жыл бұрын
Респект
@AleksandrShtomov
@AleksandrShtomov 11 ай бұрын
Даже не знал, что так можно))
@ve1c0m
@ve1c0m 3 жыл бұрын
Спасибо, очень полезно, например для меня, т.к. по-английски слабо понимаю, а туторы на англ. сложно даются)
@gaitavr1992
@gaitavr1992 3 жыл бұрын
Я бы все же рекомендовал дотянуть уровень хотя бы до intermediate
@tmi114
@tmi114 3 жыл бұрын
..мы будем знакомиться с жоп системой
@extreme7387
@extreme7387 3 жыл бұрын
Хах
@celisej
@celisej 2 жыл бұрын
Ну жоп систему я всю жизнь знал)
@valerypopov4041
@valerypopov4041 2 жыл бұрын
7:53 в 19 строчке правильней будет Bridge = tempJobContainer; ?
@user-sj1mq5xu7h
@user-sj1mq5xu7h 3 жыл бұрын
я не любитель подписываться, но на твой канал даже за деньги бы подписался )
@gaitavr1992
@gaitavr1992 3 жыл бұрын
Спасибо, приятно)
@user-sj1mq5xu7h
@user-sj1mq5xu7h 3 жыл бұрын
@@gaitavr1992 я там на почту тебе написал, глянь пожалуйста
@user-nm5zh2zb8c
@user-nm5zh2zb8c 3 жыл бұрын
В какой версии Юнити ты работаешь. И какой пакет подключаешь через nuget?
@gaitavr1992
@gaitavr1992 3 жыл бұрын
Версия 2019.4.2f1. Дополнительных пакетов не требуется, раньше насколько я помню нужно было доустановить JobSystem
@user-nm5zh2zb8c
@user-nm5zh2zb8c 3 жыл бұрын
@@gaitavr1992 а когда будет вторая часть?
@user-nm5zh2zb8c
@user-nm5zh2zb8c 3 жыл бұрын
@@gaitavr1992 я так понимаю что в версии 2020 1 8 она должна быть?
@gaitavr1992
@gaitavr1992 3 жыл бұрын
Плюс минус неделя
@AlexStraga
@AlexStraga 3 жыл бұрын
Пока что плохо понятно, жду следующего видео ) Тест коллизии как то можно в таком многопотоке сделать? допустим у меня есть пара сотен вершин и надо протестить входят ли они в другие объекты или нет. На вскидку только постепенно проверять их в течении полусекунды например чтобы в одном кадре не было просадок.
@gaitavr1992
@gaitavr1992 3 жыл бұрын
Можно считать входит ли точка в обьем обьекта, вполне реализуемо для job системы
@igors3977
@igors3977 3 жыл бұрын
@@gaitavr1992 Ждем урок на эту тему, очень ждем.... Спасибо!
@Wfrden
@Wfrden 2 жыл бұрын
почему бы юнити самой не собирать все процессы в джобы?)
@AmbassadorOfLogic
@AmbassadorOfLogic 2 жыл бұрын
А я всегда думал, что жоп система, это когда зимой в машине подогрев сиденья включается.
@gaitavr1992
@gaitavr1992 2 жыл бұрын
Вот это уровень, нужно в стендап
@AmbassadorOfLogic
@AmbassadorOfLogic 2 жыл бұрын
@@gaitavr1992 уровень юмора: жоп система
@user-cv8bw6vg6y
@user-cv8bw6vg6y 5 ай бұрын
Как же мне больно от "скедиль"
@saurontheblack6566
@saurontheblack6566 Жыл бұрын
зачем? если в шарпах существует async await task. Тогда для чего юнити добавило по факту как я понял одно и тоже?
@exregisterqq
@exregisterqq Жыл бұрын
асинхронность != многопоточность
@saurontheblack6566
@saurontheblack6566 Жыл бұрын
@@exregisterqq Только факториал лучше было бы выполнить через асинхронность, чем через многопоточность. А ну и кстати многопоточность в шарпах тоже есть если для вас это критический важно, класс Thread. Ну и плюс Юнити является не потокобезопасным и общаться с ее API надо только из основного потока. Так что ее Джопы это просто костыли, Юнити вообще полна костылей и недоработок, даже удивительно зачем люди в ней так много времени страдают или это уже дело привычки страдать?
@saurontheblack6566
@saurontheblack6566 Жыл бұрын
@@exregisterqq Кстати Юнити не только не потокобезопасная, но она еще и однопоточная) попробуйте написать функцию с вечным циклом и вызвать ее, в результате у вас Юнити прекратит отвечать и закрываться, а единственный способ ее закрыть будет банально убить программу в диспетчере задач, короче мусорная программка
@alexspeleers
@alexspeleers 3 жыл бұрын
жоп система (((:
@gaitavr1992
@gaitavr1992 3 жыл бұрын
Оригинальный комментарий
@alexcosmos9895
@alexcosmos9895 3 жыл бұрын
Хороший урок, но как минимум - слишком быстро печатается код, не успеваешь сразу осознать написанное, приходится стопать видео каждые 30 сек, это неудобно и отталкивает восприятие. Ну и в целом быстрый темп - не лучший подход для уроков программирования, на мой взгляд - следует подавать такого рода информацию спокойно и размеренно, чтобы слушатель успевал вникать, мы никуда не торопимся :)
@gaitavr1992
@gaitavr1992 3 жыл бұрын
Посмотрите заодно следующий ролик, там чуть помедленнее)
@alexcosmos9895
@alexcosmos9895 3 жыл бұрын
@@gaitavr1992 уже глянул, отличные уроки, благодарю)
@mimineko3100
@mimineko3100 2 жыл бұрын
Скажу по секрету - в настройках любого видео можно поставить как ускорение, так и замедление воспроизведения ;)
@firerunnew
@firerunnew Жыл бұрын
Толи я слишком нуб, то ли все слишком внезапно началось и слабо объяснено, но я нехрена не понял.
@danil_zz
@danil_zz 2 жыл бұрын
Не скедил, а шедул. Такая тема и уж такие ляпы
@gaitavr1992
@gaitavr1992 2 жыл бұрын
Не знаю теперь как мне теперь и жить с такими ляпами)
@danil_zz
@danil_zz 2 жыл бұрын
@rupert зачем хамишь? А вот далеко ли твой вариант от моего, по сравнению с автором?
@lustfulglance437
@lustfulglance437 Жыл бұрын
Это два разных произношение британское и американское в вашем случае
@dmitryternovoy9454
@dmitryternovoy9454 Жыл бұрын
В Unity 2021.3.7f1 ругается на лог $"factorial of {bridge[0]} is {bridge[1]}" На то что нельзя читать массив, пока в него кто-то пишет You must call JobHandle.Complete() on the job PowJob, before you can read from the Unity.Collections.NativeArray
Compute shader в юнити. Основы
10:25
Максим Крюков
Рет қаралды 13 М.
Should You Use DOTS in 2024? (plus what is Unity ECS)
30:15
Turbo Makes Games
Рет қаралды 35 М.
How I prepare to meet the brothers Mbappé.. 🙈 @KylianMbappe
00:17
Celine Dept
Рет қаралды 57 МЛН
Indian sharing by Secret Vlog #shorts
00:13
Secret Vlog
Рет қаралды 58 МЛН
I Need Your Help..
00:33
Stokes Twins
Рет қаралды 148 МЛН
Динамическая оптимизация в UNITY! GPU instancing
7:40
Яковлев Илья - IT и игры
Рет қаралды 19 М.
ООП вопросы на юнити собеседовании
14:11
Максим Крюков
Рет қаралды 42 М.
Getting Started with the Job System in Unity 2019
25:54
Code Monkey
Рет қаралды 178 М.
Unity Job System - A Practical Code Example
13:50
Infallible Code
Рет қаралды 80 М.
Делегаты и события в unity за 10 минут
11:14
Максим Крюков
Рет қаралды 30 М.