Как стать автором
Обновить
14.39

Unity *

Инструмент разработки 2D/3D-игр

Сначала показывать
Порог рейтинга
Уровень сложности

Интересное из мира Unity #2 (03.02.23 — 09.02.23)

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров2.2K

Всем привет! Меня зовут Григорий Дядиченко, и я технический продюсер. А вот и второй выпуск дайджеста для Unity разработчиков. Интересные инструменты, красивые проекты, и всё что попалось мне на глаза за эту неделю. Если вам интересна Unity разработка — добро пожаловать под кат!

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии0

Гайд по устранению зависимостей в Addressables

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров2.8K

Привет.

Это перевод моего поста

Когда вы переносите проект с использования Resources на Addressables или на чистые AssetBundles, вы определенно столкнётесь с проблемой фантомных (скрытых, устаревших, неиспользуемых) ссылок на ассеты, которые могут при работе игры привести к дублированию ассетов в памяти.

В этом посте вы найдете встретившиеся мне случаи и как я их разрешил.

Читать
Всего голосов 7: ↑7 и ↓0+7
Комментарии0

Интересное из мира Unity #1 (27.01.23 — 2.02.23)

Время на прочтение2 мин
Количество просмотров2.2K

Всем привет! Меня зовут Григорий Дядиченко, и я технический продюсер. Я решил вести дайджест новостей по Unity, отбирая интересные посты из того, что произошло за неделю. Красивые проекты, интересные ролики и многое другое. Если вам интересна Unity разработка — добро пожаловать под кат!

Читать далее
Всего голосов 11: ↑10 и ↓1+9
Комментарии4

Что такое тексел?

Время на прочтение5 мин
Количество просмотров8.7K

Всем привет! Меня зовут Григорий Дядиченко, и я технический продюсер. Сегодня хочется поговорить о текстурах. О том, что такое тексель и о других базовых понятиях компьютерной графики. Что такое тексел или тексель? Если вам интересна эта тема — добро пожаловать под кат!

Читать далее
Всего голосов 25: ↑25 и ↓0+25
Комментарии10

Истории

Unity advanced или Awaitable компоненты-промисы

Время на прочтение4 мин
Количество просмотров3K

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

Оговорюсь, что все что описано ниже - придумано мной, так что идею я нигде не украл. Также в результате поисков в интернете ничего подобного не нашел. Если для вас это актуально - пользуйтесь на здоровье =)

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

А в силу того, что на дворе 2023 год, мы в след за js-ом сделаем этот промис awaitable. 

Я не буду останавливаться на работе async/await, по этому поводу и так достаточно много написано, не только на официальном сайте, но и много где в интернете. Обозначим только основные пункты.

Для обеспечения работы этого механизма от нас требуется в типе:

Познать больше
Всего голосов 5: ↑2 и ↓3-1
Комментарии12

Подключаем SignalR к Unity

Время на прочтение12 мин
Количество просмотров4.1K

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

Читать далее
Всего голосов 3: ↑2 и ↓1+1
Комментарии9

Создание WEBGL приложения Вконтакте на Unity

Время на прочтение19 мин
Количество просмотров11K

В нашем уроке мы создадим свой проект на Unity, и подключим его к html странице с помощью Javascript. И затем научимся обмениваться данными между Javascript браузера и скриптами Unity. И в заключение создадим новое приложение Вконтакте и научимся работать в связке Api Вконтакте – Javascript – Unity .

Вы узнаете, как написать простой скрипт, как добавить события пользователя. Как из скрипта Unity обращаться к скрипту Javascript на стороне браузера. И также как пройти путь от нажатия кнопки в среде Unity до вызова метода Api Вконтакте с полным контролем всех событий.

Читать далее
Всего голосов 9: ↑8 и ↓1+7
Комментарии0

Wave Function Collapse для процедурной генерации в Unity

Время на прочтение7 мин
Количество просмотров4.2K

Wave Function Collapse – это алгоритм, c помощью которого можно реализовать генерацию чего угодно, что можно было бы описать с помощью правил или конкретным примером. В этой статье мы рассмотрим, как использовать WFC для генерации карты в Unity.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Tenebris: 7 кругов ада инди-разработки

Время на прочтение6 мин
Количество просмотров4.2K

Друзья, меня зовут Пётр, и в этой статье я попробую рассказать о нашем уже трехлетнем опыте в разработке инди-игры  —  Tenebris: Terra Incognita. Через какие сложности мы прошли и чего добились.

Работа над игрой началась в мае 2019 года, про старт я написал ранее в первой статье. Сегодня мы имеем на руках Альфа-версию игры и работаем над сборкой для раннего доступа.

Спросите: почему так долго? 

Отвечу: потому, что это наша первая игра, мы не имеем инвестиций и работаем на энтузиазме, в свободное от работы время. 

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии15

UI Роутер в Unity

Время на прочтение10 мин
Количество просмотров4K

Всем привет! Меня зовут Григорий Дядиченко, и я технический продюсер. Обсуждая по работе архитектуру речь зашла про UI. Есть много разных подходов к тому как работать с графическим пользовательским интерфейсом в Unity. Хотелось предложить один вариант реализации переходов по интерфейсу плюс заодно показать пример использования атрибутов и рефлексии в C#.

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии4

Использование архитектуры Composition root в Unity. Часть 2. Переход на зависимости ссылочного типа

Время на прочтение4 мин
Количество просмотров2K

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

Время рефакторинга
Рейтинг0
Комментарии0

Мой опыт разработки программы для игры в шашки с помощью алгоритма минимакс

Время на прочтение17 мин
Количество просмотров10K

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

Мне захотелось написать программу, которая будет играть в шашки на относительно высоком уровне. Для этого я использовал алгоритм минимакс и Unity.

Читать далее
Всего голосов 21: ↑21 и ↓0+21
Комментарии25

Unity3d: Запись файла на Yandex диск на C#

Время на прочтение3 мин
Количество просмотров3.7K

К моему удивлению, на столь популярный сервис, как Яндекс диск, не нашлось примеров записи файла на диск на языке программирования C#. На PHP же ситуация обратная, примеров вдоволь, например: https://snipp.ru/php/disk-yandex

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

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Комментарии2

Ближайшие события

Модульная архитектура в Unity

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров6.8K

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

Такие фреймворки зачастую имеют излишний функционал для конкретно взятых задач. Документации становится все больше и больше, да просто тонны документации! Не смотря на это, порог вхождения для вновь прибывшего на проект разраба неуклонно растет. А также есть те кто сразу же отказывается от работы на таких фреймворках, со словами “А зачем мне лезть в это абстрактное болото!?”. И я их прекрасно понимаю. 

И что же получается, пытаясь избежать проблем с хард кодом мы обрели другие проблемы, так особо и не повысив скорость разработки!? Проблемы, для устранения которых, необходимо ооочень много времени. Т.е. мы прошли путь от крайности к крайности от “хард кода” к фреймворку.

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

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Задачка «Вооружимся архитектурой»

Время на прочтение5 мин
Количество просмотров7.2K

Всем привет! Меня зовут Дядиченко Григорий, и я технический продюсер. В своём блоге в телеграм я периодически публикую задачки по Unity. Решение одной задачки получается слишком длинным, чтобы писать про него в блог. Поэтому я решил это оформить в статью. Задачка звучит так.

Вы решили сделать с друзьями свой скайрим. У вас пока в игре есть два вида оружия: молот и меч. Они отличаются уроном, прочностью и скоростью атаки. Плюс логикой атаки. Атака молота аое в круговой зоне. Атака меча бьёт до 3 ближайших противников. К вам пришёл катжит и за лунный сахар предложил купить у него схему архитектуры на картинке выше. Предложите решение лучше. В чём проблема данной схемы?

Читать далее
Всего голосов 6: ↑5 и ↓1+4
Комментарии32

Как использовать функции столкновений в Unity: OnCollisionEnter/Stay/Exit, OnTriggerEnter…

Время на прочтение6 мин
Количество просмотров42K

Столкновения (Collisions) играют важную роль в компьютерных играх. Это объемный пласт взаимодействия между игровыми объектами.

В этой статье разбирается, как работать со столкновениями в Unity, как ловить и обрабатывать их в коде.

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Комментарии12

Дельта компрессия и квантизация объектов в C#

Время на прочтение11 мин
Количество просмотров12K

Cтатья затрагивает тему сериализации данных, которые передаются по unreliable каналам.

В первую очередь это касается реалтайм игр, которые критичны к сетевым задержкам, имеют активное общение клиента и сервера, например, 10 - 60 раз в секунду и используют UDP протокол.

В статье вы узнаете, как с помощью дельта компрессии и квантизации можно уменьшить размер объектов и, тем самым, уменьшить размер сериализованных данных. Попутно мы познакомимся с библиотекой для битовой сериализации данных NetCode.

Читать далее
Всего голосов 37: ↑36 и ↓1+35
Комментарии18

Как сделать билд минимального размера в Unity?

Время на прочтение7 мин
Количество просмотров11K

Всех с Новым Годом! Меня зовут Григорий Дядиченко, и я технический продюсер. Размер билда. Сегодня хотелось бы поговорить о нём и составить некий чек-лист, который полезно проходить перед выкладкой проекта. Если вам интересно, как можно инструментами Unity уменьшить вес сборки — добро пожаловать под кат!

Читать далее
Всего голосов 19: ↑19 и ↓0+19
Комментарии14

2022. Год из жизни CTO в GameDev

Время на прочтение8 мин
Количество просмотров6.9K

Доброго времени, Хабр!

Сначала немного представлюсь. Меня зовут Сергей. В IT я уже более 13 лет из них в GameDev более восьми. Так вышло, что до написания статьи на хабр дошел только сейчас. И дошел только благодаря подписчикам моего небольшом канала по разработке игр в telegram.

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

Читать далее
Всего голосов 24: ↑20 и ↓4+16
Комментарии20

Сколько я заработал на Яндекс играх? Моя история выпуска игры

Время на прочтение2 мин
Количество просмотров43K

Добрый день, Игроделы. Я InterestingPerson. В этой статье я опишу как создал свою игру и залил её на Яндекс.

Читать далее
Всего голосов 30: ↑17 и ↓13+4
Комментарии14