Как стать автором
Поиск
Написать публикацию
Обновить
37.88

Unity *

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

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

Оптимизация 3D-графики под WebGL (опыт PLANT-SIM)

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

В этой статье речь пойдет об оптимизации Unity-сцены проекта Plantsim 1.0.: о визуальной части цифровой копии предприятия Tennessee Eastman Process, реализованного на Unity 2017.1.1f1.


image


Заметка от партнера IT-центра МАИ и организатора магистерской программы “VR/AR & AI” — компании PHYGITALISM.

Читать дальше →

Симуляция волос и тканей с Unity Cloth на мобильных устройствах

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


Многие разработчики рано или поздно сталкиваются с задачей достичь реалистичного поведения тканей или волос. Для этого есть целый ряд технологий, однако далеко не все из них подходят для мобильных платформ. Обычно мобильные разработчики запекают анимации, потому что это наименее затратно. Мы же поговорим о симуляции в реальном времени — о модуле Unity Cloth.
Читать дальше →

Alt: City Online. Как я в одиночку создавал «Gta Online» для мобильных устройств. Часть 1

Время на прочтение6 мин
Количество просмотров17K
Возможно ли в здравом уме замахнуться на подобный проект в одного, и надо ли оно вообще? Спойлер: да (длинный пост с картинками и видео).


Читать дальше →

Практические рекомендации по повышению производительности вашей игры на Unity. Часть 1

Время на прочтение6 мин
Количество просмотров8.2K
Всем привет. В преддверии старта курса «Unity Game Developer. Basic» подготовили для вас полезный перевод.




Введение


Когда мы делаем игры, мы часто не уделяем должного внимания одному из самых важных аспектов разработки игры — оптимизации. В результате мы получаем лаги и низкий FPS (иногда даже на High-end устройствах, если все совсем уж запущенно). Большинство людей всегда будет рассматривать оптимизацию игры как последний этап, и именно это является первой ошибкой — она всегда должна быть первым пунктом в списке.

База данных на ScriptableObject c системой сейва/загрузки

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

Введение


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


Для хранения таких данных существует много способов — кто-то хранит их в таблицах, в xml или json файлах, которые редактируют собственными инструментами. Unity предоставляет свой способ — Scriptable Objects (SO), которые мне нравится тем, что для их визуального представления не нужно писать свой редактор, легко делать ссылки на ассеты игры и друг на друга, а с появлением Addressables эти данные можно легко и удобно хранить вне игры и обновлять отдельно.


В этой статье я хотел бы рассказать о своей библиотеке SODatabase, с помощью которой можно удобно создавать, редактировать и использовать в игре (редактировать и сериализовать) scriptable objects.

Читать дальше →

Вставка реальных объектов в Unity с помощью Meshroom

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

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

В контексте 3d-моделей фотограмметрия — это процесс создания 3D-моделей из отсканированных объектов.

Вам нужны реалистичные 3D-модели для идеи игры, но у вас ограничен бюджет? Хотите создать сверхреалистичное игровое окружение? Если да, то продолжайте чтение!

Используя фотограмметрию, мы берём входящие данные, то есть фотографии, и пропускаем их через конвейер или набор обрабатывающих их методов. Данные из этих процессов или выходной информации участвуют в создании готовой 3D-модели.
Читать дальше →

Простая имитация разрушений с использованием Unity и Blender

Время на прочтение3 мин
Количество просмотров15K
Всем привет! недавно задался вопросом насчет разрушений в Unity, поискал в интернете что есть на эту тему, но увы я нашел лишь кучу вопросов и обсуждений.

И нет я не заявляю что моя статья единственная в своем роде, потому что метод довольно прост, но почему-то прямого туториала для этого я не нашел.

Начнем с того что в Unity НЕЛЬЗЯ РАЗРУШИТЬ/РАЗДЕЛИТЬ/РАЗРЕЗАТЬ объект, наши разрушения будут по сути то и не разрушениями вовсе, а лишь их визуальной имитацией, поскольку как я сказал выше, невозможно по другому.
Читать дальше →

Как защитить данные игры на Unity в оперативной памяти?

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

Привет! Не секрет, что существует множество программ для взлома игр и приложений. Способов взлома тоже много. Например, декомпиляция и модификация исходного кода (с последующей публикацией кастомных APK, к примеру, с бесконечной голдой и всеми платными покупками). Или самый универсальный способ — сканирование, фильтрация и редактирование значений в оперативной памяти. Как бороться с последним, расскажу под катом.
Читать дальше →

Unity UIElements: первые впечатления в продакшн

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

Сегодня мы поделимся впечатлениями от работы с нашумевшим фреймворком от Unity — UIToolkit, известным также как UIElements. Мы рассмотрим его основные особенности без глубокого погружения в код. Стоит уточнить, что у команды ранее не было опыта работы с веб-версткой и очевидные для профессионалов этой сферы вещи, для нас могут быть не очевидны.


image


Заметка от партнера IT-центра МАИ и организатора магистерской программы “VR/AR & AI” — компании PHYGITALISM.

Читать дальше →

Улучшаем работу со сценами с помощью ScriptableObject

Время на прочтение8 мин
Количество просмотров4.6K
Всем привет. Прямо сейчас в OTUS открыт набор на курс «Unity Game Developer. Basic». Предлагаем вам посмотреть запись дня открытых дверей по курсу, а также традиционно делимся интересным переводом.





Работа сразу с несколькими сценами в Unity может быть сложной задачей, и оптимизация этого рабочего процесса очень сильно влияет как на производительность вашей игры, так и на продуктивность вашей команды. Сегодня мы поделимся с вами советами по настройке рабочих процессов со Scene, которые можно масштабировать на более крупные проекты.

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

Визуализация данных при отладке в Visual Studio Code

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


Вообще Debugger Visualizers для обычного Visual Studio — это очень старая тема (статья 2009 года), но не очень популярная. В большинстве случаев принято учить сразу дебажить, представляя процессы в голове, а штуки вроде сортировок и списков показываются на доске. В вебе часто визуальную часть предоставляет браузер, и все всем довольны. Но бывает, что списки или деревья в голове уже не умещаются, таблицы хочется отсортировать, а графики строить не выходя из среды отладки. Для всего этого и был создан плагин для VS Code — Debug Visualizer.
Читать дальше →

Инди-проект Tenebris, или геймдев без бюджета

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

Друзья, меня зовут Пётр и хочу рассказать вам о своем опыте в разработке инди-игры  —  Tenebris. Работа над проектом началась с мая 2019 года, именно тогда, имея в голове лишь приблизительный концепт и дикое желание, начал собирать команду.

Довольно скоро ко мне присоединился приятель и вместе мы стали продумывать механики. 

С чего все началось


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

Из за проблем с правообладателями, такие серии как HoMM и Disciples сильно испортились и потеряли популярность. Среди современных игр, сложно найти что то сравнимое с ними по глубине и механикам. Мне самому очень бы хотелось поиграть в игру, схожую с Disciples 2 но с современными механиками и возможностями. Но к сожалению, такой игры не было.

Говоря проще — мы устали ждать новую классную игру, поэтому решили сами ее сделать.

Как отбивают желание делать игры и вообще что-либо


Параллельно, я пошел на курсы геймдизайна. По мере прохождения обучения я получил обратную связь в виде утверждения — «идея классная, но у вас все равно ничего не получится» (дальше шел больший список перечисления почему не получиться). 

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

Сказ о разработке амбициозного проекта 16-ти летним парнем (file547)

Время на прочтение5 мин
Количество просмотров13K
Итак, приветствую всех, кто читает этот пост, который для меня является первым на этой площадке. Сегодня я расскажу вам о том, как 16-ти летний парень (Moony Games… то есть я!), увлеченный разработкой игр, решил шагнуть на качественно новый уровень и немного помечтать, заодно поговорим и о том амбициозном проекте, подающем лично для меня большие надежды на успех. Что ж, приступим!

image

Это случилось, когда я учился в 8-ом классе. Мы с моим горячо любимым приятелем обсуждали за завтраком в школьной столовой проблему озонового слоя Земли, упоминая негативное влияние наработок Илона Маска на него. Недолго подумав, я как сказанул: «Ну, раз этот самый слой защищает от космической радиации, может ли быть такое, что при его разрушении, люди станут превращаться в ужасных мутантов под её влиянием». На такую мысль я получил следующий ответ: «А что, неплохой сюжет для игры типа Fallout!». Так мы и начали разработку проекта The Sun Was Really Bright (TSWRB), назвав себя DExit Games.
Читать дальше →

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

Создание панорамных видео в Unity

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

Зачем нужны панорамные видео?


Большинство статей моего блога рассчитано на разработчиков игр. Если вы один из них, то можете задаться вопросом, чем вас может заинтересовать создание панорамных видео (360° videos). Виртуальная реальность — очень успешная отрасль, на различных платформах каждый год выпускается всё больше игр. Многие игроки узнают о VR-играх через трейлеры, которые, к сожалению, записаны в 2D.


Если вы хотите сделать ещё один шаг вперёд, то можете создать дополнительный трейлер в панорамном видео, чтобы продемонстрировать весь потенциал вашей игры. Хотя для игры в VR обычно требуется дорогая гарнитура, панорамные видео нативно поддерживаются YouTube без необходимости дополнительного оборудования. А если у вас есть телефон, то вы можете очень просто превратить его в VR-гарнитуру с помощью Google Cardboard.

Равномерное перемещение объекта вдоль кривой

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


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

Наверное, каждый имеющий отношение к теме знает или, по крайней мере, слышал, про кривые Безье, B-сплайны, сплайны Эрмита и прочие интерполяционные и сглаживающие сплайны и совершенно правильно предложил бы использовать в описанной ситуации один из них, но не всё так просто, как хотелось бы.
Читать дальше →

Что нового в Unity 2020.1?

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

Только недавно стало известно, что Bolt становится бесплатным, а уже сегодня выходит новая версия Unity 2020.1.


Довольно много изменений и улучшений. Пройдёмся по основным моментам.



Не монолитом единым. Модульный подход в Unity

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

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

Под термином «Модульный подход» имеется ввиду организация ПО, которая использует внутри себя независимые, подключаемые, конечные сборки которые можно разрабатывать параллельно, менять на ходу и достигать разного поведения ПО в зависимости от конфигурации.
Читать дальше →

Как анализатор PVS-Studio стал находить ещё больше ошибок в проектах на Unity

Время на прочтение7 мин
Количество просмотров2.4K
image1.png

Разрабатывая статический анализатор PVS-Studio, мы стараемся развивать его в различных направлениях. Так, наша команда работает над плагинами для IDE (Visual Studio, Rider), улучшением интеграции с CI и т. д. Увеличение эффективности анализа проектов под Unity также является одной из наших приоритетных целей. Мы считаем, что статический анализ позволит программистам, использующим этот игровой движок, повысить качество своего исходного кода и упростить работу над любыми проектами. Поэтому хотелось бы увеличить популярность PVS-Studio среди компаний, занимающихся разработкой под Unity. Одним из первых шагов в реализации данной задумки стало написание нами аннотаций для методов, определённых в движке. Это позволяет контролировать корректность кода, связанного с вызовами аннотируемых методов.
Читать дальше →

Создание шейдерной анимации в Unity

Время на прочтение7 мин
Количество просмотров14K
Недавно я работал над анимацией респауна и спецэффектом главного героя моей игры “King, Witch and Dragon”. Для этого спецэффекта мне нужна была пара сотен анимированных крыс.


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

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

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

Я подробно опишу создание вот этой анимации:

Rat animation

Как мы обвесили механику баллистического расчета для мобильного шутера алгоритмом компенсации сетевой задержки

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


Привет, я Никита Брижак, серверный разработчик из Pixonic. Сегодня я хотел бы поговорить о компенсации лагов в мобильном мультиплеере.

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

Используем ее и мы в своем мобильном мультиплеерном шутере Dino Squad.

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