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

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

По вопросам сотрудничества писать: @it_bizdev
Реклама в канале: https://vk.cc/cNhGLE
Download Telegram
А зачем мне это?

Думаю стоит написать: «А зачем мне вообще этот проект?». Человек который умеет в сложные шейдеры, в вышмат, в графику, в трекинг объектов и компьютерное зрение. Занимался супер сурьёзными задачами для медицины, промышленности и т.п., где у компаний есть даже патенты моих математических моделей. Теперь решил сделать казуальную игру на странную платформу с непонятной монетизацией. А для чего?)

1. Тест производства контента нейросетями

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

А на кошках можно посмотреть. Собрать шишки. Подумать над применимостью того или иного инструмента. Поискать интересные технологии продакшена.

2. Свободное время

Рынок в этом году дохленький. Именно аутсорс. Не то, чтобы работы нет, но её мало. Не знаю я ли один это ощутил, хотя по общению с коллегами по цеху я не одинок. Желания, бюджетов, времени, даже при учёте навыков, закапываться в крупный проект с высокой степенью рисков у меня нет. А игры, серьёзные игры, это всегда высокая степень риска. Именно поэтому из всех путей в качестве основной деятельности я выбрал аутсорс и b2b заказы.

При этом хочется уметь монетизировать своё свободное время.

3. Вдруг я ошибаюсь в площадке

Понятное дело что я взрослый человек из продакшена с опытом. И перед тем как принять решение что-то делать я изучил доступные материалы по площадке. И люди рассказывают про доходы в 1к рублей, по 80р в день, про 15к рублей в месяц. Что звучит не особо впечатляюще. Но я смотрю на проекты с точки зрения опыта в хороших играх. И «я это сделаю за день, но возможно мне будет стыдно».

Хочется сделать просто несколько приличных проектов. Если собранная информация про площадку не зависит от качества контента, я смогу использовать их в качестве маркетингового инструмента. Рынок ща в плачевном состоянии, но не сидеть же и плевать в потолок — надо чем-то заниматься.

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

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

#индиприключения
🔥22
День 1.1. Анимация персонажа в Runaway

Я в итоге решил взять вариант 6. Он пока и побеждает, и я не прощу номеру 3 приклеенные к крыльям уши. Собственно решил попробовать по анимировать в Runaway. Даже первые деньги можно сказать вложил. 1299 рублей на подписку на него.

Итак, выложу сначала то что в можно попробовать пустить в работу. А потом «неудачные дубли». И это важно, так как по сути одна генерация в Runaway стоит 22 рубля. И совершенно неважно удачная она или нет.

Вывод эксперимента с Runaway. Какой-то результат там получить легко. Конкретный сложно. Мне не нравилось что при ходьбе персонаж не моргает. Поэтому я перегенировал ходьбу много раз. Из последнего варианта (что прикреплён к посту) может слеплю каким-то макаром что-то в секвенции. Так что ffmpeg и фотошоп будут ждать меня.

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

#индиприключения
🔥14
День 1.2 Архитектура

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

Сам геймплей будет весь на декораторах, там не так интересно рисовать общую схему.

Итак, а что у нас по основной архитектуре. Так сказать подсветим фишечки. И первое "спорное" решение SessionController.

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

IStorageConfig, ITransactionProvider, IAdsProvider — единственные места где я вижу разумную подмену реализации. Разные сдк разных платформ. Ну и магазином может захочется не локально управлять, а с сервера. Часто люди пишут всё на интерфейсах, даже там где смысла в этом нет, я такое не люблю. Поэтому только три интерфейса.

Если есть какие-то вопросы по схеме можно задавать в комментах. Продолжаем работу. Ну и как всегда ставим 🔥, не стесняемся!

PS: Лучше было уложить каскадом по слоям, но так как это «на скорую руку» и для меня — было лениво.

#индиприключения
1🔥34❤‍🔥1
[VampLampReborn] Архитектура.drawio.png
224.1 KB
По просьбам трудящихся картинка без сжатия
❤‍🔥13🔥7
День 1.3 Тёпленькая пошла

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

0. Берём и мучаем дипсик чтобы он написал нам промт, который будет выдавать концептуальный стиль того, что мы хотим.
1. Генерим картинки пока не начнёт получаться стабильно нужный стиль.
2. Просим дипсик разбить промты на отдельные для игровых ассетов.
3. Генерим отдельные ассеты и совмещаем их в фотошопе, чтобы посмотреть как они друг с другом дружат. И собираем "уровень".

Преимущества подхода. Можно допиливать каждый конкретный ассет. Я считаю что генерить целиком картинки и локации подходит только для кат сцен и визуальных новелл.

Недостаток. Нужно следить за единообразием стиля, цветовой гаммой и тому подобным. Вот сейчас на собранной вместе картинке "кто в лес, кто по дрова". Там проблемы со всем. Стили, пропорции, цветовая гамма. Но это так сказать с наскока.

Наблюдение. Дипсику на паллитру в целом наплевать. То есть промт генерил одно. Но дипсику плевать, он просто "придумал цвета" вне зависимости от того сочетаются они или нет. Наверное я выпишу все промты. Сделаю паллитру, чтобы у персонажа и игровых объектов было достаточно контраста с фоном. Забью в промты нужные цвета. И попробую на второй заход.

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

P.S. На эксперименты я потратил 2 часа. Явно далеко от кнопки "сделай красиво".

#индиприключения
🔥25
Чуть почистил подписчиков. Мимо проходил и увидел странное. Вообще надо поискать нет ли бота который банит ботов в подписчиках по подобному фактору. Через интерфейс я вижу только часть подписчиков. А через апи думаю можно глянуть больше. Ну и кто-то начал отписываться, так как я вернулся, а про мой эксперимент читать неинтересно :)
🔥23
Анализ проекта с Project Auditor
https://dev.to/attiliohimeki/unity-project-analysis-with-the-project-auditor-2pea

Юнитеки сделали статический анализатор проекта? Что-то я это упустил. Штука полезная, а что это такое? Unity Project Auditor — бесплатный инструмент для анализа проектов в Unity. Он сканирует код, ассеты и настройки, выявляя проблемы производительности: неоптимальные скрипты, дубликаты текстур, некорректные настройки физики и графики.

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

#новости
🔥20
День 2.1 Ежедневные бонусы за вход

你好! 你好吗? Утро у меня обычно начинается с того, что я листаю новости на прогулке, слушаю аудиокнигу (иногда) и собственно учу китайский. И самая настойчивая зелёная сова не забывает мне напоминать, чтобы я поучил немного иероглифоф. Причём когда я начинал учить 中文 (Китайский) не было вариант русско-китайского изучения. Только русско-английский. Так что за одно пытаюсь вспоминать куда ставятся артикли.

И у этой совы есть механика стриков. Ниче нового в геймдеве ей 100 лет в обед. Но я подумал может засунуть награды за ежедневный вход куда-то в игру для ретеншена. Неплохая механика удержания. Вообще надо подумать что игрок может покупать, чтобы сливать валюту, и при этом не утонуть в миллионе промтов. Строить мотивацию на скинах и шапках не хочется. Я придумал точкой траты абилки (по сути читерство, чтобы пройти уровень 3 секунды полной темноты «Время ночи» и «Хронокровь» остановка времени). Тратим валюту чтобы их открыть, тратим валюту чтобы их юзать. Но будто в наградах должна быть не тупо валюта, а ещё что-то.

Пока думаю что надо придумать третью абилку, которая даётся только за 7 дней подряд ежедневного входа, чтобы D7 ретеншен поднять. Просто ещё пока я вижу пару проблемных решений над которыми надо подумать.

1) Капли крови (звёздочки по сути) это так же и валюта, которую мы можем удвоить за просмотр рекламы в конце уровня. И получить в магазине за просмотр рекламы.

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

2) Капли крови тратятся на использование абилок. Вообще и нарративно логично, и интерфейсно понятно как сделать, но надо плейтестить. И легко балансировать для казуальных игроков.

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

#индиприключения
🔥9
Как рендерить траву в играх: теория и оптимизация
https://hexaquo.at/pages/grass-rendering-series-part-1-theory/

В статье "Grass Rendering Series Part 1: Theory" разбираются основы рендеринга травы в реальном времени: проблемы с производительностью из-за большого числа травинок, оптимизации (инстансинг, LOD, процедурная генерация), а также физика (ветер, столкновения) и шейдерные техники для реалистичного освещения и полупрозрачности.

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

#новости
🔥12
Я таки завёл Boosty!
https://boosty.to/dev_game

Всем привет! Не прошло и трёх лет (на самом деле прошло), и я решил завести себе бусти. Буду рад если кто-то решит поддержать! А у меня будет больше мотивации всё так же искать самые интересные новости по Unity и создавать авторский контент. Вроде моих статей от том "как сделать билд минимального размера" или длинной истории моей карьеры. Я уже всё-таки больше 10 лет разрабатываю что-либо. И создал много бесплатного контента и репозиториев. С ними кстати тоже можно ознакомиться.

Но помимо того что я уже делаю я кое-что придумал :) Что будет доступно для подписчиков с определённого уровня.

1. Плагины

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

Первый плагин на очереди, который я придумал - это быстрый 2d glow для URP работающий в WebGL.

2. Предлагать плагины и получать поддержку


А кто латте угостил, тот ещё получит ответы на вопросы по плагину. И могут предлагать свои плагины. Для этого будут отдельные посты.

3. Разбор проектов

Сразу скажу, что там зависит от масштаба. Нельзя читерить и на огромный проект от компании (название популярной компании) сказать: "У нас тут 100к строк кода, проведи аудит по-братски". Небольшие проекты. Могу даже архитектурку набросать как это было в этом посте.

4. Ваше имя в титрах

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

Число подписок с разборами и консультациями + попаданием в титры ограничено. Так как пока я не нашёл маховик времени, чтобы успевать всё что угодно.

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

#интересное
🔥10❤‍🔥4