За 21 год существования в SuperJob разработали три версии реализации API для интеграций с бэкендом. Во время разработки последней они решили пересмотреть подход к версионированию. Сейчас в актуальной реализации порядка 379 эндпойнтов, более 900 моделей сущностей и 11 поддерживаемых мажорных версий. Когда проект развивается, вместе с ним меняются и требования к API, а значит неизбежно нарушение обратной совместимости.
Рубрика «blueprints»
Версионирование API или единая кодовая база для всех версий
2021-09-14 в 13:11, admin, рубрики: api, blueprints, impact analysis, php, version control systems, versioning, Блог компании SuperJob, Блог компании Конференции Олега Бунина (Онтико), версионирование, версионирование баз данных, Программирование, Системы управления версиями, совместимость версийДинамическое рисование по мешу в Unreal Engine 4
2018-09-17 в 8:27, admin, рубрики: blueprints, render target, Unreal Engine, UV, блюпринты, разработка игр, рисование по мешуВ этом туториале по Unreal Engine 4 вы научитесь рисовать цветами по мешу любого типа.
Рисование по мешу позволяет игрокам раскрашивать внутриигровые объекты. Примеры рисования по мешу: граффити (goop) в Super Mario Sunshine, гели в Portal 2 и чернила в Splatoon. Рисование может использоваться как геймплейний элемент или быть просто графическим оформлением. Как бы то ни было, рисование по мешу открывает новые возможности для дизайнеров геймплея и художников.
Хотя в перечисленных выше примерах этот эффект используется почти одинаково, вы можете применять рисование по мешу и для многих других эффектов. Например, можно рисовать на объектах банками с краской, прорисовывать на персонажах раны или даже позволить игрокам самим нарисовать лицо персонажа!
В этом туториале вы узнаете, как рисовать на скелетном меше. Для этого мы сделаем следующе:
- Развернём меш в его UV-форму
- Используем точку пересечения трассировки линии для создания сферической маски меша
- Отрендерим развёрнутый меш и сферическую маску в render target с помощью захвата сцены (scene capture)
- Используем маску для смешивания текстур в материале персонажа
Учтите, что этот туториал не посвящён рисованию вершин. Рисование вершин зависит от разрешения меша и его невозможно изменять в процессе игры. Используемый в этом туториале метод, напротив, работает вне зависимости от разрешения меша и его можно применять во время игры.
Читать полностью »
Создание интерактивной травы в Unreal Engine
2018-08-16 в 6:58, admin, рубрики: blueprints, particle system, Unreal Engine, Unreal Engine 4, блюпринты, разработка игр, системы частицДо недавнего времени трава в играх обычно обозначалась текстурой на земле, а не рендерингом отдельных стеблей. Но с увеличением мощности железа появилась возможность рендерить траву. Замечательные примеры такого рендеринга можно увидеть в играх наподобие Horizon Zero Dawn и The Legend of Zelda: Breath of the Wild. В этих играх игрок может бродить по травяным лугам, и, что более важно, трава реагирует на действия игрока.
К счастью, создать такую систему не очень сложно. На самом деле, статья научит вас именно этому! В этом туториале вы научитесь следующему:
- Создавать векторное поле с помощью захвата сцены (scene capture) и системы частиц
- Сгибать траву от игрока на основании векторного поля
Рисование с помощью Render Targets в Unreal Engine
2018-08-15 в 7:56, admin, рубрики: blueprints, render target, Unreal Engine, Unreal Engine 4, разработка игрRender target — это, по сути, текстура, в которую можно выполнять запись во время выполнения приложения. С точки зрения движка они хранят такую информацию, как базовый цвет, нормали и ambient occlusion.
С точки зрения пользователя render target в основном используются в качестве своего рода дополнительной камеры. Можно задать захват сцены (scene capture) в какой-то точке и сохранять изображение в render target. Затем можно отобразить render target на меше, например, для симуляции камеры наблюдения.
После выпуска версии движка 4.13 компания Epic добавила возможность отрисовки материалов непосредственно на render target с помощью блюпринтов. Эта функция позволяет создавать сложные эффекты, например, симуляцию жидкости и деформацию снега. Звучит потрясающе, правда? Но прежде чем переходить к таким сложным эффектам, лучше всего освоиться с чем-то простым. Что может быть проще, чем рисование на render target?
В этом туториале вы научитесь следующему:
- Динамически создавать render target с помощью блюпринтов
- Отображать render target на меше
- Рисовать текстуру на render target
- Менять размер кисти и текстуру во время игрового процесса
Создание системы терминалов в UE4
2018-07-23 в 8:59, admin, рубрики: blueprints, Unreal Engine, Unreal Engine 4, разработка игр, создание игрВведение
Наша команда состоит из двух участников:
Меня зовут Сертач, я занимаюсь программированием геймплея. Я разрабатываю проекты на Unreal Engine уже около 3,5 лет. Хотя моя должность называется «программист геймплея», мне нравится и программировать UI. Я работал и продолжаю работать над различными проектами, опубликованными в Steam.
Также я организую митапов по Unreal Engine в Турции. За прошлый год я организовал множество мероприятий и продолжаю заниматься их организацией. Наряду с этими мероприятиями я подумываю об организации семинаров о разработке игр совместно с университетами и старшими школами. В Турции много людей, которые хотят заниматься разработкой игр и мне нравится делиться накопленным опытом, потому что когда информацией делишься, её становится больше!
Читать полностью »
Создание следов на снегу в Unreal Engine 4
2018-07-18 в 12:13, admin, рубрики: blueprints, Unreal Engine, игровая физика, разработка игр, снегЕсли вы играете в современные AAA-игры, то могли заметить тенденцию использования покрытых снегом ландшафтов. Например, они есть в Horizon Zero Dawn, Rise of the Tomb Raider и God of War. Во всех этих играх у снега есть важная особенность: на нём можно оставлять следы!
Благодаря такому взаимодействию с окружением усиливается погружение игрока в игру. Оно делает окружение более реалистичным, и будем честными — это просто интересно. Зачем тратить долгие часы на создание любопытных механик, если можно просто позволить игроку упасть на землю и делать снежных ангелов?
В этом туториале вы научитесь следующему:
- Создавать следы с помощью захвата сцены для маскировки объектов, близких к земле
- Использовать маску с материалом ландшафта, чтобы создавать деформируемый снег
- Для оптимизации отображать следы на снегу только рядом с игроком
Туториал по Unreal Engine 4: фильтр Paint
2018-05-12 в 8:11, admin, рубрики: blueprints, Unreal Engine, разработка игрС течением времени внешний вид игр становится всё лучше и лучше. В эпоху потрясающей графики сложно сделать так, чтобы собственная игра выделялась на фоне остальных. Один из способов сделать игру графически более уникальной — использование нефотореалистичного рендеринга.
Нефотореалистичный рендеринг включает в себя множество техник рендеринга. В них входят cel shading, toon-контуры и штриховка. Можно даже сделать так, что игра будет похожа на картину! Одним из способов получения такого эффекта является размытие фильтром Кавахары.
Для реализации фильтрации Кавахары мы научимся следующему:
- Вычислять среднее и дисперсию для нескольких ядер
- Выводить среднее значение для ядра с наименьшей дисперсией
- Использовать оператор Собеля для нахождения локальной ориентации пикселя
- Поворачивать ядра сэмплирования на основании локальной ориентации пикселя
Основа геймплея игры на C++ для Unreal Engine
2018-05-09 в 8:24, admin, рубрики: blueprints, Unreal Engine, Unreal Engine 4, разработка игр, С++Основа геймплея для Unreal Engine 4 предоставляет разработчику мощный набор классов для создания игры. Ваш проект может быть шутером, симулятором фермы, глубокой RPG — это неважно, основа очень универсальна, делает за вас часть тяжёлой работы и задаёт некоторые стандарты. Она довольно сильно интегрирована в движок, поэтому рекомендую вам придерживаться этих классов, а не пытаться изобретать собственную основу игры, как это часто бывает в движках наподобие Unity3D. Понимание этой основы очень важно для успешной и эффективной работы над проектами.
Для кого эта статья?
Для всех, кого интересует создание игр в UE4, а конкретно на C++, и кто хочет больше узнать о основе геймплея Unreal. В этом посте рассматриваются базовые классы, которые вы будете использовать в основе геймплея, и объясняется их применение, процесс создания их экземпляров движком и способ получения доступа к этим классам из других частей кода игры. Бо́льшая часть информации справедлива также и для блюпринтов.
Читать полностью »
Руководство по созданию собственных шейдеров в Unreal Engine
2018-04-19 в 8:41, admin, рубрики: blueprints, HLSL, Unreal Engine, Unreal Engine 4, разработка игр, шейдерыБлагодаря системе нодов редактор материалов является отличным инструментом для создания шейдеров. Однако у него есть свои ограничения. Например, там невозможно создавать циклы и конструкции switch.
К счастью, эти ограничения можно обойти с помощью написания собственного кода. Для этого существует нод Custom, позволяющий писать код HLSL.
В этом туториале вы научитесь следующему:
- Создавать нод Custom и настраивать его входы
- Преобразовывать ноды материалов в HLSL
- Изменять файлы шейдеров с помощью внешнего текстового редактора
- Создавать функции HLSL
Чтобы продемонстрировать все эти возможности, мы воспользуемся HLSL для снижения насыщенности изображения сцены, вывода различных текстур сцены и создания гауссова размытия (Gaussian blur).
Читать полностью »
Туториал по Unreal Engine. Часть 7: звук
2017-12-23 в 11:02, admin, рубрики: blueprints, Unreal Engine, Unreal Engine 4, Работа со звуком, разработка игрВ видеоиграх под понятием «звук» подразумеваются музыка, диалоги и звуковые эффекты. В наше время игра без звука будет казаться небрежной и незавершённой.
Кроме того, звук позволяет усилить погружение игрока в игру. Музыка провоцирует эмоциональный отклик. Диалоги раскрывают персонажей и сюжет. Звуковые эффекты обеспечивают обратную связь и правдоподобность. Все они могут превратить хорошую игру в отличную.
В этой части туториала вы научитесь следующему:
- Воспроизводить музыку и зацикливать её
- Воспроизводить звуковой эффект в определённых точках анимации
- Модулировать тон звука при каждом воспроизведении
- Перемещать их регулировать громкость звука в зависимости его местоположения в 3D-пространстве
- Управлять с помощью UI громкостью музыки и звуковых эффектов по отдельности