aks2dio | Unity и геймдев
490 subscribers
185 photos
5 videos
223 links
Директ: @antonkerp

Про GameDev, разработку на Unity и C#, менеджмент, образование, менторство и карьеру в целом.

С 2017 г. разрабатываю, лидую, преподаю и консультирую.
Был в найме, стартапах, фрилансе, инди.
Опыт: Mobile, Desktop, Web, XR.
Download Telegram
Это приветственный стартовый пост.
Буду возрождать свой уголок для само-выражения и фиксации опыта.

С 2017 г. разрабатываю, лидую, преподаю, менторю и консультирую.
Был в найме, стартапах, фрилансе, инди, мобилках, десктопах, вебе, XR.
Про это и могу рассказать. И про новые вехи в своей карьере.

В 2021 г. была попытка ведения блога. Но утонул в рутине и забросил. Тем не менее это оказалось полезно: до сих пор возвращаюсь и пользуюсь наделанными бенчмарками и замерами.

Какой контент можно ждать:
- 🗒 Точно будут небольшие посты с какими-нибудь заметками, инсайтами, бенчмарками и технологиями.
- 📅 Анонсы публичных выступлений, где будет возможность пообщаться лично.
- 📢 Рекомендации: видео-ролики, статьи, пакеты и всё, что покажется любопытным и захочется отложить.
- 📽 Буду учиться делать Клипы и Видео про что-нибудь полезное.
- 📝 Буду практиковаться в написании статей. Уже готовлю первую пробу.
- 📶 Возможно будут стримы. Есть идеи на проекты — думаю над тем, чтобы работать над ними онлайн.
- ❓Если будет востребован Q&A, то будет и это.

Как часто: жизнь покажет, но пока думаю, что не часто :)

1. Это всё больше для себя: обработать, сформировать мнение, усвоить и отложить, чтобы к этому можно было позже вернуться.
2. Буду делиться своим приобретаемым опытом и будет здорово, если он окажется полезен.
3. Буду рад опытом не просто делиться, но и обмениваться. Уверен, что у тебя найдутся интересные комментарии, дополнения или темы для обсуждения.

Первый камень заложен. До новых постов 👋
—————————————
#unity #gamedev #development #dotnet #csharp #management #teamlead #education #геймдев #разработка #юнити #менеджмент #управление #тимлид #обучение #образование #aks2dio
👏2
О площадках для блога

В большей степени к возрождению блога меня побудило желание изучить доступные площадки 🔎 : какие инструменты предоставляют, какие возможности имеют, как происходит привлечение аудитории — этим я и планирую заняться после генерации какого-то количества контента 🖼

Для опытов я отобрал следующие площадки ⚗️:
- VK
- Telegram
- YouTube
- Instagram
- TikTok
- Dzen
- Dtf
- Pikabu
- Boosty
- Rutube
- Tenchat

Контент там будет идентичный с точностью до возможностей площадки (TikTok и Rutube, например, позволяют загружать только видео-ролики 🎥 — соответственно, текстовых постов там не будет 📝)

Поделюсь наблюдениями, когда появятся какие-то значимые данные 🗄
Пока могу только отметить, что делать посты удобнее всего в Telegram, Boosty и Tenchat 🙃
—————————————
#unity #gamedev #development #dotnet #csharp #management #teamlead #education #геймдев #разработка #юнити #менеджмент #управление #тимлид #обучение #образование #aks2dio
🔥2
Уровень материала: 📣 #news

Не так давно я радовался появлению отечественного AI-ассистента 🧠 для написания кода, который не просто работает быстро 🏎 и без VPN🛡, но ещё и не требует оплаты (что как бы не плюс, но пускай) 💰
Имя этому ассистенту – GigaCode от СберТеха 🟩 С момента выхода в публичный доступ я начал его использовать на повседневной основе, полностью заменив зарубежные аналоги 🇷🇺 В возможностях он пока им уступает, но мне этого достаточно.

Помимо GigaCode в линейке Сбера есть GigaChat и GitVerse, которые я тоже использую и остаюсь доволен. И по-моему из разработчиков только ленивый не шутил про "им ещё GigaBrains запилить только остаётся для IDE" 🤡
И вот 27 июня Сбер на конференции GigaConf представил открытую российскую среду разработки Giga IDE, которая доступна в двух вариантах: Giga IDE Desktop 🖥 и Giga IDE Cloud ☁️

Giga IDE Desktop 🖥 — это форк JetBrains IDEA 🔌, что уже достаточно описывает продукт. Пока поддерживаются только проекты на Java, Kotlin, Scala, Groovy, Python и мультиязычные проекты с использованием JavaScript, TypeScript, SQL.

Я, как Unity Developer 👾, пока пролетаю, но буду рад, если они до осени сделают аналог Rider'а и мне не придётся опять через мутные схемы донатить JetBrains на Yearly Subscription 💸

Giga IDE Cloud ☁️ — технология поинтереснее. Она предоставляет возможность подключения через веб-интерфейс 🕸 или локальное нативное приложение 📱 и ведение разработки в облаке с дополнительными облачными ресурсами по типу RAM и пр. Пока в раннем доступе, но публичный релиз запланирован уже на осень 2024 года 🍁

В IDE само собой встроен GigaCode 🧠 и всё это связано-перевязано с GitVerse. Запах экосистемы присутствует и усиливается. Что не может не радовать.

Сбер также обмазал GitVerse новыми AI-плюшками 🧠, которые должны стать доступны в конце месяца. В частности в их число входят AI Code Review и AI-оценка трудозатрат. Пока это будет работать только на Java и в режиме бета-тестирования в публичных репозиториях.

Пока можете самостоятельно ознакомиться с релизом на оф сайте Giga IDE и следить за появлением записей с GigaConf.
—————————————————
#unity #gamedev #development #sber #tech #sbertech #news #ide #code #геймдев #разработка #юнити #новости #сбер #сбертех #обучение #образование #код
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3❤1
JetBrains обрубили IntelliJ IDEA в РФ
Уровень материала: 📣 #news

Напомню, что на прошлой неделе Сбер анонсировал появление Giga IDE, который является форком IntelliJ Idea, рассчитанным как раз преимущественно на пользователей в РФ.

А теперь JetBrains запрещают скачивать Ultimate-версию оригинальной IntelliJ Idea на территории РФ. При этом Community-версия пока остаётся доступной.

Проверил — пробитие подтверждаю.
Совпадение? Сговор между компаниями? Контры?
Похоже время "присаживаться поудобнее" 🍿

https://www.comnews.ru/content/234082/2024-07-02/2024-w27/1007/jetbrains-ogranichil-dostup-k-intellij-idea
—————————————————
#unity #gamedev #development #sber #tech #sbertech #news #jetbrains #ide #code #геймдев #разработка #новости #сбер #сбертех #санкции #блокировка
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Media is too big
VIEW IN TELEGRAM
сектор "кринж" на барабане
учимся делать клипы 🤫
#aks2dio
👍1🥰1
📝 Автостопом по мультиплееру ч1. 📝

Первый опыт оформления статьи
Использовал 4 площадки: VK, Dzen, Habr, Dtf
Опыт взаимодействия с площадками опишу позже отдельным постом 📦
Заодно можно будет поделиться реакциями и цифрами 🧮
Пока могу сказать, что по площадкам — всё не однозначно и везде свои "приколы" 🤡
————————————————————
#unity #gamedev #development #multiplayer #геймдев #разработка #мультиплеер #статья #aks2dio
🔥3
Интересная идея для изучения шейдеров: делать не какой-то визуальный эффект, а повторить логику работы другого шейдера, например стандартного URP/Lit, как в прикреплённом видео 📺
Так можно прочувствовать, что приходится сделать, чтобы получить определённую опцию ⚙️, а не определённую картинку 🖼. Что с технической точки зрения проще для понимания и запоминания 🧠

Для меня шейдера - не профильная деятельность, делать их приходится не часто. Поэтому визуальный язык у меня не сформировался. Я понимаю, как работает рендер и какая математика крутится внутри 📈. Если есть ТЗ с техническими инструкциями – я сделаю. "Добавить шум с такими-то настройками", например.
Но если нужно "сделать вот такой-же эффект магнитного поля" 🧲 – это уже сложнее, т.к. нужно уметь декодировать визуал на составные математические операции 👨‍🏫 Здесь часто работа ведётся "методом тыка" 👉 и после завершённого эффекта в голове вообще не остаётся ничего 🙅‍♂️ Через условную неделю перерыва повторить этот опыт уже не удаётся и приходится начинать RnD сначала 🔍

На мой взгляд, если нет планов становится программистом графики, и душа не лежит к разработке визуала, то уроки по типу "сегодня мы научимся делать шейдер для молнии в воде" ⚡️ программистам понимания не добавят. А вот то, как делать определённые настройки ⚙️ или что можно удалить из вашего шейдера, чтобы он работал порезвее 🏎 , поможет лучше понять это ремесло 🤓

https://youtu.be/ObpmdNTgVps?si=a-y8wgwkMAHq_NJl
————————————————————
#unity #gamedev #development #shader #graphics #геймдев #разработка #шейдер #графика #рекомендация
🔥5
📝 Автостопом по мультиплееру ч2. 📝
Прошёл спустя неделю модерацию на Хабре. Теперь официально Хабровчанин.
В честь этого события (нет) публикую следующую статью цикла про мультиплеер.
Там пишу про отличия синглплеера и мультиплеера и про то, где эти отличия находятся.
Хабр VK Dtf Dzen Pikabu
————————————————————
#unity #gamedev #development #multiplayer #геймдев #разработка #мультиплеер #статья #aks2dio
👍2🔥2
Лёгкая статья про устройство рынка веб-игр 👾
Я сейчас тоже одной ногой в этой истории. Не готов делиться какими-то инсайдерскими цифрами 🧮, но готов поставить своё 👍 под всеми приведёнными в статье тезисами.

Не скажу, что испытываю удовольствие, как разработчик 👨‍💻, от работы с вебом 🌐 – уж больно много там "нюансов" и ограничений 🚫 со всевозможных сторон: от браузеров до площадок.
Но как пользователь рад что веб-сегмент приобретает бòльшую популярность как у аудитории, так и у разработчиков 📈. Это удобно, это фаново, это актуально 💅 И классно, что качественных проектов появляется всё больше 🖼

На телефоне в папке Games уже давно остались одни ярлыки от веб-страниц 🤡
https://habr.com/ru/companies/magnus-tech/articles/826956/
————————————————————
#unity #gamedev #development #web #webgl #html #геймдев #разработка #веб #вебигры
🔥2🤔1
📃 Любопытный материал по использованию встроенных в ОС шрифтов для уменьшения размеров билда в Unity.
Мне подобными "извращениями" заниматься не доводилось, но на вооружение подход взял.

📦 Обычно всё решается тем, что для конкретной локализации создаётся отдельный бандл, куда падают шрифты и прочий локализируемый контент.
🌐 Этот бандл отправляется на CDN и скачивается клиентом по востребованию.
⬇️ ️При первом запуске стягивает тот, который соответствует установленным в ОС настройкам. И может быть какой дополнительный набор следом
🙎‍♂️А далее уже по желанию пользователя. Такие бандлы часто достаточно маленькие и очень оперативно загружаются.

Если использовать Unity Localization, то та довольно ловко эксплуатирует Addressables, и там всё упаковать в отдельный бандл "сами юнитехи велели".

🙅‍♂️ Для ситуации, когда приложение ничего не должно догружать, бандлы не подойдут.
🤏 И если нужно, чтобы приложение было наиболее "компактным", то описанные махинации могут оказаться очень кстати.
🤔 Хотя представить себе такой реальный кейс у меня пока не получается.
—————————————
#unity #gamedev #development #font #optimization #tmp #геймдев #разработка #шрифт #оптимизация
🔥3👍1
Уровень материала: 📣 #news

Успел пропустить, как Selectel запустил услугу фермы мобильных устройств. Это не новая услуга для мира, но для РФ подобных решений я ранее не встречал. Здорово, что появляются отечественные альтернативы — в РФ платить рублями удобнее и выгоднее 💳

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

В моей практике больших и высоконагруженных ферм не было. Были небольшие из устройств-представителей разных сегментов. Гонялись преимущественно перед релизами, поэтому проблем с сильным износом не возникало. В них загружались билды с вшитыми сценариями поведения, и QA уже дальше снимали с них нужные метрики и следили за успешностью прогонов. Дёшево и сердито ⚙️

Selectel давно вошёл в список постоянных инструментов, как минимум, в личной разработке. Интересно теперь посмотреть, что там с фермами и насколько оно окажется прожорливо 💵 Но пока, увы, в моей панели управления страница с этой функцией не работает 🤡
—————————————
#news #gamedev #development #qa #automation #testing #новости #геймдев #разработка #автоматизация #тестирование
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2👍1
Не редко сталкиваюсь с тем, что для игровых разработчиков вопросы бэкенда являются чем-то инородным 🤔

Хотя я постоянно взаимодействую с бэкендом, причём с первого же проекта в своей карьере. Это и взаимодействие с сервером, и серверный код, и разворачивание инфраструктуры, её настройка и автоматизация 🤖

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

В небольших командах придётся брать всё в свои руки. При условии, что современный гейминг часто обильно обмазан мета-геймплеем, под который нужна инфраструктура, это неизбежно.
Есть бэкенд-сервисы по типу Playfab, но в какой-то момент они могут оказаться или слишком дорогими, или недостаточными/неудобными по возможностям, или вовсе недоступными. Тогда захочется реализовать свой сервер 🌐

Если слова типа docker, nginx, deploy, сертификаты, http казались избыточными для геймдева — это не совсем так. Без этого прожить можно, но это сильно сузит спектр возможностей. Если засиживаться в Middle-звене не хочется, то стоит развивать свои компетенции и в этом направлении. А если в планах есть место руководителя, то знание этих технологий необходимо.

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

На рассуждения по теме побудило это видео: здесь доступно и кратко подсвечены базовые моменты и теги для дальнейшего ресёрча 🔍
—————————————
#gamedev #development #backend #server #infrastructure #career #teamlead #геймдев #разработка #бэкенд #сервер #инфраструктура #компетенции #карьера #рекомендация #видео
🔥3👍2
Заметка про процессы в инди-командах

📽 Коллеги из K-Syndicate провели стрим на тему командного ведения проекта. Задели практически все важные темы: сам Unity, системы контроля версий, тесты, CI, пайплайны, документация, различные инструменты и многое другое. На мой взгляд стрим получился очень полезным и содержательным для инди-команд. И у меня теперь есть хороший материал, который я смогу пересылать для ознакомления вместо "тысячи слов".

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

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

☹️ Даже самые заряженные в такой обстановке начинают терять энтузиазм. И из идеи "сделать и выпустить проект" это мероприятие рискует скатиться в незавершённый долгострой: если все не разругаются между собой, то проект в какой-то момент может забуксовать, так и не достигнув своей цели.

❗️Мои советы для входящих в геймдев через инди:
— удача – это важно, но полагаться только на неё не стоит;
— для первой игры нужно брать наиболее простую идею из желаемых;
— всеми правдами и неправдами пинать проект до релиза как можно быстрее;
— наращивать сложность и амбициозность проектов постепенно, только после успешного завершения предыдущих;

🎯 Про цели:
— не нужно ставить целью "сделать игру мечты" или "сделать Ведьмака 4";
— в качестве целей ставить непосредственно релиз, сформированную команду и отлаженные процессы.

На мой взгляд достижение именно этих целей важно и реально в первую очередь. Это 100% окупится и позволит добиваться новых более сложных целей.
—————————————
#gamedev #development #team #management #career #indi #геймдев #разработка #команда #инди #менеджмент #компетенции #карьера #рекомендация #видео
🔥2👍1
Готовлюсь докладывать 📣

В Новосибирске намечается локальная конференция. Не могу не приехать и не поддержать такое мероприятие. Хотя бы своим участием 📋
Дописываю третью статью по мультиплееру и делаю перерыв — буду выбирать и готовить тему для выступления. Что-нибудь не про мультиплеер 😂

Если повезёт — будет запись. Не повезёт — попробую сделать своими силами. Но статью точно оформлю 📹

Присоединяйся, по возможности, и ты 🤘
👍1🔥1🎉1
📝 Опубликовал третью статью про разработку мультиплеерных игр 📝

Статья доступна на Habr, VK, Dtf, Dzen, Pikabu
В ней продолжаю копать в сторону сетевого мультиплеера и разбираю, что есть "сервер", а что есть "клиент".
Помимо самой статьи в конце можно найти ссылки на другие полезные материалы по этой теме, которые помогут достроить контекст.

Эта статья получилась пока самой большой по материалу и по времени написания. Начал постепенно искать свой "дизайн" 🎨
Многое было сокращено, многое было вынесено в другие будущие статьи — можно сказать, что черновики уже есть ✂️
Пока писал, отсмотрел уйму материала. Узнал даже что-то новое и дополнил свою картинку понимания 🧠

Пока дальнейшую работу ставлю на паузу. Как закончу с подготовкой к фестивалю, продолжу генерить контент.
Но посты с заметками и мыслями по встречающемуся контенту никуда не денутся ✏️
————————————————————
#unity #gamedev #development #multiplayer #статья #геймдев #разработка #мультиплеер #aks2dio
👍3🔥1
Заметка про инструменты для создания локаций

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

—————————————

🔲 Первый инструмент — это TileMap. Обычно его используют для построения 2D-локаций, но в видео рассмотрен пример применения для построения локаций в 3D. Выглядит удобно. Для каких-нибудь ГК-проектов, мне кажется, must-have.

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

—————————————

🌀 Второй инструмент — это пакет Splines. Сплайны часто используются в разработке игр, и разнообразных решений по их генерации накопилось уже большое количество. То, что Unity сделали свой пакет, упростило жизнь. Как минимум, они теперь делают такие видео с демонстрацией возможностей и популярных use-case'ов.

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

Отрисовку, кстати, можно сделать и через LineRenderer, он тоже поддерживает задание нескольких точек, но он "из коробки" не даёт такой гибкости в настройке полученной кривой как Splines.
—————————————
#gamedev #development #leveldesign #tool #unity #editor #геймдев #разработка #инструменты #дизайнуровней #рекомендация #видео
👍3🔥2
Заметка про коллизии

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

💡И вот для них здесь много интересного:
- Как вообще устроен просчёт коллизий;
- Как происходит процесс оптимизации и как понять, что оптимизировать;
- Как всё усложняется по мере масштабирования исходных условий;
- Зачем нужны знания математики и алгоритмов;
- Что такое O(n) и как применяется.

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

👍 Мне очень понравился стиль автора, и я хочу прийти к чему-то такому же. Попробовав свои силы, могу оценить, сколько трудов было вложено в подготовку этого материала — отличный контент и ориентир для совершенствования.
—————————————
#gamedev #development #physics #math #unity #optimization #геймдев #разработка #физика #оптимизация #математика #рекомендация #статья
👍2🔥1