State Pattern - Advanced C# in Unity
6:55
Пікірлер
@MISTERVIRUSERROR
@MISTERVIRUSERROR 4 күн бұрын
Как то странно это всё
@cfl3845
@cfl3845 17 күн бұрын
@slimeball3209
@slimeball3209 23 күн бұрын
Только здесь прямо обьяснили что это просто обьект сложенный в статическое поле класса.
@georgii_
@georgii_ 26 күн бұрын
У меня максимум 30 фпс помемуто
@antonbaidzionak8282
@antonbaidzionak8282 26 күн бұрын
хорошее видео
@ЕльХвойный
@ЕльХвойный 28 күн бұрын
Спасибо автору за освещение темы оптимизации
@liroiforever
@liroiforever Ай бұрын
искал адекватную смену дня и ночи, наткнулся на тебя, топ, спасибо огромное !
@Rutgiu
@Rutgiu Ай бұрын
главный минус, Английский язык, почему не русский? я не понимаю
@user24235
@user24235 Ай бұрын
потому что это не последнее видео по оптимизации....видео 4 года назад)
@anroiddevel5597
@anroiddevel5597 Ай бұрын
Почему то когда я начинаю наблюдать в коде публичные поля, да еще и названые с маленькой буквы, мне становится все равно, что говорит оратор, какими бы умными не казались его речи.
@insaneone-7220
@insaneone-7220 Ай бұрын
@@anroiddevel5597 ну, наверное ты и Unity не пользуешься, ведь почти всё их api имеет публичные поля (или проперти), названные с маленькой буквы.
@anroiddevel5597
@anroiddevel5597 Ай бұрын
@@insaneone-7220 У этого есть несколько причин. 1. Unity разрабатывалась и эволюционировала с течением времени, и разработчики следовали определённым внутренним стандартам, которые стали традицией. Эти стандарты помогали поддерживать согласованность в коде и документации. 2.Многое в Unity направлено на упрощение работы разработчиков игр, включая тех, кто может быть не знаком с продвинутыми принципами программирования. 3.Unity имеет огромное количество существующего кода и проектов, и изменение соглашений об именовании могло бы привести к проблемам совместимости. Поддержание текущих соглашений помогает избежать этих проблем. А у Вас нет никаких причин использовать устаревшие правила.
@Barlog2012
@Barlog2012 Ай бұрын
Имхо, это извращение над нормальным программированием. Но за ролик спасибо.
@soren6538
@soren6538 Ай бұрын
А когда новый ролик ????? Мне очень понравились пожалуйста ❤❤❤❤❤❤
@ДмитрийАнтипанов-п8т
@ДмитрийАнтипанов-п8т Ай бұрын
короче таррэйн еще та фигня котороа много жрет и ни фига не делает
@ritoon2223
@ritoon2223 2 ай бұрын
А если использовать hdrp? Сильно плохо будет?
@insaneone-7220
@insaneone-7220 Ай бұрын
Если коротко - да) Рекомендуется только если игра ориентирована минимум на среднюю конфигурацию ПК. Всё что слабее - вряд ли потянет.
@ritoon2223
@ritoon2223 Ай бұрын
@@insaneone-7220 спасибо
@hi.____.
@hi.____. 2 ай бұрын
Ты некоторых ютуберов без денег оставишь(которые снимают фокусы с выпадением за уровень)
@ritoon2223
@ritoon2223 2 ай бұрын
Эта штука для людей которым не хватает навыков в с# и .net
@Thur1nor
@Thur1nor 2 ай бұрын
честно говоря смотрел видос с целью понять в чем же преимущество перед стандартной компонентной системой, и честно говоря так и не догнал. Все дико неудобно и костыльно. плюс такие мощные инструменты как наследование и полиморфизм идут нахер, все поведение обьектов нужно настраивать через код, что неудобно если работаете с геймдизайнерами которые сами в юньке могут что то собирать
@globalacademyorigina1
@globalacademyorigina1 2 ай бұрын
Не работает. Бился часа 4. Метод привлекательный, но похоже до ума не доведен. Уже на 3м скрипте начинается лажа. объекты не добавляются на панель. Все прочекал. Код до милиметров 1 в 1 переписал, хотя бы чтобы понимать как должно работать. Все скрипты развесил как указано в видео. Не работает.
@17LittleBastard
@17LittleBastard 2 ай бұрын
Твой динамик батчинг ничего не батчит
@pepzzey9143
@pepzzey9143 3 ай бұрын
спасибо, фпс упал с 100 до 60👍
@gudvinzis4479
@gudvinzis4479 3 ай бұрын
СПАСИБО я уже 3 дня мучаюсь спасибо большое
@256bobus
@256bobus 3 ай бұрын
Assets > Create > 2D > Sprite Atlas
@pepel_pubg
@pepel_pubg 3 ай бұрын
А спрайты можно?)) Видео просто супер🎉 Ищу такие же спрайты ❤
@Senshi_theFirstKatana
@Senshi_theFirstKatana 3 ай бұрын
Возмлжно ли как то заменить проверку на ввполненность состояния в Update на событие? Чтобы не проверять каждый апдейт
@user-xk3gw6do5m
@user-xk3gw6do5m 3 ай бұрын
Здравствуйте. Нужно ли включать static batching у родительского объекта в котором дочерние двигаются? и наоборот если родительский объект двигается, а дочерние не двигаются.
@insaneone-7220
@insaneone-7220 3 ай бұрын
Включать только у статичных объектов. Если дочерние двигаются - скорее всего, смысла включать нет.
@phaetonyt9528
@phaetonyt9528 3 ай бұрын
Доброго времени суток, подскажите пожалуйста как сделать такой летающий шарик что бы после него оставался шлейф
@insaneone-7220
@insaneone-7220 3 ай бұрын
С помощью Particle System. Свечение - постпроцессинг (Bloom) и включенный HDR в Graphics Settings.
@john_donne
@john_donne 3 ай бұрын
Использовал кривую в своей игре для прыжка персонажа. Ни один другой метод не подходил, а этот подошел идеально. Спасибо огромное! Досадно, что последний видос на канале был 3 года назад. Надеюсь что с автором все хорошо.
@mr_ivanushka4287
@mr_ivanushka4287 4 ай бұрын
Как в ECS строить неявные зависимости? Как правильно подписывать компоненты на события? Например, как реализовать повышение атаки персонажа при получении урона?
@zhivoder915
@zhivoder915 4 ай бұрын
Четко, лаконично, без воды. Спасибо!
@Acclamator
@Acclamator 4 ай бұрын
Все сделал как на видео, ушел от всех ошибок, а предметы не хотят появляться( что за UI объект был взят за основу для itemsPanel?
@ДанилЛиверный
@ДанилЛиверный 4 ай бұрын
300-500? Я со своими 170000
@FrogGamesOfficial
@FrogGamesOfficial 4 ай бұрын
Вы не знаете почему у меня с каждым разом при нажатии на E прибавляется всё больше и больше предметов?
@user-bc8lg1rd8d
@user-bc8lg1rd8d 5 ай бұрын
очень полезные видео, брат будут ли еще обучающие видео про unity?
@zuzuBoba
@zuzuBoba 5 ай бұрын
2022.3.14F1 нет кнопки после включения в player prefs создания атласа :(
@zuzuBoba
@zuzuBoba 5 ай бұрын
Нашел теперь он лежит в Create/2D/Sprite Atlas
@sagrgywejhxcvx
@sagrgywejhxcvx 6 ай бұрын
зачем это использовать если не для многопоточности...всё испортил
@FAKKER_rap
@FAKKER_rap 6 ай бұрын
Окуклинг Куколдинг каждый раз забивает папку Occlusion миллионами файлов которые нужно удалять по часу вручную 👍 чтобы на 97% не застревало
@sauron2556
@sauron2556 6 ай бұрын
Для тех, у кого будет проблема с объектом Image в InventoryWindow - в том же скрипте прописываем using UnityEngine.UI, в icon.AddComponent <Image> заменяем на <UnityEngine.UI.Image>, и ошибка исчезнет.
@misring4322
@misring4322 6 ай бұрын
Я в ах***е. Я за 6 минут видоса увидел столько полезной и хорошо объясненной информации.... Крепкого тебе здоровья и удачи. А с меня лайк и подписка.
@vitalizahar9343
@vitalizahar9343 6 ай бұрын
2:12 А зачем модификатор new для объявления light? Почитал про него, но так и не понял логики.
@focus.4659
@focus.4659 6 ай бұрын
Ничего не понятно, половину действий пропустил, спасибо!
@Doolpany
@Doolpany 6 ай бұрын
Круто , но не хватает про mesh combiner и атласы для ui . Т.к ладно батчи уменьшать , но проблема идет от draw calls, если их уж слишком много , то буст небольшой даст , в 2 раза это максимум . Но вот если засунуть все меши в одну сетку , вместо 1500 draw calls будет один . Насчет динамических не уверен , решение для динамических в твоем видео оптимально , но все же это тоже можно скомбинировать .
@justbody1053
@justbody1053 7 ай бұрын
2:46 Я только начал разбираться в этой теме и у меня возник вопрос, разве X не должен относится к косинусу и Y к синусу? Косинус является абсциссой X а синус является ординатой Y тем самым должно быть y = mathf.sin/ x = mathf.cos. Понимаю что в данном примере это ничего не изменит ведь что так что иначе будет получатся круговое движение но тогда как же правила написания кода) + если я в чем то не прав то прошу мне объяснить. Ну а в остальном, респект, все понятно и качественно, спасибо)
@NewUser78654
@NewUser78654 7 ай бұрын
Где хранить данные, настройки и прочие вопросы. В чем плох подход с хранением в БД? Все данные храним в БД и получаем всю мощь современной СУБД для хранения, выборки, миграции данных - никаких ограничений и решение любых задач с данными оптимальным способом. Стандарт де факто. Данные из БД один раз загружаем в класс - статический класс, при запуске игры. Доступ к статическому классу и изменения данных в нем, получаем из любого места в коде, без использования объектов, префабов, DontDestroyOnLoad и т.д. При завершении игры сохраняем данные из класса в БД. Идеально. Если нужно, можно писать/читать из БД в любое время.
@LEO-lionn
@LEO-lionn 7 ай бұрын
почему у меня, когда солнце садится за горизонт становится так темно, что не видать неба вообще, в отличие у твоего ночного синего неба?
@Andrei_Zakharov
@Andrei_Zakharov 7 ай бұрын
Очень интересно! Спасибо за видео!
@mrgoodpeople
@mrgoodpeople 7 ай бұрын
Корутины - это добро! Согласен. Постоянно их использую. Одну раз в секунду, вторую раз в 10 секунд. В одной помещены более важные действия, во второй менее важные.
@mrgoodpeople
@mrgoodpeople 7 ай бұрын
Да вообще лучше всегда вместо функций поиска объектов, вроде Find или FindChild использовать ссылки на объекты, которые созданы в начале игры. Да, это немного увеличит требуемое место в памяти, но лишь немного, ведь это просто ссылки, а не полноценные копии объектов.
@mrgoodpeople
@mrgoodpeople 7 ай бұрын
Кстати у меня у одного статистика в Unity довольно бесполезная в плане FPS, потому что очень сильно плавает в зависимости от того, какой объекты выделен в сцене и свойства которого отображаются справа. Я заметил, что при полном снятии выделения FPS может быть ниже, а если выделить какой-то (непонятно даже какой) объект, то FPS вдруг резко повышается, иногда в 1.5 раза, а порой и в 2. Вообщем окно статистики ведёт себя очень странно.
@mrgoodpeople
@mrgoodpeople 7 ай бұрын
Со свойствами Static может быть вот какая проблема. Представьте, что у вас например ависимулятор. Ваш самолёт быстро пролетает тысячи метров. Это приведёт к проблемам с дрожанием камеры. Что делают? Ну обычно все объекты помещают в общий контейнер и периодически его смещают, чтобы координаты камеры не были очень большими. Дрожание пропадает. Но ведь в этом случае у нас ВСЕ объекты на сцене перестают быть статическими, что делать в таком случае. Поможет ли кратковременное (на один кадр) снятие через код свойства Static и возвращение его обратно, чтобы Unity всё правильно обработал?
@mrgoodpeople
@mrgoodpeople 7 ай бұрын
Самое тормозное, что может быть в Unity, это если создавать например для каждого дерева отдельный GameObject. Вот тогда это будет ужасно глючить. Вместо этого нужно сделать всё в одном меше, где каждое дерево будет отдельным треугольником или их группой. Ну и т.п.