Григорий Дядиченко – Telegram
Григорий Дядиченко
2.83K subscribers
395 photos
160 videos
7 files
1.2K links
Разработчик игр, интерактивных стендов и интерактивной рекламы. Эксперт в области интерактивов и XR.

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

По вопросам сотрудничества писать: @it_bizdev
Реклама в канале: https://vk.cc/cNhGLE
Download Telegram
Вот что получилось для директа (если кому интересно). Не шедевры рекламы, но учитывая трудозатраты - приемлемо. А если поработать с раскадровками, сценарием и смыслами, то я считаю конкретный смысл текущие технологии позволяют доносить для таких задач.
🔥7
В 40 лет в геймдев: от корпоративного архитектора к инди-разработчику
https://habr.com/ru/articles/958874/

Виктор, системный архитектор и руководитель направления интеграции в финтехе, в 40 лет решил сменить сферу деятельности и попробовать себя в геймдеве. Он столкнулся с множеством трудностей: выбор движка (остановился на Unity), необходимость освоения новых концепций и инструментов, противоречия между привычным перфекционизмом и необходимостью быстрого прототипирования. Несмотря на сложности, Виктор не сдался и благодаря дисциплине, умению учиться и поддержке сообщества смог добиться определённых успехов — создал несколько джем-игр и казуальных мобильных игр, а сейчас работает над своим первым комплексным проектом. Он отмечает, что новый опыт положительно повлиял и на его основную работу, научив проще относиться к прототипам и ценить быстрые итерации.

Считаю без увольнения и жизни на дошиках - несчитово 🙂 А если серьезно прикольная статья о хобби человека. Пока игры это хобби это вообще кайф, самое веселье когда пытаешься на них зарабатывать 😆 У многих игры это хобби или начинается как хобби. Но вообще это фишка основы старой школы разработки в целом - иметь пет проект. Ведь все кто пришли в разработку "по-любви", а не за бабками - любят разработку. Холивары и прочее происходит от того, что пока из каждого утюга не стали кричать что "айти это выгодно", это был мир энтузиастов. Где каждый готов с пеной у рта доказывать своё мнение (хотя никто не знает как правильно).

Мне надоело именно разрабатывать спустя 7 лет в разработке. А раньше я приходил с работы и писал свои личные проекты, часть из которых уехала в паблик репозитории на моём гитхабе 🙂 И я нашел себе хобби не связанные с разработкой 😆 Я ща начал потихоньку изучать игру Го. И поразительно конечно как доска с камешками и клеточки могут заставить тебя размышлять о тактике и насколько это комплексная тактически игра.

#новости
🔥10
Руководство по оптимизации памяти в Unity 6
https://habr.com/ru/companies/otus/articles/959150/

В статье речь идёт об управлении памятью в Unity: рассматриваются типы памяти (нативная, управляемая, память GPU и др.), проблема фрагментации памяти, а также способы оптимизации — использование Memory Profiler для анализа снимков памяти, сжатие текстур, отключение ненужных функций при импорте мешей и анимаций, управление вариантами шейдеров; кроме того, затрагиваются утечки памяти и методы их обнаружения с помощью Memory Profiler.

Классное руководство. Допустим на моем опыте самая частая проблема, и топочему в проектах сцены грузятся тысячелетие, это незнание того, как Unity кладет ресурсы в память. Допустим вы решили сделать небольшой веб проект. У вас есть какие-то спрайты, меши, не так важно. В общем ассеты. Скажем на примере системы стилей. Частый кейс в геймдеве с точки зрения монетизации когда-то был (да может и есть) вип аккаунты. И часто скины персонажей или целого интерфейса отличаются для таких пользователей. Вы сделали ScriptableObject и сохранили в нем ссылки на ассеты, а ссылку на скриптабл обжект положили в мейн сцену. В память пойдут сразу оба скина. Поэтому для грамотного управления ресурсами удобнее ленивая инициализация ресурсов по запросу. Так проще управлять лайфтаймом, не ловить Out Of Memory эксепшн и так далее. Но из-за того что часто люди не понимают цикл загрузки ресурсов в память я вычищал такие ссылки в проектах.

Тут ещё важно понимать продуктовые метрики. Для меня в рекламе вообще критически важна оптимизация времени загрузки, но так же это очень важно в играх. Потому что это влияет на конверсию и удержание аудитории. В первую очередь на стоимость привлечения. Представим вы сделали крутую рекламу своей игры, но 20% аудитории отваливается из-за того что игра грузится слишком долго (в современном мире очень легко потерять фокус внимания пользователя). По сути что это означает? Конверсия в инсталл снизилась на 20%, то есть стоимость привлечения пользователя увеличилась на 20%. А ведь в играх как в любом продукте по сути помимо капитальных расходов на разработку ключевой формулой явлется ALTV - CPA (среднее число денег которые приносит пользователь за время игры в игру - стоимость привлечения пользователя). Соответственно чтобы увеличивать прибыль вы хотите наращивать ALTV и снижать CPA. И если из-за мелкого косяка у вас идет рост расхода вы можете терять много денег, да и в целом бизнес модель может не биться.

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

#новости
🔥15
Грейскейл через Luminance

Люблю шейдеры и разные задачки. Введу новый формат "рабочие заметки". Чтобы было где писать о небольших интересных задачках. Итак про Luminance или яркость.

Преобразование цвета в чб через luminance (яркость) — это техника, где мы вычисляем воспринимаемую яркость цвета, используя взвешенную сумму его RGB-компонентов.

Типичная формула в шейдерах:
float luminance = dot(color.rgb, vec3(0.299, 0.587, 0.114));

Коэффициенты 0.299, 0.587, 0.114 — это не случайные числа, а научно обоснованные веса:

0.299 — вес для красного канала

0.587 — вес для зеленого канала

0.114 — вес для синего канала

Эти значения основаны на относительной воспринимаемой яркости человеческим глазом. Наш глаз наиболее чувствителен к зеленому свету, затем к красному и наименее — к синему. Коэффициенты основаны на фотометрических исследованиях человеческого зрения, проведенных в начале 20 века. Для простого наблюдателя CIE 1931 было Y = 0.17697R + 0.81240G + 0.01063B. С появлением мониторов на основе электронно лучевой трубки были получиены новые коэффициенты Y = 0.299R + 0.587G + 0.114B.

Чем это лучше обычного усреднения? Потому что усреднение как раз-таки не учитвает особенности человеческого глаза и поэтому делает восприятие яркости неестественным. Яркий зеленый будет казаться слишком темным, а темные синие цвета слишком светлыми.

Зачем это надо знать? Перевод в чб частая техника в двух ключевых задачах. Создание визуальных эффектов (особенно пост обработки) и задачах компьютерного зрения. Когда мы создаем визуальные эффекты основанные на яркости, то лучше использовать формулу яркости с весами учитывающими восприятие. Если же мы занимаемся задачами компьютерного зрения, то у камеры нет таких особенностей, у неё "объективное восприятие", поэтому для анализа лучше обычное усреднение.

Использование luminance-коэффициентов — это не просто "так принято", а физиологически и технически обоснованный подход, который дает наиболее естественное для человеческого глаза преобразование цвета в яркость.

#оработе #интересное
10🔥14
Я вот задумался. Если делать видео контент, то куда его выкладывать? Интересно ваше мнение исходя из того, а на какие площадки вы заходите. Понятно дело дефолт Youtube и инста, но в мире VPN интересна разбивка кто что смотрит (проф, а не развлекалка)
Anonymous Poll
89%
Youtube
6%
Instagram
19%
VK Видео
12%
RuTube
2%
Дзен
О приключениях

Недавно моя подруга выиграла покерный турнир в Сочи. Я на фото справа (просто хотел поделиться). И я вспомнил, как выигрывал хакатон. Да и в целом, о приключениях в студенческие годы. Основную часть я описал в своей серии постов.

Разница за 12 лет в том, что работа стала безэмоциональной. С победой на хакатоне было весело. Мне 19, первое место на хакатоне от Microsoft. Событие, после которого жизнь должна измениться. А сейчас у меня полное спокойствие. Почему?

Интерес пропал? Частично. Я люблю работу, но ощущения теперь не от погружения в новое, а будто садишься в любимую машину. Всё знакомо, нет неизвестности. Просто делаешь дело, в котором хорошо разбираешься. Нет вызова и исследования. Пропала интрига.

Скорее, планка «достижения» стала высокой. Последний раз радовался, продав проект на 12 миллионов. Дело было не в сумме, а в интересной схеме продажи. Но сумма тоже чувствовалась успехом.

Раньше достижения были проще. Хакатон. Первые успехи канала (@gamedev_calendar). Первые организованные хакатоны. Когда не знаешь, как что-то сделать, и нужно учиться — это весело. Сейчас сделать митапы — техническое дело. А тогда было много волнующих моментов. Я звонил в Mail.ru, Unity, будучи студентом, не имея ничего и не зная, как договариваться. Но всё вышло, и это казалось чудом.

Грустно? Нет, просто наблюдение. С 2011 по 2019 всё было приключением, с неожиданными поворотами. Сейчас это стало опытом. Видимо, это нормально. Разорение 2019 года, наверное, на несколько лет отбило желание лезть в авантюры. Надо раскодироваться и найти что-то, что вызовет интерес, как тогда. Чтобы появились новые истории. А то рано в 31 год говорить: «А вот раньше я».

P.S. Коммерция и работа с брендами любого уровня для меня не событие. Делал проекты для мировых компаний. Их было так много, что воспринимаешь это как очередную задачу. Помню, заказчики говорили: «Это же так круто, ведь это Х». Первые разы — может быть, потом уже всё равно.

#мысли
🔥12❤‍🔥1
Unity представила встроенное управление кросс-платформенной коммерцией для разработчиков
https://80.lv/articles/unity-introduces-native-cross-platform-commerce-management-for-game-developers

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

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

#новости
🔥10
Интерактивные 3D-сцены без программирования: Unity Lite
https://unity.com/ru/campaign/unity-lite

Unity запустила Unity Lite — веб-редактор без необходимости знания кода для создания и обмена интерактивными 3D-сценами. Платформа позволяет использовать визуальные инструменты и систему логики Lite Logic вместо написания скриптов на C#.

Вайбкодовый мир победил. Да в целом все no code инструменты это прикольно. Проблема у них одна, когда неквалифицированный бизнес начинает видеть в них серебряную пулю и натягивает сову на глобус 🙂 Я так много за 10 лет в айти видел монстров франкенштейна. Самое крутое правда из баек, когда люди для склада для какой-то задачи написали скрипт на VBA( Visual Basic) внутри экселя, который ходил на американский впн 🙂 И когда никто не знал нафиг нужен этот впн и отключил его, выяснилась такая фигня. Поэтому для свои задач - прикольно, а если на нём начнут делать что-то сложнее 3д демо выдумывая миллиард костылей - не хорошо 🙂

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

#новости
🔥3
Как мы научили xNode работать в префабах
https://habr.com/ru/articles/964646/

В статье рассказывается о том, как авторы заставили xNode — open-source фреймворк для Unity, позволяющий создавать узловые графы с визуальным редактором, корректно работать внутри префабов. Проблема заключалась в том, что ScriptableObject не может хранить ссылки на объекты сцены, и при сохранении префаба все такие ссылки терялись. Для решения этой проблемы был внедрён промежуточный слой — MonoBehaviour-компонент, который кэширует все нужные графу ссылки и восстанавливает их после инстанцирования. Авторы создали интерфейс ICacheableNode для узлов, нуждающихся в сохранении ссылок, и компонент GraphDataCache для хранения сериализованного кэша, а также добавили кастомный инспектор с кнопкой для автоматизации сохранения графа и префаба. В результате графы на базе xNode можно безопасно использовать в префабах, сохраняя и восстанавливая все связи при инстанцировании.

Может пригодится. Я подобными фреймворками пользуюсь редко, так как в целом не фанат визуального программирования (старовер). Хотя в шейдерах я пришел к графам таки, но с появлением LLM старый добрый текст мне нравится больше. Но тем не менее это инструмент которым люди пользуются, а такое расширение функционала звучит полезным.

#новости
🔥6
Сделали прикольный лендос про аниме Стометровка
https://100meters.one/

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

#оработе
3🔥4
This media is not supported in your browser
VIEW IN TELEGRAM
BoxCutter: система разрушения вокселей в реальном времени от Bitwise Games
https://80.lv/articles/enjoy-chaos-with-thsi-voxel-destruction-system-made-in-unity

Разработчик из Bitwise Games создал систему разрушения вокселей в реальном времени под названием BoxCutter в Unity для своего шутера, вдохновлённого Ultrakill. Система включает интеграцию с MagicaVoxel, различные режимы фрагментации, реалистичную физику, поддержку ригов, лёгкую интеграцию, не выпуклые коллайдеры и визуализацию в редакторе. В игре, где будет использоваться BoxCutter, действие происходит внутри компьютера, а разрушение вокселей станет ключевой частью боя. Разработчик отмечает, что при разрушении объектов временно устанавливает rigidbody в кинематический режим на 1–2 кадра для перепривязки коллайдеров новых фрагментов.

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

#новости
3🔥5😱1
Как начать использовать неиронный шейдинг
https://developer.nvidia.com/blog/how-to-get-started-with-neural-shading-for-your-game-or-application/

Neural shading — это технология, которая позволяет интегрировать обучаемые модели в графический конвейер для повышения качества и производительности рендеринга в реальном времени за счёт использования специализированного ИИ-оборудования, например, тензорных ядер NVIDIA. Она использует небольшие нейронные сети, которые выполняются внутри шейдеров и могут быть оптимизированы с помощью таких инструментов, как Slang и SlangPy, поддерживающих автоматическое дифференцирование. Технология применима для сжатия текстур, работы с материалами, расчётов освещения, постобработки, обработки геометрии, анимации, процедурного генерирования контента, шумоподавления при трассировке лучей, сжатия анимации и упрощения мешей. В будущем neural shading может обеспечить баланс между качеством и производительностью, расширить функциональные возможности и повысить гибкость платформ.

Во всех технологиях с нейросетями главное помнить что они как ленивый школьник. Не решают задачу, а подставляют подходящий ответ. Это может быть и применимо. И быстрее. И медленнее. Главная сложность в одном. Это новый вид визуальных артефактов. С которыми нужно будет сражаться.

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

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

#новости
1🔥2
Дитеринг и бандинг в Unity URP: как избавиться от полос и артефактов
https://habr.com/ru/articles/966886/

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

Я считаю вообще в современном мире самое полезное знать что как называется. Дальше уже проще. А с проблемой я просто по проекту столкнулся, так как WebGL сафари отказывается для воспроизведения видео адекватно жрать текстуры битностью выше чем ARGB32. Поэтому глоу на видео превращается в лесенку. И тут я подумал что в целом давно с бандингом и дитерингом не сталкивался. Можно про них и статью написать.

P.S. Кстати только у меня как-то дико медленно грузит хабр? И ссылки и картинки грузятся очень медленно. Может есть новые площадки куда статьи модно публиковать?

#новости
5🔥7
С 90 FPS до 230+. Маленький девлог об оптимизации игры на Unity 6 URP
https://dtf.ru/indie/4198907-optimizatsiya-igry-na-unity-ot-90-fps-do-230

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

#новости
🔥7
Надо не бояться ошибаться

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

Многие не начинают делать что-то так как боятся ошибиться. Потерять время. Не справится и так далее. Кто-то боится осуждения. В общем причин много. Но для результатов это надо делать. Так и прогрессировать проще. И в целом получать какие-либо результаты. И ты начинаешь замечать прикольные моменты.

И в работе это так же работает. Я писал это в посте про "Менталитет поймать за руку". Что руководителям надо думать о том, чтобы коллеги не боялись совершить ошибку. Потому что иначе люди просто перестают высказывать своё мнение боясь сказать что-то не то. Но с другой стороны полезно вырабатывать толератность к критике. Чтобы не обращать внимание на критику.

Я вот помимо основной работы занимаюсь какой-то публичной деятельностью. Пишу статьи, посты, и часто сталкиваюсь с критикой. Много раз с хейтом. В этом плане хабр забавная площадка. Пишешь материал на который потратил много времени на подготовку всего, и что вообще имеет коммерческое применение типа этого, и никому это неинтересно. Пишешь по русски докуменацию юнити с адекватными примерами. Получаешь тачанку хейта (мне даже в лс тогда писали) и спустя 7 лет это самая успешная статья из написанных на хабр по просмотрам 🙂

Самое забавное в моей карьере это история, что я когда-то хотел сделать приложение для тренировки дикции. И я тогда не сделал, потому что пожалел своего времени (которое стоило в студенческие годы ничего) потому что не понимал как монетизировать. Я зарубил игру головоломку так как послушал ребят на тему того, что она ничего не заработает. А сейчас, такой пройдя кучу проектов, посудив кучу хакатонов, поменторив кучу проектов и так далее + позанимавшись бизнесом и понимая как устроено это всё, я понимаю что и я не знал куда это можно повернуть. И те кто мне советовал не знают на 100% как сработала бы конкретно моя идея. По сути испугался потратить время и ошибиться, и теперь уже не узнать что было бы.

А там где я вообще забивал на то что будет, просто хочу и всё - всё всегда получалось. Самый яркий пример это Unity Moscow Meetup. Меня отговаривала куча народу, но я сходил на митап яндекса по компьютерному зрению, и мне так понравился формат, что я решил сделать свой. Не понимая как искать спикеров, площадку, как вообще организовывать мероприятие. Но всё получилось. И в первом мероприятии я из-за того что перенервничал и неуспел подготовиться провалил только свой доклад. Но все отнеслись нормально, так как я организовал всё остальное.

Если бы я боялся ошибаться, то я бы к данному моменту не сделал бы больше 100 проектов, не написал бы 51 статью, да и блог бы никогда не завел. При этом я не считаю себя глубоким экспертом ни в одной теме, я чисто эксперт широкого профиля. Смесь менеджмента, продаж, переговоров и разработки. Хорошо разбираюсь в каждой из этих тем, но не создаю в них новые знания, и не прям углубляюсь в нюансы. У меня подход коммерческий - знать всё не ради знания, а для достаточной коммерциализации.

И это я к тому, что что-то делать круто. Что-либо публичное всегда сталкивается с критикой. Но при этом что-то делая можно получить самые непредсказуемые результаты.

#мысли
🔥17
This media is not supported in your browser
VIEW IN TELEGRAM
Волшебный звёздный дождь: VFX-эффект в Unity
https://www.youtube.com/watch?v=Yluqn2gF3nc

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

#новости
🔥10
Фриланс теперь это не моё

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

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

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

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

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

#оработе
🔥14😁5
Почему D2C — зрелость, а не эксперимент
https://news.1rj.ru/str/d2cgamechangers/23

В посте написано о том, что переход на модель D2C (прямые продажи игрокам) — это неизбежный этап взросления для игровой индустрии, аналогичный тому, как музыка и кино ушли от посредников. В посте приводятся пять ключевых доводов: полный контроль над доходами и ценообразованием, доступ к собственным данным игроков для точной стратегии, изменение законодательства в пользу внешних платежей, повышение маржи на 5-10% и возможность построения прямых отношений с комьюнити для укрепления бренда.

Вообще с современными трендами и тем, что Apple и Google уже заставляют разрешать альтернативные сторы, с тем что органический траффик в сторах уже не тот (раньше фичеринг был ключевым, а сейчас изменилась модель потребления) прямые продажи игрокам выглядят как неизбежное будущее.

#новости
🔥6
Применение пространственного хеширования для ускорения и улучшения качества RTAO
https://interplayoflight.wordpress.com/2025/11/23/spatial-hashing-for-raytraced-ambient-occlusion/

В статье Kostas Anagnostou описывает применение пространственного хеширования для оптимизации расчёта ambient occlusion (RTAO) в компьютерной графике. Метод позволяет ускорить расчёт и снизить шум в изображении за счёт кэширования результатов для статических сцен: данные AO сохраняются в хеш-таблице, где ключ формируется на основе позиции и нормали поверхности. Автор рассматривает алгоритм хеширования, способы разрешения коллизий (линейный поиск и рехеширование), вычисление размера ячеек в зависимости от расстояния до камеры и использование джиттера для улучшения качества. Также обсуждается учёт «возраста» ячеек для освобождения места в хеш-таблице и возможность полного прекращения трассировки лучей после накопления достаточного количества выборок в ячейках.

Много непонятных слов, если вы не знаете алгоритмику и компьютерную графику. Любопытная статья, но я хотел поговорить о том, а зачем это читать Unity разрабам? На прямую такие штуки в рендере ковырять приходится очень редко, если не почти никогда. Даже я там писал про дитеринг, полезно понимать какие-то вещи концептуально, а конкретные решения уже в современной разработке в первую очередь надо уметь интегрировать, а не реализовать. Но есть нюансы. И нюансы заключается в том, что если раньше "правильно сформулированная задача - это половина решения" - это просто крылатая фраза. То сейчас это современная реальность во многих задачах. Скажи правильно что нейросети сделать (достаточно подробно, с описанием какой алгоритм использовать и как) и если она знает это решение, она его напишет.

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

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

#новости
🔥8