Загрузочный экран и смена сцен в Unity 3D

  Рет қаралды 109,151

Emerald Powder

Emerald Powder

4 жыл бұрын

Как сделать красивое, правильное и быстрое переключение сцен в Unity 3D. С анимацией, полоской и текстом загрузки, и без фриза всей игры. Я расскажу про то зачем и почему вообще в Юнити используются сцены, а потом мы сделаем удобный переключатель сцен с полоской загрузки, научимся делать loading screen'ы с любой анимацией, ну и конечно параллельно покажу вам несколько полезных кнопок, галочек, и хоткеев Unity
Ссылка на скрипт - gist.github.com/Glavak/5eb736...
Patreon канала - / emeraldpowder
Наш Discord - / discord
На этом канале регулярно появляются новые видео, которые позволят тебе научиться создавать игры, или подарят новые идеи и вдохновение, если ты уже умеешь. Подписывайся!
Остались какие-то вопросы, пожелания, или идеи для других видео? Смело пиши в комментарии под видео

Пікірлер: 214
@mikhailk2812
@mikhailk2812 3 жыл бұрын
У вас талант преподавателя. Вы так филигранно балансируете между "водой" и информацией. Спасибо!
@IluXa4000
@IluXa4000 4 жыл бұрын
Ты заслуживаешь больше подписчиков, спасибо за полезные видео
@user-nq3gq4xl6u
@user-nq3gq4xl6u 3 жыл бұрын
+++++++++
@kuper4521
@kuper4521 4 жыл бұрын
Обожаю смотреть тебя, самые лучшие уроки :)
@homelessandhungry4529
@homelessandhungry4529 Жыл бұрын
Отличная подача и полезные видео, спасибо за труды!👍
@cbubg
@cbubg 4 жыл бұрын
Как всегда великолепно, большое спасибо!
@Watchan
@Watchan Жыл бұрын
Если у вас Андройд, то ожидайте это => При загрузке большой сцены на слабых устройствах , с вероятностью 99,9% будет вылетать приложение из-за большой потребности оперативной памяти. Нужно разделять загрузку сцены на этапы. Разрабатывайте игры с умом ❤
@FoubleTerry
@FoubleTerry 4 жыл бұрын
Спасибо за материал, очень интересно!
@valeriavicious2172
@valeriavicious2172 4 жыл бұрын
Вы бы знали, как этот урок вовремя))!Спасибо!!!
@user-kf4ye7zy4z
@user-kf4ye7zy4z 3 жыл бұрын
Крутые видосы, ничего лишнего. Спасибо!!!
@richardgreen9787
@richardgreen9787 3 жыл бұрын
Удачи тебе, отличные уроки👍👍👍
@alexsischin6636
@alexsischin6636 4 жыл бұрын
Интересные темы затрагиваешь из ролика в ролик. Потом как-нибудь всё посмотрю)
@limitlessimagination8946
@limitlessimagination8946 4 жыл бұрын
Супер! Алгоритм ютуба знает, что мне надо.
@toplib5185
@toplib5185 Жыл бұрын
Спасибо автор, я честно две недели думал как это сделать. Как-то на костылях тогда сделал и оставил! Через месяц смотрю твоё видео и офигел у меня половина всего было почти наоборот.
@thequartzsquirrel4105
@thequartzsquirrel4105 4 жыл бұрын
Спасибо за видос , щас буду смотреть
@RimuruDev
@RimuruDev Жыл бұрын
Охаё! на связи Rimuru Dev. Если вы повторили точ в точ за автором и у вас ничего не получилось. Сделайте следующее () => Там где вы жмякаете на кнопку перехода на новую сцену, вместо SceneManager.LoadScene(sceneName); воспользуйтесь SceneTransition.SwitchToScene(sceneName); sceneName - это название вашей сцены на которую вы хотите перейти. Пример: “Level_0” вот так SceneTransition.SwitchToScene(“Level_0”); Проверьте в File=>Build Settings установлены ли ваши сцены. *Данный текст был написан для новичков которые не смогли осилить данный гайд. Надеюсь спас хотя бы пару горящих пуканов интернов/джунов)
@user-ds9zg6fd3s
@user-ds9zg6fd3s 4 жыл бұрын
Спасибо) оч. полезное видео!
@mrminecrafter3829
@mrminecrafter3829 3 жыл бұрын
Спасибо большое автору !!!
@SHILY-PROJECT
@SHILY-PROJECT 4 жыл бұрын
Наааайс! Спасибо большое!
@filimonov207
@filimonov207 Жыл бұрын
Для тех, у кого не перетаскивается Text Loading Percent. Используйте библиотеку using TMPro; далее замените public Text LoadingPercentage; на public TMP_Text LoadingPercentage; Надеюсь помог, желаю всем удачи!
@chirranir
@chirranir 3 жыл бұрын
спасибо, очень полезное видео)
@_sabrano
@_sabrano 4 жыл бұрын
Когда узнал, что прогресс бары фейковые: 😭
@TeamSLywnow
@TeamSLywnow 3 жыл бұрын
Ну нет, можно сделать и настоящий, но там гемора больше
@SUBzOnFire
@SUBzOnFire 3 жыл бұрын
@@TeamSLywnow Ну помоги
@user-io6er2uy6k
@user-io6er2uy6k 3 жыл бұрын
@@SUBzOnFire brackeys
@SchwarzenPuh
@SchwarzenPuh 4 жыл бұрын
Отличный канал,развития и подписоты) Но хотелось бы спросить,будет ли в обозримом будущем туториал или краткий гайд,для тех кто только начал изучение юнити и C+?
@p5ina
@p5ina 4 жыл бұрын
Спасибо за хороший туториал
@starblaze4555
@starblaze4555 4 жыл бұрын
Вышло 4 минут назад))
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Приятно когда в тебя верят уже заранее)
@ilyanazarov7001
@ilyanazarov7001 4 жыл бұрын
Настоящий бриллиант среди русскоязычных каналов по Unity! Только с синглтоном, имхо, слегка небрежно получилось. Наверное, лучше заводить в awake, и делать до конца, с проверкой и dontdestroy, чтоб служить примером для адептов) Спасибо за очередной туториал!
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Спасибо! В Awake задавать instance да, это было бы правильнее. С dontdestroy тут бы не зашло, так как он в обычном канвасе у меня лежит, но если сделать префаб вместе с канвасом то это хорошая идея, тогда можно было бы не таскать его в каждую сцену
@AnderX003
@AnderX003 4 жыл бұрын
12:44 вооооооу, не знал что там есть такая функция. Спасибо
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Пожалуйста, всегда стараюсь побольше фичей которые сам знаю использовать в видео и показывать
@T1m0the0S
@T1m0the0S 4 жыл бұрын
Тоже считаю хранить файлы не по типу, а по сущности профитнее. Спасибо за уроки! Годно вещаешь)
@-unity-
@-unity- 4 жыл бұрын
Спорное утверждение. Допустим, что сначала ты делаешь сущность игрока и забрасываешь туда скрипты. И есть сущность врага, где другие скрипты, которые присущи врагам. А потом тебе вдруг пришло в голову снабдить врагов какой-то функцией, которая уже отлично себя зарекомендовала с игроком. Что ты будешь делать? Дублировать скрипт? Или создашь особый раздел "игрок и враги"? А через месяц ты вдруг решил дополнить игру союзниками, которые не являются игроком и не являются врагами. Дальше как? Ещё один дубль скриптов? Или ещё набор невнятных папок "игрок и союзники", "союзники и враги", "игрок, союзники и враги"... В общем, тупиковое это направление.
@T1m0the0S
@T1m0the0S 4 жыл бұрын
@@-unity- я делаю папку существа. В ней все общие скрипты и папки с файлами конкретно игрока, моба Васи, мода феди и тд. Если в какой то момент мне понравилась фича например моба Васи, я ее код переношу в общие скрипты.
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Тут дело вкуса, но по типу можно и так отстортировать фильтрами (спрайты/меши), так что такие папки по сути дублируют функционал. А по сущностям - хотя бы примерно знаешь где начинать искать, например надо поменять анимацию врага, не вспоминаешь как она сделана, через скрипт или аниматор, а сразу идёшь в папку врага. Хотя по сути можно так же ввести в поиск "Enemy" и получишь всё связанное с врагом, так что тут тоже некоторое дублирование
@T1m0the0S
@T1m0the0S 4 жыл бұрын
@@EmeraldPowder я просто ленивая задница что то искать. Я лучше изначально запарюсь удобно покласть файлики)
@GIGERITYduxast
@GIGERITYduxast 3 жыл бұрын
В игре Superliminal, как по мне, очень интересные экраны загрузки)
@user-jq7wb4uo9l
@user-jq7wb4uo9l 4 жыл бұрын
еще как вариант для загрузки сцены можно создать Task, предварительно загрузить небольшой процент бара для видимости процесса и при загрузке сцены await Task.. передавать заполнение бара лерпом\твином до 1
@shitposting_box
@shitposting_box 4 жыл бұрын
Аниматор и неотключенный канвас будут обновляться каждый кадр, даже если они ничего не воспроизводят. Для анимации UI есть паки вроде UITween, все вещи вроде смены прозрачности или движения влево-вправо в них можно спокойно сделать.
@maxalm3318
@maxalm3318 Жыл бұрын
Поправьте если я не прав, но каждый объект на сцене обновляется каждый кадр даже если ничего не делает? Так в чем исключительность аниматора?
@shitposting_box
@shitposting_box Жыл бұрын
​@@maxalm3318 ​ отключенные компоненты/целые объекты, как правило, не обновляются. Фишка аниматора в том, что даже при отсутствии анимаций он будет дергать отрисовку. А если мы говорим о канвасе размером с экран, то каждый кадр будет перерисовываться пустой экран, зачем? Анимации как правило используются при появлении/исчезании элементов, а кроме этих моментов сам элемент большую часть времени статичен, тогда выгоднее использовать не аниматор, а какие-то штуки вроде UITween, которые могут анимировать объект эти пару секунд и потом не забивать видюху/проц ненужной работой
@vladIslav10722
@vladIslav10722 3 жыл бұрын
Хорошее видео. Но хочется сделать замечание. Singleton - это не совсем то что было на экране, либо я не совсем понял мысль. Паттерн синглтон - паттерн при котором имеется только ОДИН инстанс класса. Реализуется он как раз похожим способом что ты сделал. Есть статическое приватное поле _instance. Есть статическое публичное свойство Instance => _instance ?? (_instance = new Class()) (если инстанс существует, верни его, если нет, создай новый, сохрани его, и верни) и делается приватный конструктор дабы нельзя было порождать новые инстансы из вне. Только использовать конструкцию Class.Instance.
@flypew
@flypew 4 жыл бұрын
Спасибо за урок! Планируешь сделать видео по ECS/Job System в Unity?
@watermelon0guy
@watermelon0guy 4 жыл бұрын
Сам был бы рад об ECS посмотреть. Но система, как говорит сама Unity и ребята проводившие конференцию, говорили, что система ещё немного сырая. Да и пакет ещё в preview версии. А Job System уже достаточно полноценная система. Но думаю лучше сделать видео сразу по обоим системам сразу, когда обе будут допилены
@user-bf3pu1yl7k
@user-bf3pu1yl7k 3 жыл бұрын
@@watermelon0guy а в чем функция job system?
@_T-800_
@_T-800_ 3 жыл бұрын
Автор Видео, привет!). Подскажи, а не проще переход сцены, в частности как у тебя, сделать через способ Таймлайн? В скрипте меньше записей надо делать и манипуляции меньше чем с Аниматором. Интересно твоё мнение:). Метод из видео используешь потому, что так привык или по другим причинам?
@placeforgamestv8663
@placeforgamestv8663 4 жыл бұрын
Спс)
@ftinkere
@ftinkere 3 жыл бұрын
Почти 2 ночи. завтра рано вставать. Я ничуть не геймдевер... И смотрю этот видосик Спасибо за хорошие ночи
@malltshik
@malltshik 3 жыл бұрын
"которое принимает число от единицы до одного" :) 14:05
@tenko4647
@tenko4647 2 жыл бұрын
так, и че?
@amongryzh
@amongryzh Жыл бұрын
@@tenko4647 ну он хотел сказать от нуля до одного.
@RuFrost1
@RuFrost1 3 жыл бұрын
Столкнулся с проблемой зависания LoadSceneAsync на android, так как автор видео меня очень заинтересовал подобным способом загрузки, отказываться от него я не хотел. Пришлось погуглить, что бы избежать проблемы зависания. Немного доработал код согласно официальной документации и проблема решилась. Вот ссылка для тех кто с этим столкнулся. gist.github.com/devskgames/811475dea5f37d020b785fbd9a7d76f3 Спасибо автору за изысканные решения, ваши видео очень помогают в разработке!
@StomperFromChildhood
@StomperFromChildhood 4 жыл бұрын
Было бы очень здорово увидеть гайд по созданию клона Subway Surfers(управление свайпами по линиям, движение мира на игрока(а не игрока по миру), генерация препятствий и т.д) Такого не планируется?
@kafif28
@kafif28 4 жыл бұрын
Видео: 3 минуты назад Комменты: классное видео
@SHILY-PROJECT
@SHILY-PROJECT 4 жыл бұрын
Просто здесь автор фигни не снимает, так что мы заранее знаем, что классное))
@kafif28
@kafif28 4 жыл бұрын
@@SHILY-PROJECT это да)
@azret-magometov
@azret-magometov 4 жыл бұрын
Здоров, дружище, не знаю твоего имени, но видео у тебя супер! Хочу тебе предложить перенять названия для переходов из Андроидной разработки. У нас эти методы помечаются как enterTransition для входа и exitTransition для выхода. Может понравится ¯\_(ツ)_/¯
@big_katlet
@big_katlet 2 жыл бұрын
Такое качество, а так мало подписчиков и лайков. Успехов тебе и спасибо за видео!
@VladikFoxGames
@VladikFoxGames 2 жыл бұрын
65К это не мало скажу честно
@RavenG102
@RavenG102 4 жыл бұрын
Отличное видео, спасибо за труд, было бы интересно посмотреть о переносе данных из сцены в сцену. Вроде перемещения игрока по комнатам лабиринта, если уже есть что то подобное на канале, поделитесь ссылкой плз. :3
@mymirwastaken
@mymirwastaken 2 жыл бұрын
Если переменные, то просто после public делаешь static и там дальше тип м название. Потом из другого скрипта или сцены вместо обычного названия переменной пишешь имя скрипта и через точку название переменной. Всё
@user-ed3hp3pr6z
@user-ed3hp3pr6z 4 жыл бұрын
Привет, можешь, пожалуйста, сделать видео о том, как можно с помощью некого инструмента (например кирки или бура, неважно), изменять геометрию террейна?
@MrZik888
@MrZik888 4 жыл бұрын
Сделай видос про Unity UI Builder. Тема то свежая.
@user-in9jv9rt4o
@user-in9jv9rt4o 4 жыл бұрын
Можешь-ли ты сделать видеоурок по теме скриптов, выполняющихся в редакторе. Я знаю, что такое есть, но не знаю, как это реализуется. Для примера, можно показать тайл из урока по процедурной генерации. А именно, сделать какой-то скрипт, который будет на тайле, который, по нажатию кнопки в инспекторе, будет заранее просчитывать боковые стенки и записывать информацию оттуда в массив, находящийся в скрипте. Прям больно становится, когда вижу, сколько расчетов происходит при запуске этой сцены. Для того, чтобы наполнить урок больше, можно рассказать ещё про какие-то способы применения и особенности этого метода. Заранее спасибо
@leminc2815
@leminc2815 4 жыл бұрын
Отличные уроки, спасибо. Главное, что часто выходят. А можешь записать урок, как настроить визуал код, чтобы методы юнити показывал, я чет пробовал и не вышло ничего.
@funnytime4372
@funnytime4372 4 жыл бұрын
Держи: kzfaq.info/get/bejne/b62jiZyF1b3Yqqs.html
@leminc2815
@leminc2815 4 жыл бұрын
@@funnytime4372, попробую. Обнял :)
@Gold-xu9ku
@Gold-xu9ku 3 жыл бұрын
Самый интересный экран загрузки, на мой взгляд, какой-нибудь интерактив, ну это для долгих загрузок - первых запусков, обнов и тд. В БДМ, например, flappy bird была и потом ещё мини-бонусы в игре дали)
@EmeraldPowder
@EmeraldPowder 3 жыл бұрын
Да, flappy bird точно можно вставить. Но вообще когда вижу такое в играх задумываюсь что может им стоило подумать как ускорить эту загрузку, а не развлекать игрока)
@FOX_YouTube
@FOX_YouTube Жыл бұрын
А что если пишет: не содержит определения для fillAmout и не удалось найти доступный метод расширения fillAmout, принимающий первый аргумент типа AsyncOperation. Вам не хватает директивы using или ссылки на сборку?
@summersaychannel5157
@summersaychannel5157 4 жыл бұрын
Насчёт отображения fillAmount: надо progress / 0.9f просто так 100% не будут отображены. UPD: даже на скорости 0.25х нет 100%
@user-wt8eg1fw3e
@user-wt8eg1fw3e 4 жыл бұрын
Спасибо за урок, не могли бы вы создать видео на тему "бесшовный открытый мир на unity3d"?🙏
@Lamanho04
@Lamanho04 4 жыл бұрын
Ты что Майнкрафт хочешь создать?
@TaiKomarinsky
@TaiKomarinsky Жыл бұрын
Есть какой-то скрипт на кнопке? Ты добавил префаб в сцену меню, но никак не привязал работу скрипта к кнопке. Кнопка телепатически воспроизводит скрипт?
@user-me4fx2jv3m
@user-me4fx2jv3m 3 жыл бұрын
Спасибо тебе за такой ролик, сам бы точно не сделал) И немного критики, я думаю тебе стоит называть свои переменные немного покороче
@sevatar2619
@sevatar2619 4 жыл бұрын
Я разрабатывал свою игру около года, несложная аркада для андройда. Сейчас у нее всего по паре новых игроков в день (чего тоже добиться было трудновато). Мне хотелось бы узнать, каким образом можно продвинуть свое приложение? Возможно есть какие то тонкости настройки в гугл плей консоль? Или как заинтересовать издателя? Каких издателей посоветуете?
@OdemGeek
@OdemGeek 4 жыл бұрын
14:05 чтож бывает:)
@Netry27
@Netry27 4 жыл бұрын
А можно видео на тему публикации приложений в app store. Статьей много и все говорят об разном и не всегда получается с первого раза выложить. Все эти сертификаты, вечно забываешь, какой куда сувать и какой нужно создать. Буду благодарен за этот материал.
@Abuir1
@Abuir1 6 ай бұрын
Если у вас при попытке перехода игра застрявает на чёрном экране, проверьте, *все ли нужные вам сцены включены в билд!* Я дважды всё повторил в точности, убрал все лишние анимации (и свои, и автора) даже, чтобы остался только рабочий скелет, но у меня была вот такая вот проблема. А ещё, проверьте, не перепутаны ли у вас анимации выключения и включения. На всякий. А то неприятно будет, поверьте.
@qnet1080
@qnet1080 4 жыл бұрын
Привет, вы очень хорошо объясняете. Спасибо за такой канал. Смотрю каждое видео и хоть знаю это материал, но каждый раз подчеркиваю что то новое. Однако можно более серьёзные вещи . Допустим не знаю как для других хотел бы послушать про шейдеры, про любые. Про arcore углубленно. Про методы редко используемые, лайфхаки, интересные алгоритмы.
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Спасибо! Про шейдеры думаю будут ещё видосы, с ними много идей что можно сделать, и про всякие лайфхаки и методы много всего копится пока работаю с Юнити. Про arcore вот только ничего не знаю
@gangli809
@gangli809 4 жыл бұрын
Привет, я не могу найти инфу о том, какие требование с технической точки зрения при попытки портирования игры с ПК на android, а также какие есть нюансы с изображениями? HELP!
@TheDasMatze
@TheDasMatze 4 жыл бұрын
Спасибо за видео. Очень полезно. Подскажи, пожалуйста, как выводить на экран ингейм FPS?
@quantdev
@quantdev 4 жыл бұрын
Зачем?
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Самое простое - (int)(1f / Time.deltaTime). Но по хорошему каждый update увеличивать счётчик на единицу, и каждую секунду выводить его и сбрасывать
@SmilleBuer
@SmilleBuer 4 жыл бұрын
я наверное никогда все же не стану кодером на Unity... (просто команды понимаю механику скрипта и так далее но как раставлять скобки и почему никак не допираю, максимум что получается учить это python так как их там меньше), но все равно спасибо за твои видео очень расслабляет и информативно! продолжай в том же духе!
@user-kn9jr4mw5o
@user-kn9jr4mw5o 4 жыл бұрын
А что не так со скобками?
@-unity-
@-unity- 4 жыл бұрын
@@user-kn9jr4mw5o да, действительно! Скобки - не самая сложная вещь в программировании.
@Puxatru
@Puxatru 4 жыл бұрын
Спасибо за видео. Расскажите, как правильно работать с Additive сценами. Особенно интересует, как избавиться от ошибки с несколькими AudioListener одновременно и как грамотно выключить камеру одной сцены и переключить на другую, чтобы получилось бесшовно и без ошибок отсутствия камеры.
@T1m0the0S
@T1m0the0S 4 жыл бұрын
Может просто переносить камеру между сценами? И в каждой сцене добавить объект, который в методе старт будет перемещать трансформ камеры по нужным координатам? 🤔 Костыль, конечно, но думаю поможет.
@ilyanazarov7001
@ilyanazarov7001 4 жыл бұрын
С какой целью Вы хотите использовать additive? Переходы между камерами лучше делать в Cinemachine. Сами камеры и AudioListener при этом всегда держать в основной сцене или в отдельной сцене, которую держим постоянно загруженной.
@Puxatru
@Puxatru 4 жыл бұрын
@@ilyanazarov7001 Схема была такая: 1. Сцена с главным меню (Камера, UI, основные менеджеры приложения (реклама, ачивки и т.п.) 2. Сцена с персонажем и уровнем (3D камера, контроллер персонажа и т.п.). Сцену 2 загружал аддитивно, чтобы работали менеджеры приложения, но столкнулся с ошибками для 2 камер. Не получилось отключить одну и сразу же включить другую, не получив ошибку с AudioListener. Правда, я переключал сцену в корутине, дожидаясь ее полной загрузки. В принципе, ошибка эта не страшна и всего 1 раз выходит. Но оказалось, что в webGL билде она вешает приложение.
@JON-dj5uy
@JON-dj5uy 4 жыл бұрын
Привет, спасибо, можешь сделать перенос данных между сценами, переносить геймобжекты, стринги,инты .
@kawaikami
@kawaikami 4 жыл бұрын
Даже в видео на 10:19 то, что мы, большие дяди, называем синглтоном 😂 То есть для начала советую создать какой-то класс GameManager, где будет статическое поле Instance. В методе Start напиши: if(Instance == null) { Instance = this; DontDestroyOnLoad(gameObject); } else GameObject.Destroy(gameObject); Кинешь этот скрипт на объект на первой сцене, при переходе на другую он не будет уничтожаться. Теперь в нем ты можешь объявлять другие скрипты и обращаться к ним будешь так: GameManager.Instance.Имя_скрипта
@ilyanazarov7001
@ilyanazarov7001 4 жыл бұрын
@@kawaikami Синглтоны хорошо использовать только в совсем мелких проектах. Несколько таких менеджеров, и уже начнется боль. Вот шикарная презентация, как люди изящно решают эту и другие задачи с помощью Scriptable Objects: kzfaq.info/get/bejne/qMeBZsx5zavDe58.html
@trostlast1446
@trostlast1446 4 жыл бұрын
@@kawaikami Господи 😍😍😍пупсик я тебе готов дать, спасибо этот код мне как раз нужен 😍❤️спасибооооо.
@kawaikami
@kawaikami 4 жыл бұрын
Пхахаха, рад что помог кому-то. В архитектуре, которую использую я синглтон всего один. Это как точка входа в приложения, в нем уже менеджеры, в менеджерах контроллеры и тд. Спасибо, почитаю как со скриптбл объектами там делают.
@vadimkrakhmal
@vadimkrakhmal 3 жыл бұрын
@@ilyanazarov7001 а еще можно заюзать Zenject) Хотя, честно говоря, я не совсем понимаю в чем такое уж прям зло синглтонов. Для менеджеров и других штук которые гарантировано существуют в одном экземпляре вроде норм. Я, например, раньше ссылки на префабы хранил в синглтон-контейнерах ( чтобы не через Resource.Load ), сейчас то же самое только через зенджектовский BindInstance.AsSingle, разницы вроде нет особой для работы.
@wi5p916
@wi5p916 2 жыл бұрын
Здравствуйте, сделал по видео ролику экран загрузки, но использую для красивой анимации перехода в настройки, суть в том что если зайти на уровень, выйти в меню и зайти в настройки то сама игра зависает, то есть анимация не запускается, но в юнити написано что сцена грузится и так может до бесконечности, но если изначально зайти в настройки то все хорошо. Возможно есть предположения с чем это может быть связано?
@andrey.shpilevoy
@andrey.shpilevoy 2 жыл бұрын
А можешь впредь делать захват екрана в меньших размерах? На планшете несмотрибельно.
@TheMrKMen
@TheMrKMen 2 жыл бұрын
А была бы необходимость создавать билд каждый раз, если по окончании загрузки просто добавить "Нажмите клавишу, чтоб завершить загрузку"?) Ну типа там есть allowSceneActivation, и его можно ставить на true при нажатии кнопки, или это не сработает, и всё равно надо билд делать?
@insaneone-7220
@insaneone-7220 4 жыл бұрын
Отличный ролик) Я бы предпочел просто крутилку на загрузочном экране сделать, т.к. возвращаемый Unity процент загрузки очень резко возрастает, и реальной информации о прогрессе загрузки игроку почти не даёт.
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Спасибо! Да, если загрузка так как на видосе работает, то можно и крутилку. Но точно помню что у меня в каком-то старом проекте она прямо как часы прогресс возвращала, то ли там ассеты получились все похожего объёма, то ли просто разбиты на много файлов были P.S. канал у тебя годный)
@insaneone-7220
@insaneone-7220 4 жыл бұрын
@@EmeraldPowder да, наверное равномерно были распределены ресурсы, я на самом деле особо не вникал в алгоритм подгрузки данных, как-то не надо было) Спасибо за теплый отзыв по каналу)
@user-jl3zy4lq3x
@user-jl3zy4lq3x 4 жыл бұрын
По Братски, подскажи, как мне реализовать в онлайн игре на PUN2 и Unity 3D синхронизацию IK очень долго ищу, не смог найти. Пишу тебе потому что у тебя есть курс по PUM2
@LEXYteam
@LEXYteam 4 жыл бұрын
Я всегда думал как игра понимает сколько ей осталось подгрузить ресурсов, когда рисуется прогресс бар. Оказывается довольно приблизительно. И у нас тут быстро скакнуло до 90% и немного подождало, а я видел плавные варианты. Значит оно зная, что ресурсы будут грузиться 3 сек + - брали и делали бар длительностью 5 сек например, и плавно рисовали прогресс бар, зная, что на загрузку нужно где-то 3 сек. В зависимости не от реального положения дел, а просто по времени. Очень интересно, но можно было немножко и помедленнее, на такой скорости не понятно то ли слушать и понимать о чем идет речь, то ли смотреть) Спасибо, одним вопросом стало меньше.
@LEXYteam
@LEXYteam 2 жыл бұрын
@Даниил Глаголев там же есть update и fixed update, если делать через апдейт, да оно может быть по разному, где-то быстрее, где-то медленнее. Через fixed update на любом компе будет одинаково, потому что там зависит не от частоты, а от времени. Так что можно какой-то средний промежуток подобрать и будет норм. Быстрый комп немножко подождет, у медленного полоса дойдет до конца и чуть позже будет переход.
@Veyron104
@Veyron104 4 жыл бұрын
всё вроди хорошо, но можно ли сделать загрузку более плавной?) У меня дофига времени тратится на создание навмеша, можно ли показать его загрузку? Во время создания навмеша телефон телефон как-будто повисает. Хм посмотрел видео и получается что никак не сделать то, о чём я говорил)
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Смотря чем навмеш создаётся, если прям фризит и нет никакой асинхронной функции, то наверное не получится. А если есть какой-то вариант не блокировать основной поток, то можно показать полоску, даже если не знаем настоящий прогресс, просто сделать чтобы она двигалась с определённой скоростью, и к концу бара замедлялась
@user-sc5tj9qz5n
@user-sc5tj9qz5n 4 жыл бұрын
В 2020-м пора уже делать бесшовные переходы. Но за видосы спасибо, много полезного :)
@vefrex
@vefrex 3 жыл бұрын
С тобой можно стать настоящим программистом и получить приглашение от Rockstar games, Valve, Ubisoft, Electronic arts.
@user-xo9ks9bc6j
@user-xo9ks9bc6j 4 жыл бұрын
если загрузка уровня предполагает время в 20-30 секунд.. я бы сделал экран инвентаря или какието дополнительные подсказки или хитрости для игрока. так игрок бы провёл это время с пользой. ещё можно сделать полет камеры гдето над облаками.. или ещё чтото. идей много
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Кстати инвентарь интересная идея, нигде вроде бы такого не видел, но вещь была бы полезная игроку! Подсказки-советы это классика, да, они тоже хорошо смотрятся
@dontarrrrrrrr
@dontarrrrrrrr Жыл бұрын
Какой редактор кода вы используйте?
@exonti
@exonti Жыл бұрын
Rider
@MrKingofTiger
@MrKingofTiger 4 жыл бұрын
Unity использует .NET и у него интересный способ билдить. Он делает промежуточный код, а во время запуска он по сути компилирует проект. Это решает вопрос кроссплатформенности, но получается проблема первых загрузок. Типо запустил 1 раз - долго. На второй - уже быстро.
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Может быть в этом дело. Хотя скриптов почти нет на той сцене, так что скорее всего это просто какие-то ассеты не выгрузились, потому что сцена меню почти ничего не содержит
@orimaha8032
@orimaha8032 4 жыл бұрын
Ну по идеи после первой загрузки сцены в билде она улетает в оперативку и там чилит, при повторном входе в сцену она быстро её достает из этой оперативки. Могу ошибаться, но вроде так.
@filipp-pro
@filipp-pro 2 жыл бұрын
Мы делали игру матч-3 + ферма, и после матч-3, выдавалась награда и ферма грузилась секунд 5. Ну я как гейм-дизайнер попросил программистовЮ чтобы после победы на уровне игроку выдавался сундук, для открытия которого нужно дождаться "прогресса взлома" (на фоне загружалась ферма), когда ферма загружалась - сундук открывался, из неё вылетала награда - было клёво. Пришли заказчики, сказали что им не нравится что сундук с наградой так долго открывается, что открытие должно быть мгновенным, и вернулись к варианту скучного экрана загрузки. -_-
@crusader347
@crusader347 7 ай бұрын
Помогите, загрузка уровня через главное меню проходит успешно, но когда загружаю главное меню с уровня, то он загружается, почему-то, не корректно. Вместо меню черный экран.
@lora6938
@lora6938 2 жыл бұрын
Здравствуйте! А возможно сделать появление сцены с задержкой? Что бы не было видно действий начальных которые в сцене и которые я не хочу чтобы было видно? Буквально на 3 секунды что бы сцена побыла в темноте при этом она уже загрузилась но ещё не показывалась.
@Darth_Ejecutor
@Darth_Ejecutor 7 ай бұрын
Можешь анимацию с чёрным экраном на 3 секунды на новой сцене добавить.
@limitlessimagination8946
@limitlessimagination8946 4 жыл бұрын
Emerald Powder, а можешь сделать видео на одну тему? Я много где ищу, но нигде нету на это ответа, может ты знаешь? Можно ли в юнити, сделать перед возможность давать игроку выбирать, сколько ОЗУ выделить на работу игры(пример такого - это майнкрафт(больше я такого нигде не видел)). А в самой игре потом где-нибудь выводить то сколько ОЗУ по итогу выделено на игру, и сколько она потребляет в realtime.
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Задавать скорее всего нельзя, это фишка java, чтобы в C#/Mono такое было я не слышал. А вот получить сколько используется скорее всего можно через стандартную библиотеку, наверное как-то так forum.unity.com/threads/how-to-get-entire-memory-usage-at-runtime-in-game-build.465564/
@limitlessimagination8946
@limitlessimagination8946 4 жыл бұрын
@@EmeraldPowder спасибо. Действительно, получилось через profiler вывести. Оказывается все было так просто.
@user-qp5kz7fr5v
@user-qp5kz7fr5v 3 жыл бұрын
Какую IDE ты используешь?
@EmeraldPowder
@EmeraldPowder 3 жыл бұрын
Jetbrains Rider
@noneyaroslav3109
@noneyaroslav3109 4 жыл бұрын
Сделай гайд по рендерингу. ПЖ
@user-ee5jz3pq7d
@user-ee5jz3pq7d 4 жыл бұрын
Как идея насчет видеоуроков по Shader Graph Unity?
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
По нему у меня только старенький видос про пиксельный огонь, если придёт в голову какой-то крутой и оригинальный эффект - буду делать ещё
@VLADGOGame
@VLADGOGame 5 ай бұрын
А загрузочный экран нужен только для красоты или он чем то помогает ?
@nomad4435
@nomad4435 4 жыл бұрын
Надо было бы упомянуть что все файлы из папок Resourсes попадут в билд
@mixa8303
@mixa8303 Жыл бұрын
Что это за среда разработки?
@goodcontent-gcrussian4435
@goodcontent-gcrussian4435 2 жыл бұрын
14:06 принимает число от единицы до одного
@thegod8344
@thegod8344 3 жыл бұрын
@Malloriak
@Malloriak 4 ай бұрын
Не очень понял, как Юнити проверяет используемость ресурсов? если они могут загружаться динамически из Resources.Load по имени?
@gwenthetodeke
@gwenthetodeke Жыл бұрын
Не получается создать второе соединение New State. Кнопка Make Transition на второй раз просто отсутствует в списке. Что делать?
@thv602
@thv602 3 жыл бұрын
добрый день! добавил ваш скрипт в свои сцены как описано в видео(код скопировал с гитхаба, объекты и префаб сделал, аниматор настроил). Переход из меню в игровую сцену работает, из игровой сцены обратно - нет. В режиме Game в Editore в иерархии появляется объект Menu(isLoading) и больше ничего не происходит. Ни ошибок ничего. При повторном нажатии на кнопку выхода - появляется второй такой же объект Menu(isLoading) в иерархии и ничего больше не происходит. Подскажите, в чем может быть проблема? Думал ошибка в синглтонах (левел контроллер реализован через синглтон), переписал ваш код на публичные классы с вызовом через гейм обджекты на сцене - все тоже самое.. Скорее всего что то с подгрузкой сцен через async, но знаний не хватает понять что именно идет не так.
@thv602
@thv602 3 жыл бұрын
почитал про синглтоны - проблема точно не в них. Проверю еще раз, возможно, где -о ошибся с названиями булевых операторов и где-то не срабатывает переключение.
@thv602
@thv602 3 жыл бұрын
не срабатывает триггер sceneOpening при переходе на новой сцене, не срабатывает функция в конце анимации.
@sergeymild
@sergeymild 4 жыл бұрын
Есть вопрос, можно ли как то загрузить сцену с сервера и перейти в неё?
@user-hd6ke1bh9r
@user-hd6ke1bh9r 4 жыл бұрын
кури AssetBundles
@MrKingofTiger
@MrKingofTiger 4 жыл бұрын
Здравствуйте. Встретился с задачей сделать плейлист с музыкой, который меняет музыку по окончанию на следующую или случайную в списке. Пару дней копаюсь в Гугле и на Ютубе и все только рассказывают как просто добавить музыку на сцену. У вас есть мысли по этому поводу или желание сделать ролик? Если есть материалы почитать, то с радостью ознакомлюсь
@EmeraldPowder
@EmeraldPowder 4 жыл бұрын
Можно просто использовать один AudioSource, навесить на него скрипт с массивом AudioClip'ов, и в этом скрипте в Update проверять, если этот AudioSource.isPlaying == false, задавать ему случайный трек и вызывать Play. И ещё убрать у него галочку loop, чтобы когда трек закончится, он остановился, и isPlaying стало false
@MrKingofTiger
@MrKingofTiger 4 жыл бұрын
@@EmeraldPowder Спасибо большое. Очень выручил
@kyta1840
@kyta1840 2 жыл бұрын
Автор куда кидать menumanager?
@6dfg315
@6dfg315 3 жыл бұрын
При этом необходимо переключать сцены с помощью SwitchToScene , а не LoadScene и ни в коем случае не в методе OnGUI, у вас все красиво, просто вдруг кто-то решит, что все будет работать и без этого
@kinter7863
@kinter7863 3 жыл бұрын
Всё отлично, но очень быстро
@user-vw8wc3ls1q
@user-vw8wc3ls1q Жыл бұрын
20 минут на создание экрана загрузки. Куда уж медленнее, брат?😅
@3D_Emergency
@3D_Emergency 2 жыл бұрын
А как открыть сцену созданную на другом компе?
@ban7859
@ban7859 3 жыл бұрын
что если пропала вкладка сцен????? как её вернуть,помогите пожалуйста
@yesiamppl
@yesiamppl Ай бұрын
помогите я сделал точно также но без плавного перехода, и когда сцена загрузилась то у меня какая-то беда со светом, то-есть я уже даже пост процессинг отрубил но свет при переходе на сцену становиться зеленоватым и я это уже на сцене никак не могу пофиксить, и причем если я начну игру прямо с основной сцены то такого бага нету
@holololo4451
@holololo4451 2 жыл бұрын
Я так и не понял куда кидать скрипт MenuManeger
@user-ml5tn8qn8j
@user-ml5tn8qn8j Жыл бұрын
у меня при старте загрузочный экран висит, не смотря на то, что он находится в idle состоянии
@unitranslater
@unitranslater Жыл бұрын
Мне очень интересно как реализовать переход межу сценами как у God of War или третий асасин там во времяя загрузки сцены ы можешь бегать по определённой зоне слушать всекие реплики и тд
@EmeraldPowder
@EmeraldPowder Жыл бұрын
По идее можно на этом экране загрузки любую мини- (или не мини) игру сделать. Но скорее всего она будет тормозить, по крайней мере если обычным юнитиевским LoadSceneAsync пользоваться
@unitranslater
@unitranslater Жыл бұрын
@@EmeraldPowder Может Unity не оптимизирована под данные задачи, а вот UE скорее всего подойдёт
⚡ Всё про события в Unity 3D
21:38
Emerald Powder
Рет қаралды 102 М.
🤏 Оптимизируем игру до 2 КИЛОБАЙТ
28:16
Emerald Powder
Рет қаралды 1 МЛН
Was ist im Eis versteckt? 🧊 Coole Winter-Gadgets von Amazon
00:37
SMOL German
Рет қаралды 11 МЛН
Tom & Jerry !! 😂😂
00:59
Tibo InShape
Рет қаралды 58 МЛН
We Got Expelled From Scholl After This...
00:10
Jojo Sim
Рет қаралды 73 МЛН
⛏️Minecraft на Unity3D. Часть 1
18:43
Emerald Powder
Рет қаралды 158 М.
Angry Neighbor Source Code | Unity 3D
3:03
FulGer
Рет қаралды 137
Fade или затемнение экрана между сценами в Unity
19:49
Лавка Разработчика
Рет қаралды 9 М.
Сохранение открытых уровней в Unity
22:43
Graphical Design
Рет қаралды 58 М.
Как ОПТИМИЗИРУЮТ ИГРЫ
11:00
Atix
Рет қаралды 370 М.
Was ist im Eis versteckt? 🧊 Coole Winter-Gadgets von Amazon
00:37
SMOL German
Рет қаралды 11 МЛН