Доброго времени суток. Хочу выразить свою благодарность. У вас качественный материал, хорошо подан, вкрапления мемчиков не дают заскучать. Просьба не забрасывать канал)
@@Hellscaner думаю тут ещё дело в частоте выпусков) Но у этого парня всё будет,но со временем, когда канал обрастёт материалом) Я был бы рад даже 2-5х минутным роликам,которые бы по нотации движка раскрывал,как и где применять функции юнити. Так как порой читаю и смотрю пример кода который сам мануал юнити дает и нифига не понятно,точнее понятно 30/70 информации,а смотришь ютубера он делает по другому,а работает так как ты представлял читая этот мануал...вообщем хочется расшифровку мануала для чайников)))
Канал просто жемчужина. Три дня бодался с интерфейсами, абстрактными классами и методами и именно ваш курс привел всю кашу в голове в порядок. Максимально благодарю❤
Спасибо твоим урокам. Только благодаря таким как ты, можно самому дома учиться и сменить род деятельности кардинально. А самое важное, что можно начать создавать свои проекты мечты)
Молодец! Очень достойный материал для новичков. Жалко мне не подался такой контент 6-7 лет назад. Особенно правильно, что показан конкретный пример на unity.
Слушай, Илья, ты наверное уже знаешь что твои уроки АХЕРЕННЫЕ ?!!!) Реально же, интерфейсы тема тяжеловесная, но вот именно этот урок дам мне понимание этой системы в целом. Спасибо! Продолжай пилить годноту! Удачи
Очень годный урок. Мне очень понравилось как ты объясняешь, всё очень доходчиво и понятно, а более того интересно слушать. + Отдельное спасибо за ссылки на статьи. Буду под всеми просмотреными видео писать коммент и ставить лайк. Очень годно!
@@-it394 Так же если ты сделаешь такие же уроки про паттерны, то это было бы очень интересно. Особенно то как ты рассказываешь и открой кошелек для спонсирования, таких уроков какие ты делаешь очень мало и нужно их поддерживать.
@@mikki5923 В будущем обязательно сделаю такие уроки, когда буду уверен, что смогу правильно их донести) Профессионально я к сожалению не работал, поэтому могу не видеть или не понимать некоторых вещей, так что стараюсь разбирать то в чем уверен) Ну и параллельно расту с вами естественно. Так что все впереди) А со спонсорством еще придет время когда-нибудь)
В приведённом примере можно обойтись и без интерфейсов (так даже код будет короче), а это значит главный вопрос не раскрыт - зачем они вообще нужны? Зачем реализовывать интерфейс, если можно в каждом классе создать методы для передвижения и использовать их.
Супер качественные у тебя ролики. Очень доступно и понятно. А можно как-нибудь ролик по делегатам и ивентам. Никак не пойму как сделать нормальную реализацию так называемого "callback", когда нужно отслеживать завершение какого-либо действия. Спасибо
На самом деле я и платных то нормальных курсов не знаю, а уж бесплатных мне кажется и нет совсем( В целом можно заглянуть на канал simple code там по документации идет рассмотрение всех аспектов языка, но без примеров практических особо:(
Привет! Классные ролики! А когда будут продолжение? На самом деле хотелось поподробнее узнать про чаректор контроллер и риджибади,а если касаться последнего,то подробнее раскрыть функции его,как задавать поворот плавный на месте, как у танков,или наоборот резки ровно на 90 градусов,как задать движение по направлению,куда смотрит объект. У меня просто с этим возникли проблемы,а на российском ютубе не та информация или итог,что показывают немного не тот какой хотелось бы получить. Я разворачиваю объект с помощью клавиш,он у меня риджибади,но потом когда я нажимаю клавишу движения,он двигается не в ту сторону куда смотрит. Не понимаю как сделать так,чтобы он двигался туда куда смотрит,это ведь получается нужно разворачивать объект в глобальных координатах? и интересно,как сделать выстрелы пулей,выстрелы снарядов по траектории или гарпуна с "веревкой",как подбирать обратно такие объекты(гарпун) очень жду выпусков! и желаю поскорее разобраться с делами дома и начать нас радовать роликами!)
Спасибо! Продолжение будет в феврале) К сожалению зимняя сессия довольно длинная, да я ещё и короновирусом переболел, поэтому часть сессии переносится на февраль((( Так что как все сдам, так и продолжу выпускать ролики✊
@@-it394 здоровья! Не болей! И удачи на сессии! Буду тебя ругать,чтоб сдал!) И хитрый приём) Не пилить ролики,чтобы во время сессии больше народу ругали на хорошую оценку!))😁😉 А так да! Было бы классно получать расшифровку документации юнити с примерами🤩🤩🤩
ищешь всех монобехов (при загрузке сцены, к примеру), тусуешь по типам (выбираешь нужный интерфейс), и через класс, где у тебя это все хранится можешь передавать всем "сообщения" по методам интерфейса
для какой цели это необходимо? Просто именно срабатывание OnEnable вроде ты не узнаешь напрямую, но в зависимости от того зачем это нужно можно что-нибудь придумать. Если надо выполнять допустим OnEnable в скрипте дочернего объекта после родителя (по какой-то причине этого не выполняется), то прямо в Unity можно назначить очередность выполнения скриптов
@@-it394 привет, я просто хотел генерировать рандомно цвет у объекта. Объект этот всегда включен, а вот его patent.parent включается и выключается, вот когда включается надо было менять цвет. Я просто у объекта написал OnEnable решил проверить, и оно работало. Видимо когда у родителя срабатывает эта функция она срабатывает и у дочерних
Получается интерфейс просто говорит нам что должно быть в классе? Типа если какой то метод или свойство повторяется в нескольких классах. то мы выносим их в интерфейс. и он это как подсказка что эти штуки нужно реализовать? Правильно я понял?
В целом да, если есть какое - то общее поведение у разных классов или допустим ты создаешь для класса поведение и понимаешь, что оно у тебя может использоваться в будущем еще где-то, то можно вынести это в интерфейс. Кроме того интерфейс позволяет инкапсулировать поведение, как было в примере на Unity у тебя в классе может быть прописано все что угодно, но исполняющему коду в Shooter неважно что там находиться, он работает с ним лишь на уровне IDamageable. Это минимизирует связность кода
Если простыми словами попытаться объяснить, то наследование нужно использовать если у тебя есть объекты одного типа (пример есть базовый класс "враг", и его наследники орк, эльф и тд. Каждый из них может получать урон, но ведь его могут получать и например здания, а это другой класс который тоже может наследоваться). И тогда подойдут именно интерфейсы.
Может кто-нибудь подсказать почему у меня этот point, который следит за мышкой, активируется только тогда, когда, я навожу её на один из предметов(врага, башню или стену)? А когда убираю с них мышь, они просто там и остаются, пока я не наведу её на другой объект, тогда она будет двигаться уже в его пределах. Написал, вроде как всё как на видео, но работает как-то не так Вот код: using Assets; using System.Collections; using System.Collections.Generic; using UnityEngine; public class Shooter : MonoBehaviour { [SerializeField] private Transform targetPoint; private Camera cam; [SerializeField] private int damage; private void Awake() { cam = Camera.main; } private void Update() { Ray ray = cam.ScreenPointToRay(Input.mousePosition); RaycastHit hit; if(Physics.Raycast(ray, out hit)) { targetPoint.position = hit.point; if (Input.GetKeyDown(KeyCode.Mouse0) && hit.collider.TryGetComponent(out IDamageable damageable)) { damageable.ApplyDamage(damage); } } } }
И ещё, спасибо большое автору за видео, очень интересно и хорошо объяснено, хотя и не до конца пока всё понятно👍 А сколько времени ты учился, чтобы так уметь?)😅
Хотел бы узнать по поводу кое какого момента, у вас в конце в методе Update вы создаёте переменные ray, hit. По сути Update это цикл и на каждой итерации цикла будут создаваться эти переменные, на сколько будет целесообразнее вынести эти переменные в момент инициализации скрипта со всеми полями или профита от этого никакого не будет?
Профита не будет особо. В целом не надо сильно бояться делать что-то в Update, понятное дело, что нужно стараться выносить все из него по возможности, но если нужно, что бы что-то действительно постоянно обновлялось, то просто пытаемся избавляться от тяжелых операций как например поиск по тегу или получение компонента и суем в Update
Единственное хорошее объяснение что такое интерфейс!👍 в остальных источниках путают причину и следствие 🤦♂️ таким образом интерфейс нам нужен для того, чтобы какой либо класс мог взаимодействовать с другими классами без необходимости прописывать объекты этих классов. Иначе как в данном примере нам пришлось бы прописывать каждый объект с которым взаимодействует класс shooter и если через пару тройку обновлений мы введем в игру еще какой нибудь новый класс то и его надо прописывать сюда, а если таких enemy десятки то код становится однотипным и будет целая куча объектов этого класса с одинаковыми методами. А так мы цепляем интерфейс на нужный нам класс, прописываем поведение и уже класс шутер определяет есть ли у того класса интерфейс взаимодействия и если он есть то shooter может проводить над ним установленное интерфейсом действие. При этом реализация отдана в сам класс-наследник интерфейса чтоб избежать ромба наследования и по сути определения конкретного выполнения этого действия. Так например при взаимодействии shooter и orc орк умирает с каким нибудь эффектом или словами, а при взаимодействии с wall стена должна рассыпаться молча😅, а стена у которой нет интерфейса будет стоять как стояла т.к. shooter с ней не будет никак взаимодействовать в рамках установленного интерфейса, как то так?🤔
Ну или как пульт и телевизор: если у телевизора есть интерфейс взаимодействия с пультом то он будет выполнять действия, если пульт от другого телевизора(сигнатура другая) или телевизор вообще не имеет интерфейс взаимодействия с пультом то и происходить ничего не будет. Или же изначально телевизор проектировался без пульта т.к. о такой возможности тогда небыло известно но тут человечество сделало рывок в науке и смогло изобрести дистанционное управление и как быть этому телевизору если у него изначально такой функции небыло, а потребители уже требуют, чтоб он был с пультом? Приделать ему коробочку со смарт-тв у которой уже предусмотрен пульт управления с возможностью запускать этот телевизор без особой необходимости изменять внутрянку или вообще переделывать телевизор заново
Мы это делаем что бы приватные поля были видны в инспекторе, т.е. мы могли бы их задавать из инспектора Unity, но при это с точки зрения кода они бы оставались приватными
Эти выскакивающие со звуком картинки лично меня отвлекают. Да любой человек, если у него перед носом махать руками и щелкать пальцами, будет отвлекаться и потеряет понимание темы.
Все бы хорошо, но в процессе объяснения темы, написания или разъяснения кода эти всплывающие, клацающие детские мемчики сбивают с толку, постоянно приходится читать что там написано, а там какая-то шляпа типо "смешная". Нужно по несколько раз пересматривать, а то и начинать искать другие видео без мемов, вставок и всех этих свистелок-перделок. Автору спасибо, но БЛИН! Подача - ужас эпилептика.
Это уже 8-я часть серии уроков, так что советую посмотреть предыдущее, что бы было понятнее. Однако если вы только только начали изучать программирование, то это будет тяжело понять сразу
Доброго времени суток. Хочу выразить свою благодарность. У вас качественный материал, хорошо подан, вкрапления мемчиков не дают заскучать. Просьба не забрасывать канал)
Поддерживаю)
Эх, жаль что такой хороший канал так мало людей смотрит.
Какие люди? Ты глючишь? Тут только роботы)
Время ещё придет)
Соглы)
Я думаю может надо видео как-то более оригинально называть?
@@Hellscaner думаю тут ещё дело в частоте выпусков) Но у этого парня всё будет,но со временем, когда канал обрастёт материалом) Я был бы рад даже 2-5х минутным роликам,которые бы по нотации движка раскрывал,как и где применять функции юнити. Так как порой читаю и смотрю пример кода который сам мануал юнити дает и нифига не понятно,точнее понятно 30/70 информации,а смотришь ютубера он делает по другому,а работает так как ты представлял читая этот мануал...вообщем хочется расшифровку мануала для чайников)))
ну наконец-то хоть кто-то нормально объяснил суть интерфейса блэээээээттээттээтэтэттэтэ , спасибо тебе огромное !!!!!!!!!!!!!
Канал просто жемчужина. Три дня бодался с интерфейсами, абстрактными классами и методами и именно ваш курс привел всю кашу в голове в порядок. Максимально благодарю❤
КРУТОЙ РОЛИК. ДАВАЙ ЕЩЕ ПРО ИНТЕРФЕЙСЬІ!!
Спасибо твоим урокам. Только благодаря таким как ты, можно самому дома учиться и сменить род деятельности кардинально.
А самое важное, что можно начать создавать свои проекты мечты)
Прикольно
Уроки супер! Автор большущий молодчина!
Дякую, гарний контент :) Особливо сподобалось рішення з (out IDamageable damageable)
Самое главное что ты можешь сделать чтобы у тебя была постоянная аудитория то не забрасывай канал
Чел, твой контент идеальный!
Молодец! Очень достойный материал для новичков. Жалко мне не подался такой контент 6-7 лет назад. Особенно правильно, что показан конкретный пример на unity.
Большое спасибо бро, коротко, ясно, а самое главное без лишнего и понятными терминами
Годный разбор интерфейсов. Думаю надо наконец ими начать пользоваться)
посмотрел до 5 видео, понятно стало только тут)
Потрясающий канал, автор огромнейшее тебе спасибо!
Хотим больше интерфейсов!
Блин, видео у тебя просто топ, не верится что у канала всего 2к подписчиков, продолжай в том же духе!!!! я кста нашел тебя в гугл поиске)
Чётко, спасибо! Качество звука и видео на отличном уровне и вроде бы все понятно
Лучшее объяснение. Моё почтение автору
Слушай, Илья, ты наверное уже знаешь что твои уроки АХЕРЕННЫЕ ?!!!)
Реально же, интерфейсы тема тяжеловесная, но вот именно этот урок дам мне понимание этой системы в целом.
Спасибо! Продолжай пилить годноту! Удачи
Это было хорошо . Третий видос подряд про интерфейсы и я понял их суть.
Спасибо, вы невероятно хорошо обьяснили. Лучший урок по интерфесам👍
Шикарный канал, спасибо автору за такую качественную подачу информации!
Спасибо за информацию!) Первый колокольчик который я нажал))
Круто, спасибо
Очень годный урок.
Мне очень понравилось как ты объясняешь, всё очень доходчиво и понятно, а более того интересно слушать.
+ Отдельное спасибо за ссылки на статьи.
Буду под всеми просмотреными видео писать коммент и ставить лайк.
Очень годно!
Спасибо!
@@-it394 Так же если ты сделаешь такие же уроки про паттерны, то это было бы очень интересно. Особенно то как ты рассказываешь и открой кошелек для спонсирования, таких уроков какие ты делаешь очень мало и нужно их поддерживать.
@@mikki5923 В будущем обязательно сделаю такие уроки, когда буду уверен, что смогу правильно их донести) Профессионально я к сожалению не работал, поэтому могу не видеть или не понимать некоторых вещей, так что стараюсь разбирать то в чем уверен) Ну и параллельно расту с вами естественно. Так что все впереди) А со спонсорством еще придет время когда-нибудь)
Больше интерфейсов и больше рейкаста) Ждём новые уроки)
Шикарное объяснение
Больше интерфейсов ) пж
отличный урок, благодарю
Сделай видос про сериализацию, например в json, xml.
Очень хороший урок! Спасибо!:)
Круто
В приведённом примере можно обойтись и без интерфейсов (так даже код будет короче), а это значит главный вопрос не раскрыт - зачем они вообще нужны? Зачем реализовывать интерфейс, если можно в каждом классе создать методы для передвижения и использовать их.
Классно.
Автор, будут ли еще уроки. Сделано все супер. Может будет полноценный большой курс когда-нибудь?
Молодец )
Супер качественные у тебя ролики. Очень доступно и понятно. А можно как-нибудь ролик по делегатам и ивентам. Никак не пойму как сделать нормальную реализацию так называемого "callback", когда нужно отслеживать завершение какого-либо действия. Спасибо
Готовлю как раз ролик по делегатам и ивентам) Но боюсь в рамках одного ролика рассмотреть все не получится, так что начнём с основ а там посмотрим)
Давай видосы почаще, и еще, такой вопрос. Где можно найи нормальный, бесплатный курс на юнити. А то учиться по кусочкам из ютуба и гугла так себе.
На самом деле я и платных то нормальных курсов не знаю, а уж бесплатных мне кажется и нет совсем( В целом можно заглянуть на канал simple code там по документации идет рассмотрение всех аспектов языка, но без примеров практических особо:(
Привет! Классные ролики! А когда будут продолжение?
На самом деле хотелось поподробнее узнать про чаректор контроллер и риджибади,а если касаться последнего,то подробнее раскрыть функции его,как задавать поворот плавный на месте, как у танков,или наоборот резки ровно на 90 градусов,как задать движение по направлению,куда смотрит объект. У меня просто с этим возникли проблемы,а на российском ютубе не та информация или итог,что показывают немного не тот какой хотелось бы получить.
Я разворачиваю объект с помощью клавиш,он у меня риджибади,но потом когда я нажимаю клавишу движения,он двигается не в ту сторону куда смотрит. Не понимаю как сделать так,чтобы он двигался туда куда смотрит,это ведь получается нужно разворачивать объект в глобальных координатах? и интересно,как сделать выстрелы пулей,выстрелы снарядов по траектории или гарпуна с "веревкой",как подбирать обратно такие объекты(гарпун) очень жду выпусков! и желаю поскорее разобраться с делами дома и начать нас радовать роликами!)
Спасибо! Продолжение будет в феврале) К сожалению зимняя сессия довольно длинная, да я ещё и короновирусом переболел, поэтому часть сессии переносится на февраль((( Так что как все сдам, так и продолжу выпускать ролики✊
Кстати хорошие идеи для роликов, спасибо! Думаю обязательно что-то сделаю)
@@-it394 здоровья! Не болей! И удачи на сессии! Буду тебя ругать,чтоб сдал!)
И хитрый приём) Не пилить ролики,чтобы во время сессии больше народу ругали на хорошую оценку!))😁😉
А так да! Было бы классно получать расшифровку документации юнити с примерами🤩🤩🤩
Годно
А как сделать интерфейс событием, чтобы всем, у кого есть данный интерфейс, передать сообщения?
ищешь всех монобехов (при загрузке сцены, к примеру), тусуешь по типам (выбираешь нужный интерфейс), и через класс, где у тебя это все хранится можешь передавать всем "сообщения" по методам интерфейса
Привет, есть такой вопрос, не по теме этого видео.
как узнать в скрипте дочернего объекта когда срабатывает OnEnable у родителя ?
для какой цели это необходимо? Просто именно срабатывание OnEnable вроде ты не узнаешь напрямую, но в зависимости от того зачем это нужно можно что-нибудь придумать. Если надо выполнять допустим OnEnable в скрипте дочернего объекта после родителя (по какой-то причине этого не выполняется), то прямо в Unity можно назначить очередность выполнения скриптов
@@-it394 привет, я просто хотел генерировать рандомно цвет у объекта. Объект этот всегда включен, а вот его patent.parent включается и выключается, вот когда включается надо было менять цвет.
Я просто у объекта написал OnEnable решил проверить, и оно работало.
Видимо когда у родителя срабатывает эта функция она срабатывает и у дочерних
@@rusytop4910 Просто при деактивации родителя все дочерние объекты так же деактивируются, ну и при включении аналогично)
Получается интерфейс просто говорит нам что должно быть в классе? Типа если какой то метод или свойство повторяется в нескольких классах. то мы выносим их в интерфейс. и он это как подсказка что эти штуки нужно реализовать? Правильно я понял?
В целом да, если есть какое - то общее поведение у разных классов или допустим ты создаешь для класса поведение и понимаешь, что оно у тебя может использоваться в будущем еще где-то, то можно вынести это в интерфейс. Кроме того интерфейс позволяет инкапсулировать поведение, как было в примере на Unity у тебя в классе может быть прописано все что угодно, но исполняющему коду в Shooter неважно что там находиться, он работает с ним лишь на уровне IDamageable. Это минимизирует связность кода
Можешь посмотреть ещё ролик кодманки на эту тему m.ruclips.net/video/MZOrGXk4XFI/видео.html
3:42 в чем разница тогда между наследованием и реализацией? как это различается через синтаксис c# ? :)
Если простыми словами попытаться объяснить, то наследование нужно использовать если у тебя есть объекты одного типа (пример есть базовый класс "враг", и его наследники орк, эльф и тд. Каждый из них может получать урон, но ведь его могут получать и например здания, а это другой класс который тоже может наследоваться). И тогда подойдут именно интерфейсы.
@@Hellscaner не это вопрос с собеседования. Ответ - разницы в контексте c# нету)
Сэ ПА Си БА!
Может кто-нибудь подсказать почему у меня этот point, который следит за мышкой, активируется только тогда, когда, я навожу её на один из предметов(врага, башню или стену)? А когда убираю с них мышь, они просто там и остаются, пока я не наведу её на другой объект, тогда она будет двигаться уже в его пределах.
Написал, вроде как всё как на видео, но работает как-то не так
Вот код:
using Assets;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Shooter : MonoBehaviour
{
[SerializeField] private Transform targetPoint;
private Camera cam;
[SerializeField] private int damage;
private void Awake()
{
cam = Camera.main;
}
private void Update()
{
Ray ray = cam.ScreenPointToRay(Input.mousePosition);
RaycastHit hit;
if(Physics.Raycast(ray, out hit))
{
targetPoint.position = hit.point;
if (Input.GetKeyDown(KeyCode.Mouse0) &&
hit.collider.TryGetComponent(out IDamageable damageable))
{
damageable.ApplyDamage(damage);
}
}
}
}
И ещё, спасибо большое автору за видео, очень интересно и хорошо объяснено, хотя и не до конца пока всё понятно👍 А сколько времени ты учился, чтобы так уметь?)😅
@@bogdan9423 из за этой строки:
targetPoint.position = hit.point;
Хотел бы узнать по поводу кое какого момента, у вас в конце в методе Update вы создаёте переменные ray, hit. По сути Update это цикл и на каждой итерации цикла будут создаваться эти переменные, на сколько будет целесообразнее вынести эти переменные в момент инициализации скрипта со всеми полями или профита от этого никакого не будет?
Профита почти не будет, т.к. ссылки на классы в c# удаляются не сразу.
Хотя если у тебя лям лучей за кадр, то смысл возможно есть.
Профита не будет особо. В целом не надо сильно бояться делать что-то в Update, понятное дело, что нужно стараться выносить все из него по возможности, но если нужно, что бы что-то действительно постоянно обновлялось, то просто пытаемся избавляться от тяжелых операций как например поиск по тегу или получение компонента и суем в Update
наконц то я понял
Единственное хорошее объяснение что такое интерфейс!👍 в остальных источниках путают причину и следствие 🤦♂️ таким образом интерфейс нам нужен для того, чтобы какой либо класс мог взаимодействовать с другими классами без необходимости прописывать объекты этих классов. Иначе как в данном примере нам пришлось бы прописывать каждый объект с которым взаимодействует класс shooter и если через пару тройку обновлений мы введем в игру еще какой нибудь новый класс то и его надо прописывать сюда, а если таких enemy десятки то код становится однотипным и будет целая куча объектов этого класса с одинаковыми методами. А так мы цепляем интерфейс на нужный нам класс, прописываем поведение и уже класс шутер определяет есть ли у того класса интерфейс взаимодействия и если он есть то shooter может проводить над ним установленное интерфейсом действие. При этом реализация отдана в сам класс-наследник интерфейса чтоб избежать ромба наследования и по сути определения конкретного выполнения этого действия. Так например при взаимодействии shooter и orc орк умирает с каким нибудь эффектом или словами, а при взаимодействии с wall стена должна рассыпаться молча😅, а стена у которой нет интерфейса будет стоять как стояла т.к. shooter с ней не будет никак взаимодействовать в рамках установленного интерфейса, как то так?🤔
Ну или как пульт и телевизор: если у телевизора есть интерфейс взаимодействия с пультом то он будет выполнять действия, если пульт от другого телевизора(сигнатура другая) или телевизор вообще не имеет интерфейс взаимодействия с пультом то и происходить ничего не будет. Или же изначально телевизор проектировался без пульта т.к. о такой возможности тогда небыло известно но тут человечество сделало рывок в науке и смогло изобрести дистанционное управление и как быть этому телевизору если у него изначально такой функции небыло, а потребители уже требуют, чтоб он был с пультом? Приделать ему коробочку со смарт-тв у которой уже предусмотрен пульт управления с возможностью запускать этот телевизор без особой необходимости изменять внутрянку или вообще переделывать телевизор заново
А где перегрузка?)
Ну уж с перегрузкой как-нибудь можно разобраться самим))
почему в начале пишется SerializeFiled?
Что бы приватные поля были видны в инспекторе
Мы это делаем что бы приватные поля были видны в инспекторе, т.е. мы могли бы их задавать из инспектора Unity, но при это с точки зрения кода они бы оставались приватными
Эти выскакивающие со звуком картинки лично меня отвлекают. Да любой человек, если у него перед носом махать руками и щелкать пальцами, будет отвлекаться и потеряет понимание темы.
Не совсем понял для чего это нужно, получается вы создали разные методы и это можно было сделать без интерфейсов
Все бы хорошо, но в процессе объяснения темы, написания или разъяснения кода эти всплывающие, клацающие детские мемчики сбивают с толку, постоянно приходится читать что там написано, а там какая-то шляпа типо "смешная". Нужно по несколько раз пересматривать, а то и начинать искать другие видео без мемов, вставок и всех этих свистелок-перделок. Автору спасибо, но БЛИН! Подача - ужас эпилептика.
Урок отстой, он походу для профессионалов
Это уже 8-я часть серии уроков, так что советую посмотреть предыдущее, что бы было понятнее. Однако если вы только только начали изучать программирование, то это будет тяжело понять сразу
Проффесионали и так это знают )