Григорий Дядиченко

@dev_game


Разработчик игр, интерактивных стендов и интерактивной рекламы. Эксперт в области интерактивов и XR.

100+ проектов за 5 лет.

По вопросам сотрудничества писать: @it_bizdev
Фрилансер или ищешь подработку? Заполни форму https://forms.gle/ruA17Tn7cER76CFfA

Григорий Дядиченко

22 Oct, 11:05


Миграция с Built-in на URP
https://www.youtube.com/watch?v=1s1t4c61MVA

Любопытный вебинар разбирающий практику других студий, причины и способы миграции на URP. URP штука в целом удобная, так что видео довольно полезное.

Долгое время я не переходил из-за базы созданного для билд ина и многих вопросов на тему «как сделать». Скажем тот же AR портал потому что было непонятно как работать со стенсил буффером на URP. Но сейчас и обучающих материалов и ассетов поддерживающих URP не мало.

#новости

Григорий Дядиченко

14 Oct, 18:13


Шейдер драгоценного камня
https://80.lv/articles/beautiful-real-time-faceted-gemstone-in-unity/

Классный эффект драгоценного камня в реальном времени. Вообще все эффекты с рефракцией на мобильных устройствах это интересная тема, так как грабпасс довольно дорогая штука на том же андроиде. Тут разработчик сделал просто крутые блики и эффекты аля внутренних переотражений, которые делают камень похожим на настоящий. Но те же бриллианты без эффекта радужности и рефракции всё равно выглядят немного неестественно. Тут выглядит круто, но интересно было бы глянуть, как оно будет выглядеть на не монотонном фоне и на сколько бросаться в глаза.

Я в своё время много игрался с экономией в подобных ситуациях. Даже когда-то давно написал статью про акрил и выложил в доступ исходники. Там основная концепция что мы берём не грабпасс, а просто предыдущий кадр рендера для рефракции. Этот подход значительно дешевле, но и в свою очередь обладает рядом ограничений.

#новости

Григорий Дядиченко

14 Oct, 11:58


Небольшая библиотека для твинов
https://gist.github.com/FronkonGames/ae3d0d613ac4ea6738e288c0a490c020

Так как я в основном занимаюсь веб проектами такие библиотеки — полезное. Дутвин конечно прекрасен, но иногда нужны легковесные простые твины.

#интересное

Григорий Дядиченко

11 Oct, 12:01


Runtime Fee отменена официально!
https://unity.com/ru/blog/terms-update-runtime-fee-cancellation

12 сентября Unity опубликовало анонс о том, что они отменят Runtime Fee, а сегодня пункты связанные с этим убрали из пользовательских соглашений. Ну наконец-то. Выдыхаем 🙂

Из любопытного что я пропустил Unity 6 наконец-то выходит 17-го октября, так как это сказано между строк видимо это анонсировалось раньше. Что можно сказать - наконец-то. Бетка 6-ой на удивление стабильна и мне нравится, надеюсь в релизе Unity не сломает что-то в редакторе. Увеличены пороговыезначения по подпискам, что в паре с тем что 6-ой версии на персонал лицензии можно отключать сплеш скрин очень радует.

В общем всё хорошо, работаем дальше. Есть конечно легкий осадочек, хотя как говорится "ложки целы". Ну надеюсь больше такие приколы не повторятся.

#новости

Григорий Дядиченко

11 Oct, 09:46


Разрушаемая земля с помощью компьют шейдеров
https://www.youtube.com/watch?v=9rdEWotaiGM

Симпатичная симуляция, да и ассет не особо дорогой чисто покопаться. Как применимый для чего-то я бы его не рассматривал, так как со всеми подобными симуляциями вопрос всегда один. Хорошо, рисовать мы научились и работать с коллизиями в рамках симуляции. А как обрабатывать физику других объектов? И обычно в этот момент начинаются пляски с бубном и оказывается что подобный класс ассетов это не "поставил и оно работает".

Но покопаться с точки зрения понимания тех же компьют шейдеров дело полезное.

#новости

Григорий Дядиченко

10 Oct, 13:24


Плексус частицами: Часть 3
https://mirzabeig.substack.com/p/unity-tutorial-particle-plexus-part-3

Вообще забавно что плексус это очень часто используемый эффект. Поэтому туториал по нему пригодится.

А вообще это чисто повод написать пост, что я вернулся из своего отпуска. Я месяц пропутешествовал по европе. Там было много забавных историй. Потом пару недель приходил в себя параллельно делая рабочие дела. И при этом особо энергии на блог не оставалось. Видимо отходняки после большого приключения :)

Но теперь я намерен снова начать его вести. Надо бы придумать что такого интересного рассказать. Помимо того, чтобы держать всех в курсе на тему интересностей в мире Unity.

#новости

Григорий Дядиченко

17 Sep, 10:56


Магия в реальном Времени: Плавные переходы между 3D-сценами, Созданные с помощью Unity
https://80.lv/articles/real-time-magic-seamless-3d-scene-transitions-made-with-unity/

Sakura Rabbit продемонстрировала новый шейдерный FX в реальном времени. FX создан в честь фестиваля середины осени в китайской культуре. FX позволяет плавно переключаться между двумя различными средами.

Как всегда то что делает сакура выглядит безумно красиво.

#новости

Григорий Дядиченко

13 Sep, 06:23


Runtime Fee отменили таки
https://unity.com/ru/blog/unity-is-canceling-the-runtime-fee

Забавно. Ровно год прошел с момента, когда Unity устроили скандал индустриального масштаба и наконец-то он разрешился. Runtime Fee больше не будет.

Если честно лучше бы подняли цену плюса и всех подписок, чем делали такой финт ушами год назад. Хотя интересно соотношение пользователей про и энтерпрайс, и пользователей плюса. Но для нас, простых смертных из шестой версии уже убрали сплеш скрин из пёрсонал версии, а лимит по выручке теперь 200к$. Что не может не радовать.

#новости

Григорий Дядиченко

11 Sep, 18:39


Unity шейдер граф — шейдер Голограммы
https://youtu.be/gByLTLf0snY?si=wsq37QPoRNUjHO02

Туториал от Габриэля Агуиара про голограммы. В целом голограммы можно сказать «не устаревающая классика». Туториал рассказывает о том, как сделать эффект голограммы. Из забавных идей в видео добавляющих больше «ретровости» мне понравилась фишка докинуть туда вертекс дисплейсмент. А так, всё как обычно. Хочется научиться делать классный VFX — лучший путь по делать разное по туториалам, чтобы потом научиться делать своё.

#новости

Григорий Дядиченко

11 Sep, 10:27


Ну и фото на тему «Так то я разработчик, а это так для души» :)

Григорий Дядиченко

11 Sep, 10:26


Вас уволили? Устройтесь в такси или проведите год на пляже
https://www.eurogamer.net/games-industry-layoffs-not-the-result-of-corporate-greed-and-those-affected-should-drive-an-uber-says-ex-sony-president

В статье на Eurogamer обсуждаются недавние увольнения в игровой индустрии, которые, по мнению бывшего президента Sony, не являются следствием корпоративной жадности. Он подчеркивает, что увольнения часто вызваны экономическими условиями и изменениями на рынке. Также он отмечает, что пострадавшие сотрудники могут рассмотреть альтернативные пути, такие как работа в Uber, как способ справиться с трудностями.

Охх, забавно когда человек вроде ничего плохого сказать не хотел, а звучит это так великолепно :) Топ менеджеры иногда конечно не думают как звучит то, что они говорят. Ну что тут можно сказать? «Вообще я игры разрабатываю, а такси это так — для души».

Сейчас какая-то волна новостей про массовые увольнения, но это происходит каждый год. Я на них уже даже внимания не обращаю. Звучат громкие лозунги «Программисты больше не нужны», «Сроро айтишников заменят». Ну чтож — мечтать не вредно, всем кто ничего в этом не понимает. Пойдёт новый виток нашей замечательной экономической модели, и снова начнётся великая охота за спецами.

Единственное про что хочется сказать — это про корпоративную жадность. И тут как бы и да, и нет. Следствием увольнений косвенно является корпоративная жадность. Так как компании получают сверхприбыли и не умеют оптимально распоряжаться ресурсами. Раздувают штат чтобы заработать больше денег и делать больше проектов, а потом сокращают так как не справляются с управлением. Поэтому тут согласится с экс президентом сони нельзя.

А так жалко людей, и подобные фразы от топ менеджеров понятное дело звучат как плевок в лицо. Учитывая про какую аудиторию он говорит, мог бы сказать что-то воодушевляющее. Вроде «Но на работе вы же познакомились с кучей людей и специалистов. Может увольнение лучший повод и момент наконец-то начать делать проект своей мечты». Проблем это не решит, но звучит по позитивнее.

#новости

Григорий Дядиченко

11 Sep, 07:46


Шейдер для фрукта Паопу из Kingdom Hearts
https://80.lv/articles/kingdom-hearts-paopu-fruit-with-animated-crystal-unity-shader/

В статье рассказывается про создание анимационного шейдера для кристаллического фрукта паопу из Kingdom Hearts с помощью Unity. Автор делится методами достижения эффектного освещения и материалов, подчеркивая, как шейдеры могут улучшить визуальные элементы в играх. Статья включает советы и примеры, полезные для разработчиков, стремящихся повысить качество своих проектов.

Новая красота подъехала. Шейдер выглядит весьма эффектно и красиво конечно :)

#новости

Григорий Дядиченко

09 Sep, 07:49


Эффективная асинхронная обработка данных в Unity с помощью IAsyncEnumerable
https://medium.com/@bwaynesu/unity-using-iasyncenumerable-in-unity-db6d599cc530

Статья посвящена использованию IAsyncEnumerable (появившемуся в С# 8) в Unity для асинхронной обработки данных, что позволяет эффективно загружать информацию без блокировки основного потока игры. Автор делится практическими примерами и советами по оптимизации производительности, подчеркивая преимущества асинхронного программирования.

Вообще подобные штуки очень круты для итерационных алгоритмов. Что это за зверь? Я допустим когда-то писал алгоритм где нужно было в 3д пространстве уложить трехмерный граф. Суть его была в том, что мы представляем вершины зарядами (сила Кулона), а ребра графа пружинами (закон Гука). Это даёт нам конфигурацию ускорений. И смещения считаются до тех пор, пока система не найдёт точку равновесия. Выглядит это как плавная анимация, если это асинхронно размазать по времени :)

И подобного много. Скажем метод конечных элементов для моделирования процесса деформации на моей памяти тоже можно свести к алгоритму, который разбивается итерации рассчитывающие изменения. Правда диплом по этой теме я сдал 8 лет назад, так что точно уже реализацию не помню. В общем механизм довольно полезный. К прочтению рекомендуется. Хотя на медиум вроде без VPN ща не попадёшь :)

#новости

Григорий Дядиченко

01 Sep, 07:40


Про сохранения в Unity
https://habr.com/ru/articles/840086/

Большая статья про сохранения. В целом я люблю такие, и хорошо что скажем описаны разные подходы, разные форматы реализации и т.п. Единственное что я бы больше уделил внимания версионированию.

Дело в том, что в сущности в сохранениях ничего сложного нет, если это не опенворлды. В опенворлде стейты хранятся хитро и там неплохо бы знать что такое BSP даже в системе сохранения. В контексте Unity для оффлайн хранения берём плеер префс. Для онлайн бекенд сервис. И сохраняем YAML, JSON. Или чтобы было по быстрее BSON либо другой бинарный формат данных (там уже надо бы писать реализацию под конкретику целевой платформы).

А вот версии — это гребанный ад. Версии это то почему сохранения не тривиальная задача в целом. Так как мало того, что пользователя надо хранить, он ещё зараза такая может менять свою структуру. Условно вот играл себе человек в игру, забросил на пол года, там апдейтов уже вышла целая тонна, и он либо не может зайти, либо теряет прогресс. Косяк? Косяк.

В целом там есть много разных подходов: xstl шаблоны (что-то на древнем *кряхтит*), миграция регулярными выражениями. Лучше не хранить пользователя централизовано, а декомпозировать данные для сохранения состояния по соответствующим сервисам. Чисто чтобы реже писать миграцию. А как условно сохранить и загрузить файлик, какие форматы файликов существуют — это самое простое что в этой теме есть. Но и хорошо, что такие статьи появляются. Статьи для новичков важны и нужны.

#новости

Григорий Дядиченко

31 Aug, 07:14


Модификатор решетки из Blender в Unity
https://80.lv/articles/technical-artist-recreated-lattice-modifier-in-unity/

Статья о том, как технический художник воссоздал модификатор решетки из Blender в Unity, используя шейдеры и скрипты для деформации моделей. Описываются ключевые технические аспекты, включая работу с вершинами и текстурами для достижения контроля над деформациями объектов в реальном времени.

Деформация всегда выглядит эффектно. Особенно когда ты разработчик и знаешь какая боль делать деформацию и разрушаемость. Довольно прикольная техника. По сути принцип того же риггинга, только риг для анимации объекта обычно связан с формой объекта. А такой риг деформаций действительно может быть просто решёткой.

Хотя иметь в запасе и голове такую идею прикольно, все же она не так полезна. Так как для красивой деформации, чтобы геометрия никуда не проваливалась и не лезли артефакты — аниматоры сделают лучше и в блендере. Но в целом думаю для чего-то простого можно найти применение.

#новости

Григорий Дядиченко

30 Aug, 09:36


Видеть сквозь стены: шейдер для Unity
https://80.lv/articles/this-unity-dissolve-shader-lets-you-see-through-walls/

Шейдер Энди Флетчера для Unity позволяет создавать эффекты растворения и видеть сквозь стены, улучшая визуальные эффекты и игровой процесс. Эффект реализован достаточно просто, через отрисовку спот текстуры по screen space UV.

Выглядит красиво. Сделано элегантно и просто. Кайф.

#новости

Григорий Дядиченко

26 Aug, 06:59


UniTask на замену корутинам, таскам и эвейтерам
https://youtu.be/OlNJ2GkaPTE?si=15J7Vzn0DwcBadgh

Видео про то, как UniTask может заменить другие способы построения асинхронщины. Мне нравится UniTask, хотя чаще я пользуюсь корутинами, так как мне плевать на эти аллокации, и в вебе чуть важнее вес билда, а тут так или иначе нужно грузить доп. фреймворк.

Обожаю такой формат подачи материала и информации. Сначала разбор существующих решений и подсвечивание проблем этих решений, а потом предложение как можно делать по-другому. А то иногда статьи и видео оформляются как аксиомы «так делать плохо, а так хорошо, а почему мы не скажем — у вас докУментов нет». Рекомендую глянуть и поделиться :)

#новости

Григорий Дядиченко

24 Aug, 05:30


Порталы в неевклидовом пространстве
https://www.bytehyve.com/view/blog/?i=84&t=portals_for_non-euclidean_spaces

Интересная статья про механику порталов. Плюс тут про неевклидово пространство, а «нереальная геометрия» сама по себе достаточно интересная штука. Такой прием очень любил художник Эшер, рисуя картины с нереальной геометрией. С использованием идей из его картин отлично получаются игры-головоломки и отличный тому пример — Monument Valley. Что не удивительно, так как авторы игры говорили о том, что вдохновлялись литографией Эшера «Восхождение и спуск».

#новости

Григорий Дядиченко

22 Aug, 06:05


Ghost Cat Anzu: Ротоскопирование за кадром
https://80.lv/articles/ghost-cat-anzu-rotoscoping-comparison/

Люблю я аниме и люблю старые техники. Одна из таких забавных техник — это ротоскопирование. В статье мне просто понравится пример на видео с покадровым повтором в анимации референса. Выглядит наглядно и классно.

Вообще этот приём в основном использовался в анимации, но в 80-ых так же в таких культовых играх как Мортал Комбат и Принц Персии. Вот любопытная статья на тему https://group-animation.livejournal.com/12739.html

Сейчас он конечно устарел, и его заменил Motion Capture который в среднем дешевле и что важнее быстрее + 3д. Даже в случае с 2д играми, как более оптимальный продакшен процесс. Но мне всё равно нравятся такие ламповые старые штуки.

В некотором смысле обработка видео нейросетями по сути может немного оживить эту забытую технику. Так как самой дорогой и трудоёмкой там всегда была работа художников по отрисовке каждого кадра. А по сути текущая обработка видео нейросетью для придания стилизации — та же техника, но с другим инструментарием.

#новости

Григорий Дядиченко

17 Aug, 05:32


Алгоритмы столкновений
https://leanrada.com/notes/sweep-and-prune/

Классная статья с разбором алгоритмов коллизий. Казалось бы есть PhysX, зачем это читать. Ну во-первых, алгоритмы разбирать полезно. А во-вторых, я не один раз в коммерческих задачах писал свою физику, рейкасты, коллизии, так как иногда задачи требуют весьма высокой производительности, при этом благодаря сути задачи алгоритмы можно сильно упрощать. Так как PhysX тот же как некое общее решение может обладать кучей ненужных функций и проверок, которые в конкретной задаче не важны.

#новости