Кот и код
563 subscribers
178 photos
31 videos
1 file
97 links
Про разработку на Unity и .Net, радость и боль программирования.
Автор: @KotikovD

Про искусство и игрострой:
@svolochandborshch
Download Telegram
Почта 1 день-min.gif
13.3 MB
Давно хотел показать наш проект. "Горюшко в след собакою" - это визуальная новелла с сложным и эмоциональным сюжетом. История основана на воспоминаниях главной героини, сохранённых в диктофонных записях, заметках и письмах. Игра ведёт повествование от лица девочки Нади, которая служит почтальонкой и вынуждена доставлять родным солдат вести с фронта. История повествует о надеждах, заботе и ценности семьи.

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

Мы, как разработчики игр, обладаем творческим потенциалом и в разных наших проектах можем сосредоточить его на разных задачах. Мы можем развлечь игрока, помочь убить время, "заставить" его платить, чему-то научить, что-то рассказать и многое другое. Этот проект является носителем исторической составляющей, хранит память о событиях Великой Отечественной Войны и повествует о жизни людей в тот период.
#девлог
👍7🔥6
Если бы вас кто-то спросил “Зачем нам заниматься поддержкой архитектуры в проекте?”, вы бы смогли чётко ответить сходу? Продолжаю неспеша читать Мартина и мне очень понравился абзац, где он кратко отвечает на этот вопрос. Думаю, всем пригодится для следующих серьёзных переговоров, где вы будете бороться за технические спринты.

"Главное предназначение архитектуры — поддержка жизненного цикла системы. Хорошая архитектура делает систему лёгкой в освоении, простой в разработке, сопровождении и развёртывании. Конечная её цель — минимизировать затраты на протяжении срока службы системы и максимизировать эффективность программиста."
#техничка
This media is not supported in your browser
VIEW IN TELEGRAM
У меня, как правило, все пет-проекты, это какой-то челендж, испытательный полигон для новых подходов, плагинов, технологий и так далее. Но в ГВС я могу позволить себе делать такие штуки)
#девлог
🔥5👍2🍌2
Когда я решил создать свой канал, я брал в пример небольшие блоги, где ребята рассказывают о своих проектах и, в целом, больше ведут девлог. Не могу сказать, что у меня получается так же, но мне нравится следить за их проектами, они вдохновляют меня на что-то своё. Можно подсмотреть этапы, как приживаются или вытесняются какие-то идеи. Проекты развиваются на глазах. Моя находка - канал Alex Osh Punch. Автор-художник, делает свою новеллу, пишет много постов на тему применения Midjourney. Что ИИ выдаёт в исходнике и что получается после доработки. Изначально я познакомился с автором через его статью на DTF про создание персонажа
🔥3
Понадобилось плотно поработать с большим количеством логов в рабочем проекте, масса тестовых билдов, чинить платёжку. И для просмотра логов, я раньше просто открывал их через Rider, просто потому, что привык. Затем через Notepad++. Второй вариант гораздо лучше умеет работать с ними, например, выводить только строки с нужным ключом в строке. Но мне комфортно оставаться внутри IDE и было бы круто по клику переходить в область кода, где пишется лог. Я поинтересовался какие есть плагины. Нашёлся Ideolog - плагин от Jetbrains.

Самое главное, что о нем нужно знать - это установка на скрине, включается при открытии файлов с расширением .log, далее выделяем область в лог и жмём Alt+Enter - он предложит варианты что и как фильтровать. Подробнее на странице блога JB.

Если у кого есть вбросы по эффективной работе с логами - вкиньте, плиз.
#техничка
🔥8
Я тут долго болел и поэтому пропал, но сейчас уже становится получше и начинаю возвращаться в рабочий ритм.

Пока болел много думал о работе, развитии и о том как держать баланс и не выгорать. Хочу поделиться постом на эту тему, который недавно запостил Soer - Опыт против знаний. Ну и пользуясь случаем порекомендовать его канал. Он, конечно, не нуждается в моем представлении, скажу только, что на мой взгляд он один из немногих глубоких программистов, который активно делится знаниями.
31👍1
Channel name was changed to «Кот и код: разработка игр и приложений»
Я за последний год для себя открыл голосового помощника - Алису. Начиналось, все как у всех - “Включи музыку”, “Скажи погоду” и потом подъехали устройства умного дома. 12 лет назад я занимался системами умного дома, мы ставили системы в квартиры, коттеджи, офисы и др. Тогда из более-менее доступных и норм по качеству для частного потребителя были только дорогущие системы, типа KNX. Чтобы их инсталлировать нужно было проходить обучение в Германии и получать сертификат. Умный дом был для больших бюджетов, кто мог себе позволить проектирование и ремонт конкретно под эту систему. Надо было заранее понять что тебе нужно, без возможности пощупать или как-то проверить свои реальные потребности. И конечно, не было таких умных голосовых интерфейсов. Поэтому для меня сейчас отдельный кайф, что можно свою систему расширять постепенно, дополняя её устройствами и менять настройки на лету с телефона. Устройства стоят копейки, относительно того, как в интеграционных системах. Сейчас у меня уже масса сценариев и устройств, которые работают в одной системе: свет, шторы, обогреватели, вентиляция, ТВ, музыка и компы.

Недавно для меня этого стало мало и наступил новый этап интереса - я начал писать навыки для Алисы. Это такие программы, которые можно запускать на устройствах с Алисой (с телефонов или колонок). Посмотрите каталог Яндекса, там можно залипнуть.

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

Я пока делаю приватные навыки для личного использования, для меня это развлечение и возможность пощупать что-то не клиентское… Чтобы сделать что-то нормальное нужен плюс-минус бекэндерский стек, не свойственный Unity-разработчику, всякая муть вроде Docker, Nginx\Apache, какая-нибудь СУБД и администрирование всего этого на сервере под Линуксом.

А ну и навыки вполне могут быть играми. В каталоге их масса. Может и решусь тоже что-то запилить. А главное, никаких плясок с графикой, шейдерами, оптимизацией итп 😬
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6🤝21
Я немного затронул тему навыков и как вы понимаете, они работают обращаясь на сервер к web API приложению.

Очень крутой в плане простоты использования сервис Cloud Functions в Яндекс.Облаке. Суть такая: не нужно поднимать никаких серверов, вы просто загружаете zip-архив своего проекта, указываете среду выполнения\язык программирования, задаёте точку входа и… все. Сервис сам деплоит все необходимые ресурсы, устанавливает nuget-пакеты и даже будет балансировать нагрузку при необходимости. Вы получаете url для обращения к вашему приложению с SSL и сразу на домене. С бесплатным лимитом 1 000 000 вызовов функции в месяц. Вариант считай идеальный для небольших приложений, а главное, что не нужно выходить за рамки .NET.

Этой мой подход, когда мне понадобилось сделать “простой сервер”. Он вполне пойдет, чтобы запилить, например, таблицу рейтингов или менеджер каких-то игровых событий для игры. Главное тут - скорость развёртки и почти тот же самый стек для Unity-разработчиков.

Другой подход. Мне сегодня мой коллега с работы (тоже Unity-разработчик) скинул свою статью, где он разбирает типовую задачу с участием серверной части. Задача: сделать простой сервер и обращаться к этому серверу с клиента на Unity. Статья-инструкция на reddit про создание сервера.

Написано очень подробно и прям маст хев, если есть задача погрузиться в настройку своего сервера. Но если стоит задача быстро собрать MVP бекэнда - то долго и сложно: создай сервер, настрой подключение (можно упростить используя встроенный ssh, а не PuTTY), настрой сервер. Вероятно не будет домена и SSL, а это может стать проблемой для подключения к ещё каким-нибудь сторонним сервисам - значит тоже, подлежит настройке. Ещё нужно будет туда залить само приложение и настроить его работу.

Если уж я начал про сервис функций, то стоит ещё добавить, что есть встроенные средства отладки и мониторинга. Сразу после заливки приложения можно отправить реквесты и посмотреть респонзы (см. на скрине в комментах). Ясно, что на своём VDS такого нет.

Итог такой: если надо быстро, то я бы использовал Я.функции или подобные Serverless-решения. Но если вам в целом интересна бекэнд-тема, несомненно, захочется научиться самому настраивать все необходимое окружение и такие мануалы по настройке на вес золота.
3👍1🤔1
Описание фичей от нашего геймдизайнера, как отдельный вид искусства. Одна из локаций "А Горюшко вслед собакою…"
#девлог
🤡2🤪21👍1😁1🤗1🗿1👾1
Недавно в телеграмме появилась возможность поделиться своими папками с каналами.

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

https://t.me/addlist/roIUXjUjqpAxZGQy

Делитесь своими в комментах
🔥3🐳1
Внезапно решили залететь на конкурс. Расскажу об этом в нескольких постах.

Идея пришла за пару дней до начала. Возможно, меня заинтересовало то, что организаторы ранее не устраивали игровые задания, а занимались конкурсами для решений из сферы бизнеса. Называется “Лидеры цифровой трансформации”. Там 21о задание, где 21ое - это игра (в прошлом году игр среди задач не было). Организаторы: Агентство инноваций Москвы и Департамент предпринимательства. На сколько же это ни как обычно, очень серьёзный подход. На столько серьёзный, что по ощущениям на одну наполовину - это хакатон, на другую - подача документов в МФЦ.

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

Задание, тоже, нестандартное для разработчиков игр. Обычно это что? Какая-то 1 из условных 20 рандомных прикольных тем, выбранных в момент старта. Но не в этот раз. Тут главная тема - Москва. С массой пожеланий и оговорок. Позитивная коннотация образа города, никакой чернухи, запрещена разная нехорошая деструктивная пропаганда, а также город должен однозначно читаться и узнаваться.

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

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

Вот такие вводные мы получили и начали пилить. Срок - 7 дней.

Покажу несколько моделей из дата сета. Такое ощущение, что часть из них делали сканерами. Мы в начале были в небольшом ступоре, когда решали, чтобы с ними такого придумать.
#события
🫡51🔥1
Хакатон - это маленький проект и нельзя удалять важные роли или убирать процессы. Нужно держать баланс, помнить про важные аспекты. У нас команда из 4х человек, где роли распределились вот так:
- Программист - немного менеджер проекта
- 3D художник - технический художник
- Художник - геймдизайнер - композитор
- Сценарист

Мы собрались проверенной командой, где уже понимали чего ожидать друг от друга, но к завершению периода разработки, мы ощутили просадку по геймдизайну. Где-то не понятно игроку, что происходит, где-то очки начисляются непонятно как, из 7и концовок реально получить можно 3-4.

Цель этой мысли не критика, а рефлексия для выводов на будущее. У нас отличный ГД, вывез тонну задач, настоящий атлант, но в данном предприятии, он закрывает еще две важнейшие области - визуальный стиль и аудио сопровождение. Дело тут в распределении времени, доля на геймдизайн оказалась слишком мала, 33% от общего времени конкретного тиммейта. Физический было не вывезти столько нагрузки чтобы успеть всё. Таким образом наш проект имеет больший вес в контенте, чем в играбельности. Опасное смещение, которое может стоить нам баллов. Ощущение от геймплея важнее контента.

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

Пока не буду представлять наш высоковибрационный проект) О нем позже. Покажу несколько игровых экранов.
#события #девлог
3👍2
Мы вышли в финал. Из всех команд выбрали 10 лучших и пригласили на финал в формате трёхдневного фестиваля, который пройдёт в кластере «Ломоносов», ИНТЦ МГУ «Воробьёвы горы». Никогда я не приближался к МГУ так близко)

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

Но нас интересуют питчи - это ещё один раунд отбора. Теперь команды должны “продать” свой проект членам жюри так, как будто это заказчик. Это нам сложно по двум причинам:

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

Завтра мы будем работать над этими вопросами и готовиться выступить перед жюри и другими участниками. Неизвестно сможем ли мы занять какие-то места в финале, но сама эта движуха - уже награда за труды. Как говориться, делай что должен и будь, что будет.
#события
🌚4👍3
Мы провели питч своего проекта и наконец достигли точки, где от нас уже ничего не зависит и можно расслабиться. Напряжение за эти дни было запредельным.

Что я для себя отметил:
- Умение вести презентацию. Надо делать это не только правильно по шаблонам питчинга, но и ярко, харизматично. Потому, что это вишенка на торте, которая создаёт целостность команды, идеи и проекта. На это смотрят и оценивают. Здесь нам надо прокачиваться. Мне кажется, на фото наши лица и слайд идеальные)

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

- Хакатон запредельно крутой, а также общий вайб. За пару дней тут, мы прочувствовали общий подход к организации и общению. Собянин по-настоящему ищет таланты и проекты, здесь происходит мощнейший акселератор для IT. Масса программ финансирования и нужных людей для стартапов.

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

- Отсутствует нетворкинг. Организатор не продумал какого-то формата для общения и обсуждений команд внутри специальностей. Впрочем мы сами сделали свой чат игроделов-финалистов.
UPD: Наш модератор 21 задачи подхватила эту идею и разослала всем командам приглашение в общий чат. Молодец)
#события
🔥4🍌4👍3