Unity и разговоры про разработку. Честно о том, как всё работает на практике: «затыки» в геймдеве, странные решения и почему иногда «неидеально» - это нормально.Научишься понимать логику решений, а не просто повторять шаги из туториалов.
🧐 Как ПРАВИЛЬНО начинать пользоваться нейронками в разработке игр?Хочется, чтобы вы, ребят, переставали бессмысленно вайбкодить недоделанные игрульки как было в одном из моих забавных недавних роликов и смотрели на агентов уже все таки больше как на реальный инструмент разработки умножающий ваши имеющиеся навыкиПоэтому выложил новый видосик, где разбираю первые основные шаги, которых ОБЯЗАТЕЛЬНО надо придерживаться, чтобы стартовать освоение этого инструмента + делюсь опытом из студии👀 Смотреть тут -> https://www.youtube.com/watch?v=5EBTIKAV05kp.s. отпишитесь в комментариях, как вам такой формат видосов, где я прям вживую показываю/рассказываю те или иные штуки?)❗️ p.s.s. ОБЕЩАННЫЕ ФАЙЛЫ ИЗ ВИДОСА В КОММЕНТАРИЯХ К ЭТОМУ ПОСТУ ❗️
Сборка билда - тоже искусство:)❓ Какая проблемаЕсли ты собираешь игру через File → Build Settings → Build и выбираешь все руками - рано или поздно ты что-нибудь забудешь. Не ту платформу выбрал, не тот профиль аддрессейблов, забыл переключить подпись с дебажной на релизную и тп. И узнаешь об этом, когда билд уже улетит на стор или что-то в этом духе. А когда вы небольшой командой работаете, где каждому разрешено билд собирать, то подобных рассинхронов может быть еще больше✔️ Возможное решениеТак вот - всё это можно описать скриптом. Один метод, который сам проходит все шаги сборки в правильном порядке, а ты лишь нажимаешь на кнопку😎 Из чего вообще может состоять сборка?Если разложить кнопку Build на шаги, получается примерно так:👉 Какие сцены кладём в билд👉 Под какую платформу собираем (Android / Windows / …)👉 Какие настройки игрока ставим (бэкенд, архитектура, подпись)👉 Куда и под каким именем складываем готовый файлик👉 И все что душе угодно под ваш проект (сборка addressables, проверка каких-нибудь ассетов, штук зависимых от площадки под выкладку)Самое главное - это вызов BuildPipeline.BuildPlayer. Ему отдаёшь структурку со всеми параметрами и все - билд собирается, примерно вот так://какие-то валидации, сборка addressables, проверки контентаvar options = new BuildPlayerOptions{ scenes = GetEnabledScenes(), // список сцен target = BuildTarget.Android, // платформа locationPathName = GetOutputPath(), // куда положить options = BuildOptions.Development};BuildPipeline.BuildPlayer(options); //делаем билдТ.е. это уже часть рабочего билда с помощью кода. Вешаешь сверху атрибут [MenuItem("Build/Android")] - и у тебя в Unity появляется свой пункт меню, который собирает игру одной кнопкой, всегда одинаково (ну и понятно кастомизировать как угодно этот процесс тоже можно)🧐 Зачем это надо?👉 Повторяемость. Скрипт не забывает шаги и не зависит от того, что ты вчера натыкал в инспекторе.👉 Потом этот же процесс можно испо
2 главных понятия сейчас, чтобы начать НОРМАЛЬНО работать с ИИ агентомДавайте по немногу разбираться и с этой темой - все таки стараемся развиваться во все стороны:)Поддержите 🔥 если подобные посты будут интересны🔣Рабочий контекстСамо по себе программирование агент знает неплохо (т.е. код понятное дело он писать умеет) - но про ВАШ проект он не знает ровным счётом ничего. Ни вашу архитектуру, ни ваш стек, ни общую суть игры с ее масштабом. Поэтому любую поставленную задачу ИИ будет решать "угадывая" то, как решение встроить к вам в игру и какое решение вообще выбрать. Соответственно ваша первостепенная задача - это дать контекст агенту, т.е. дать необходимую информацию для того, чтобы он мог ориентироваться в вашем проекте: стэк, структура папок, важные принятые решения, масштаб проекта и так далее далее. Обычно это задается md файликами (в claude code, например - это claude.md + rules), где описывается все выше озвученное. И после этого шага ИИ уже становится не слепым котенком, а плюс минус готовым к бою инструментом🔣Контекстное окно Это некая "оперативка" агента — то, что он держит в голове прямо сейчас в рамках начатого чата. И сюда влезает ВСЁ: ваши сообщения, его ответы, файлики, которые он прочитал, ошибки, которые вы ему накидали. Т.е. некоторый общий стол ограниченного размера, на котором раскидана вся информация в рамках чатаЧто важно понять: окно не резиновое. Когда оно забивается, то агент начинает делать откровенный бред. Поэтому в длинной переписке агент вдруг забывает с чего всё начиналось, противоречит сам себе и фантазирует. Соответственно такое контекстное окно есть у каждого нового чата свое (хотя там и более сложные схемы с субагентами есть, но не суть) и тут важно за ним следить. Обычно если оно забивается больше чем на 50% я уже стараюсь прыгать в новый чат, потому что деградация на самом деле начинается еще до полной забивки. И вообще стараюсь придерживаться правила 1 задача - 1 чат. Если решение задачи слишком длинное, то процентах на 70 я
🔥 Мысли данными при разработке игры! 🔥На сообщении выше вы накидали кучу реакций, поэтому записал ролик на тему того, как мыслить данными при разработке игр и почему это вообще важно)Немножко теории + 3 практических небольших кейса, раскрывающих ситуацию!Смотреть тут -> https://www.youtube.com/watch?v=horzPtSCS4MПриятного просмотра😍
Одна из самых дорогих архитектурных ошибок, которую я вижу у разработчиков - думать логикой, а не данными.#разработка_на_практикеНемножко поясню:) Любая игра — это набор данных (состояние): позиция, скорость, HP, предметы в инвентаре. Вот это все, скажем так - истина, она просто есть. А есть куча всего остального — анимация движения, полоска здоровья, иконка кулдауна, механика смерти и тд. - это все не истина, а следствие наших данных. Всё это в любой момент можно пересчитать из состояния.🧐 И типичная ошибка вот в чём: мы каждым действием в игре руками дёргаем не только состояние, но и все следствия. Нанесли урон — и тут же побежали обновлять HP-бар. Добавили хил — снова не забудь обновить бар. Потом какой-нибудь сброс здоровья делаем на чекпоинте… (догадайтесь что надо сделать).Т.е. каждое новое действие в игре надо подружить со всеми следствиями и ничего не упустить. Получается паутина, где баг с рассинхроном данных и приуроченных к ним механик — просто вопрос времени.А думать данными — значит перевернуть это. Истина одна — само здоровье. Меняем только его, а хп бар, механика смерти, какие-то условия победы, завязанные на здоровье — пусть сами читают это значение и подстраиваются. Им вообще неважно, почему оно поменялось — урон, хил, что угодно. Важно только то, что данные поменялись. Синхронизировать руками нечего — а значит, и забыть нечего)Более того, если мы придерживаемся подхода с ориентированием на данные, то практически бесплатно получаем какие-нибудь сохранения, ведь нам просто достаточно собрать все кусочки в файлик, и потом загрузить его обратно, а все привязанные к данным следствия будут пересчитываться автоматически❓ Хотели бы полноценный видос на эту тему — с небольшой теорией и примерчиками?) Ставьте огонёк 🔥
Медленно, но верно наращиваем визуал для нашего пати гейма:)Вообще много чего поменялось в проекте, времени все как-то не хватает рассказывать об этом, да и дорабатывать еще много чего надо, но все же постепенно делюсь и собираю фидбек 🔥👀 Зацените промежуточные сцены между игровыми забегами:1-я с лягушкой для отсеивания игроков между игровыми этапами (на подобии сбрасывания игроков в fall guys)2-я с щупалками, как бы является финальной под топ3 игрока - победителяКак вам? Буду рад реакциям и фидбеку в комментариях:)
😎 Запасаемся попкорном 😎Научно-фантастическая разработка игры с ИИ за 3 дня потерпела крах... Или нет?)Как обещал - провел эксперементик с вайбкодингом игры и постарался все завернуть в интересный роликhttps://youtu.be/rVKBPJ8R8h8 - залетайте смотреть и поддерживайте лайком и комментарием!)Буду рад услышать в комментариях поддерживаете ли вы мои выводы:)
Яковлев Илья | Всё про Unity-разработку pinned «Ребят, всем привет! Нужна ваша помощь взамен на подарочек:) Летом планирую больше времени уделять ютубу и обучению, поэтому очень хочется собрать статистику того, что сейчас вообще актуально делать для новых роликов и программ. Я сделал небольшого бота -…»
Ребят, всем привет! Нужна ваша помощь взамен на подарочек:)Летом планирую больше времени уделять ютубу и обучению, поэтому очень хочется собрать статистику того, что сейчас вообще актуально делать для новых роликов и программ. Я сделал небольшого бота - там 4 тестовых вопроса - буду благодарен если перейдете и ответите (1-2 минуты)✨И всем кто его пройдет будет доступна скидка в 15% на следующий новый курс:)🔣Опрос тут Всем спасибо!)
Делаю тут по выходным детерминированный кинематический контроллер персонажа)))Пока реализовал несколько алгоритмов, в том числе определение граней, наклонных поверхностей, ground snapping, collide & slide и некоторые другие. Получается неплохо, но до идеального состояния еще надо поработать, те или иные кейсы периодически вылезаютКак приду к какой-то неплохой версии хотелось бы ролик увидеть? 🔥 По типу какие техники используются, какие алгортимы смотреть для ваших кейсов и тд Или может быть даже как ассетик завернуть потенциально? p.s. зачем детерминированный? Чтобы в мультиплеере спокойно юзать🥰 Если вопросики есть - кидайте в комментарии
✨ Screenshot Saturday! ✨Давненько не устраивали. Думаю многое накопилось:)Делимся и пиарим свои наработки/проекты/идеи в комментариях!🔥🔥🔥p.s. тоже скоро постик сделаю отдельный по тому чем занимаемся:)
🔥 Новый видос по game feel на канале:)Хотелось показать в какую сторону можно смотреть при реализации механик и как "мелкие" решения в совокупности дают крутой результат даже без художников, партиклов и тд. Только кодом:)А дальше можно адаптировать это все под свою игруhttps://youtu.be/xkr-nxsfxIc - смотреть тут:)p.s. проект из видео в комментарии залью к этому посту
Пока вокруг массовая паника про то, что нейронки заменят программистов — у меня в голове сидят две мысли, касаемо нашей сферы🧐 Геймдев — одно из довольно устойчивых направлений к ИИНакидать бэк или фронт для очередного CRUD-сервиса - задача в целом формальная. Есть ТЗ, есть стек, есть понятный "правильный" результат. Нейронка тут уже сейчас справляется неплохо, и дальше думаю будет только лучше.А разработка игр - совсем другая история. Тут программирование стоит на стыке с художкой, дизайном, ощущениями игрока. С тем, что вообще нельзя формально описать. Попробуйте уложить в промпт "сделай так, чтобы прыжок чувствовался сочно" или какие-то нетривиальные баги, которые нейронка не видит (про оптимизацию вообще молчу)Игра - это набор решений, где половина - про вкус, насмотренность и насколько у тебя самого хватает опыта. И программисты в этой сфере тоже зачастую не спецы, которые просто пишут код, а своего рода художники:) Поэтому у геймдева, как мне кажется, есть приличная фора.🧐 Сейчас, возможно, лучшее время для индиИ это прямое следствие первой мысли. Нейронки не отбирают у разработчика игр работу - они дают огромный буст по скорости и твоем скоупу навыков. Можешь накидать простенький интерфейс, простенькие скетчи, концепты, какой-то код, шейдеры и тд.По факту порог входа для инди просел очень сильно. Раньше, чтобы вытянуть нормальную игру, нужно было 6–8 человек. Сейчас 2–3–4 толковых ребят делают то, что раньше тянула студия среднего размера. А какие-то вещи вообще в соло можно вывозить за адекватные срокиТак что если вы думали, не пойти ли в свой проект - окно сейчас открыто куда шире, чем было пару лет назад)❓ Не претендую на истину, поэтому интересно и ваше мнение в комментариях послушатьp.s. эксперимент выше провел - похихикать будет над чем, видос готовим:)))
Как уже горит с таких видосов))0))0)"Сделал игру с ИИ за 3 дня", "Какая нейросеть сделает игру лучше?", "Мой конвеер разработки игр" и прочий шлак))Просто каждый день по 10 видосов в ленте. Уже волей не волей задумываешься, а нужен ли ты в этом мире геймдева, если есть ИИ, делающий игры за наносекунды? Хочу на выходных провести эксперимент, подключить просто клод к пустому проекту юнити и с нуля завайбкодить какой-нить простенький платформер, посмотреть результат))Хотелось бы такой видос глянуть?) - 🔥Просто с нуля, как вот в роликах делают - очень интересно посмотреть какую можно "по приколу" игру получить таким подходомp.s. да, нейронки юзаем в проектах, да, код пишем с ними, но это и близко не уровень "сделать игру с ИИ за 3 дня", которые в подобных видосах проталкивают
Работаю сейчас над небольшим видосом про game feel для программистов. Что-то вроде как чисто кодом добиться крутых ощущений от игры и добавить фидбека, думаю получится лайтово и познавательно, а вы как считаете? Поддерживаете такое?🔥Думаю если такой видос зайдет, то можно будет небольшую рубрику запустить, по типу как без художников можно путем шейдеров/кода/простых партиклов добиваться крутых результатов в проектеp.s. приложил до/после:) Адаптивная камера, тряска, фидбек и прочие мелкие фишки из больших игр