С Новым Годом уважаемые читатели! Год назад я публиковал подборку из 150-ти книг для тех, кто делает игры и в ней я обещал, что буду постоянно обновлять ее и добавлять в нее новые книги. Время не заставило себя ждать и количество книг в подборке увеличилось в двое и если вы ищите что почитать, то заходите или добавляйте в закладки!
Пользователь
Набор инструментов инди-разработчика игр
Инди-разработчик игр, это универсальный солдат, которому приходится делать все: писать код, рисовать картинки, лепить 3D модели потом делать для них текстуры и многое другое. Под каждую задачу нужен определенный инструмент, да еще и бесплатный по возможности, так как начинающий игродел имеет скромный бюджет. О том, какие программы помогли мне ускорить рабочий процесс я расскажу под катом.
Внимание: данный пост не рекламный, это лишь список программ, которые помогают мне в моих проектах.
Как сделать стартовое меню и миникарту
Всем доброго дня
В этой небольшой статье я расскажу как сделал стартовое меню и миникарту с помощью ассетов из Unreal Engine Marketplace.
Unreal Engine 4. Новая сетевая модель: PushModel
В стандартной сетевой архитектуре Unreal Engine, сервер проверяет, изменение значения у реплицированной переменной Actor класса, и в случае отличия, значение синхронизируется между сервером и клиентом. Когда объем данных для синхронизации не больших размеров, особых проблем с производительностью нет.
Однако, игра часто может состоять из огромного множества Актеров и переменных, которые необходимо реплицировать одному или нескольким клиентам, и это уже может стать проблемным местом.
UE уже предоставляет такие функции как: NetUpdateFrequency, NetCullDistanceSquared и т.д. Основная задача которых состоит в том, что бы устранить из общей картины репликации, как можно больше актеров не нуждающихся в постоянно синхронизации данных.
PushModel, пока что экспериментальная фича, которая может позволить разработчикам активно отмечать необходимость синхронизации свойства, для этого предоставляется несколько макросов:
Оптимизация GameThread в Unreal Engine 4 ч.1
Батл рояль, сейчас весьма популярный жанр, но в то же время весьма сложный в реализации. 100 игроков, большой открытый мир и все это преподносит проблемы в разработке такой игры.
The Significance Manager в Unreal Engine 4
Significance Manager - единая структура, которая предоставляет возможность, написать гибкий, специфический код, для оценки и расстановки приоритетов объектов. На основе полученных данных, появляется возможность изменять поведение системы, к примеру отключать системы частиц\звуки, уменьшать частоту тика, изменять лоды и т.д.
Немного про особенности реализации Wave Function Collapse в нашей игре
В нашей прошлой игре разработка уровня занимала около трех месяцев, сейчас мы делаем тактическую стратегию и в ней планируется более 100 уровней. Увидев дикий ужас в глазах левел-дизайнера, мы решили, что “Лучше день потерять, потом за пять минут долететь!” и принялись за работу над автоматической генерацией уровней.
В этой статье, коротко расскажем об особенностях нашего алгоритма для генерации уровней. На что, с нашей точки зрения, полезно обратить внимание и какие тонкие места могут быть при разработке.
Оптимизация GameThread в Unreal Engine 4 ч.2
Продолжаем тему оптимизации процессов, с предыдущей частью можно ознакомится по ссылке: Часть 1
Локализация игр на Unity и Unreal Engine
Для того чтобы успешно локализовать игру, нужно учесть огромное количество аспектов. В том числе имеет значение и то, на каком движке создан проект. Мы решили углубиться в тему и рассказать об особенностях локализации игр на двух самых популярных движках: Unity и Unreal Engine.
FadeObjects — Скрываем объекты между камерой и персонажем
Как-то раз, потребовалось написать модуль для скрытия объектов между камерой и персонажем, либо между несколькими персонажами для RTS игры. Хочу поделиться для тех, кто начал свой путь в Unreal Engine. Данный туториал, если его можно так назвать, будет с использованием С++, но в прилагаемом проекте на github будет вариант и на Blueprint, функционал обоих идентичен.
И так, поехали. Разобьем нашу задачу на несколько мелких:
- Получить объекты между камерой и персонажем.
- Изменить материал этих объектов на нужный.
- Изменить материал обратно на тот что был, если объект не мешает обзору нашего персонажа.
Нам потребуются 2 таймера, один добавляет объекты в массив для работы с ними, и второй для изменения самого объекта, в данном случае я меняю материал с обычного на слегка прозрачный. Этот материал Вы можете заменить на любой подходящий для вас.
Локализация игр в Unreal Engine 4
Мы работаем над игрой "Cat Movies!" в движке Unreal Engine 4. Это экономическая стратегия, в которой достаточно много текста, и его мы планируем переводить на различные языки. Как и многие другие (но это не точно, и, надеюсь, что это не так), мы решили отложить этап настройки локализации на более поздние итерации разработки и, как оказалось, зря.
Локализация в UE4 реализована шикарно, и если помнить, что достаточно весь текст, который будет переводиться, хранить в Ftext (Text в Blueprint'ах) полях, то в целом, с выхватом текста из игры нет никаких проблем. Достаточно открыть Localization Dashboard, потыкать пару кнопок — и вуаля.
И, не смотря на всю простоту этого действа, мы все же столкнулись с рядом проблем, из-за чего пришлось часть кода перелопачивать.
Дополнено от 16.10.19: Форматирование текста.
Дополнено от 13.09.20: Локализация ассетов.
Unreal engine — UMG Best Practices
Эта статья перевод статьи Chris Gagnon, сотрудника Epic Games, который непосредственно создавал UI. Он описал рекомендации и советы, как сделать лучше UMG.
Подвох с указателями на Default Subobject
Пожалуй, любой С++ разработчик на Unreal Engine имел дело с созданием Default Subobject в конструкторе. Через этот механизм, в частности, создаются компоненты по-умолчанию для акторов. Казалось бы, какие нюансы могут быть связаны с использованием такого стандартного функционала?
Между тем, они есть. И если их не учитывать - можно получить весьма странные проблемы.
Инструкция по сборке бинарной версии UE 4.27
Это инструкция о том, как настроить окружение и собрать бинарную версию движка Unreal Engine 4.27. В дальнейшем, ее можно доставить другим членам команды, у которых не установлена студия. При этом, сама ветка 4.27 до сих пор поддерживается Эпиками и регулярно получает обновления. Но, в бинарную версию движка из лаунчера эти изменения уже не добавляют и фиксы не выпускают.
Кастомная навигация в Unreal Engine 5 и USD импорт файлов
Перед мной возникла задача создать демку на Unreal Engine 5 с возможностью динамической генерации навигации для камеры и встроенной поддержкой загрузки файлов в формате USD на уровень в режиме выполнения (отдельная игра без редактора).
Gameplay Ability System: как мы используем плагин для разработки Survival RPG
Для начала разберем самые базовые принципы GAS и основные ее сущности, а также копнем чуть дальше, чем «делаем зелье для пополнения здоровья».
Общий обзор Nanite
После показа впечатляющего демо год назад и недавнего показа в превью UE5, Nanite сейчас весьма популярная тема. Мне просто захотелось окунуться в эту тему и немного развлечься, пытаясь разобраться и объяснить как на мой взгляд всё это работает и какие технические решения стоят за этим, используя кадр захваченный в RenderDoc. Стоит отдать должное Epic за открытость их технологий, что делает проще их изучение и структурирование; в редакторе есть маркеры и отладочная информация которые оказываются очень полезными.
Это кадр, который мы собираемся рассмотреть из демо проекта Долина Древних. Он показывает взаимодействие между Nanite и не-Nanite геометрией и оно сделано действительно круто.
Slate UI Framework (UE4/5) — standalone application
Slate is written entirely in C++ and runs on all Unreal Engine 4 supported platforms. It is render interface agnostic, which allows it to be used in standalone desktop and mobile applications that do not depend on the game engine.
Gerke Max Preussner о Slate UI Framework
Последние 6 лет я много работаю с Unreal Engine 4. Вернее не с самим движком, а с его различными модулями, с помощью которых мы выстраиваем свою базу тулов и различных технических решений вокруг основного игрового проекта. Несмотря на зоопарк различных технологий, который образовался вначале, со временем наша собственная экосистема постепенно начала стандартизироваться. Всё больше ребят начали писать более качественные расширения для Unreal Editor именно на Slate UI Framework. Конечно, когда нужно сделать UI для функциональности, которую можно "впихнуть" в одну кнопку, проще реализовать это на UMG в Editor Utility widget. Но если нужно что-то посложней, например, нужна асинхронность в процессе выполнения или, например, необходимо рисовать на UI TreeView (деревья), то тут без обращения к Slate модулю - не обойтись. Так же для многих UI тулов рано или поздно встаёт вопрос о возможности их самостоятельного существования, в отвязке от конкретного проекта, а в идеале - без привязки к Unreal Editor. Про сборку Stand Alone приложения, с UI от редактора UE4/5, я и хочу вам рассказать.
Как срендерить анимацию в unreal engine
Создание анимационного ролика в unreal engine.
Изучение физического движка Bullet Physics. Часть 2. Примеры
Данная статья продолжает тему исследования библиотеки симуляции столкновений в Bullet Physics (Bullet). Предыдущая статья здесь.
Чтобы разбавить теоретические рассуждения, здесь будут приведены практические примеры, в которых освещено общее взаимодействие с объектами средствами Bullet.
В качестве системы визуализации используется Unreal Engine(UE), поскольку хайповая штука и она мне знакома она бесплатна, имеет множество дополнений и, в целом, предоставляет красивую картинку “из коробки”.
Информация
- В рейтинге
- Не участвует
- Откуда
- Екатеринбург, Свердловская обл., Россия
- Дата рождения
- Зарегистрирован
- Активность