329

Создание современного игрового 3D окружения от White Noise Team. (Часть-1)

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

В рамках работы над проектом Twin Soul (https://www.twinsoulgame.com) мы ведем Devlog и часто получаем вместе с фидбеком вопросы о создании игрового контента. Подобную информацию трудно уместить в рамках одного комментария, что сподвигло на написание данной статьи.


Вне зависимости от того, слышали ли вы краем уха слова “полигон” и “нормалка”, занимаетесь разработкой видеоигр, или же простой обыватель - мы постарались сделать статью максимально понятной и интересной для всех. А конкретно - мы расскажем о нашем пайплайне (поэтапный алгоритм ведения работы) создания простых игровых моделей (на жаргоне разработчиков - “пропсов”; от англ. “props”), познакомим с технической терминологией, и дадим несколько практических советов.



Сбор референсов.



В первую очередь все начинается с подбора референсов (вспомогательные изображения в качестве примера). Неисчерпаемым и бессмертным источником референсов является Google.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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


Естественно, данные методы не совсем эффективны, когда окружение переходит из рамок реальности в рамки фантазии. На этот случай у нас есть концепт-художник.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

Для более глубокого погружения мы стараемся максимально правдоподобно копировать референс в виде 3Д. “Эксперты” любящие писать “Вот так вот не бывает!” знайте - на каждое “не бывает” у нас есть фото, подтверждающее обратное.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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


Мелкие объекты и детали могут быть плохо заметны “нечитабельны”, приходится увеличивать их в разы относительно реальных аналогов. Например, это может быть тонкая картонная упаковка, мелкие радиодетали, незаметные провода и трубы, кнопки на электроприборах и т.п.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

Моделирование - базовая теория.



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

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

Готово! Получена желаемая форма, но для использования в игре она не годится. Это пока еще скетч, на основе него предстоит сделать две модели, и начнем с низко полигональной (полигон - плоскость 3Д модели описанная точками), будем называть такие объекты - LP (low poly).


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

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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


Дело в том что каждый полигон по стандарту имеет свой уникальный вектор, отвечающий за его шейдинг (как ложится на поверхность тень) и называется этот вектор - нормаль. Именно из-за набора уникальных нормалей у каждого полигона - конус выглядит граненым. К счастью, c помощью настроек групп сглаживания можно задать для всей модели одну и ту же нормаль.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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


И на самый конец создания LP её разворачивают, это даёт возможность накладывать на модель текстурные карты. Процесс похож на развертку картонной коробки в плоскость и игру в тетрис одновременно.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

Боковые части объекта одинаковы на предполагаемой текстуре, поэтому положим их друг в друга. На внешней части конуса предполагаем наличие фаски или другой текстурной детализации, поэтому немного увеличим её на развертке. Дно модели редко будет видно игроку, уменьшим его развертку в несколько раз.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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


Теперь деталь полностью готова к экспорту в игровой движок. Но такие квадратные формы явно не подходят под определения “современного игрового окружения”, по прежнему хочется сгладить все углы. Для этого мы возвращаемся к нашему 3D скетчу и сделаем из него высоко полигональную модель HP (high poly).

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

Модель сглажена за счет большого количества полигонов и их нормалей, теперь предстоит задача перенести эти нормали с HP на LP. Перенос осуществляется методом запекания в ранее созданную развертку, на выходе мы имеем карту нормалей, где RGB значение каждого пикселя соответствует XYZ значения вектора.


Возникает вопрос, зачем мы настраивали группы сглаживания на LP, если собираемся использовать карту нормалей? К сожалениею, карта нормалей лишь вспомогательная, для обмана зрения. Во время рендера векторы карты нормалей будут умножены на базовые.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

Подробнее о картах нормалей.



Для максимального эффекта карты нормалей нужно заранее хорошо сгладить углы и выделить детали в HP модели больше, чем в реальном аналоге (референсе). Базовые нормали LP объекта можно также использовать для подчеркивания формы.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

Использования подобных карт - не новинка в игровой графике, но современный пайплайн создания фотореалистичного контента требует совершенно иной уровень качества. Именно поэтому создание почти каждого объекта требует дополнительно HP вариант, что увеличивает временные затраты разработки. Моделирование промежуточного скетча, сетка которого позволяет быстро получить HP и LP, экономит время и, кроме того, габариты двух моделей выходят идентичными. Чем больше идентичность HP и LP - тем меньше выходит проблем с запеканием нормалей.


Во время запекания на основе LP сетки строится клетка “захвата”, форма клетки влияет на угол проекции запекания. И иногда нам приходится добавлять в LP дополнительные ребра, тем самым выровнять клетку и исправить некоторые “косяки”. После временные ребра можно удалить.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

Для непосредственного запекания может использоваться почти любой современный пакет 3D моделирования, но мы используем Substance Painter 2 (программа для процедурного текстурирования, далее SP2). Помимо нормалей, софт позволяет качественно запекать на основе HP целый ряд различных карт. К примеру, карта базового затемнения (Ambient Occlusion - АО) или карта высот (Height Map). Эти и некоторые более технически сложные карты могут участвовать в генерации необходимых визуальных деталей - грязь, потертости на углах, и т.п.


В качество нюансов можно указать что работаем мы исключительно с OBJ форматом, как показала практика общепризнанный FBX по неизвестным причинам может выдать неприемлемый результат.a



Иные методы моделирования.



Часто, если на HP модели должны присутствовать рельефные детали типа узоров, трещин, скол, следы коррозии и т.п., в таком случае разработчики прибегаю к скульптингу (принцип моделирования основанный на скульптурной лепке, использует для работы очень большое количество полигонов). Хорошим примером для использования подобного метода может выступать старый советский подоконник.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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


Часто нас спрашивают, используем ли мы фотограмметрию (способ получения 3D объекта с помощью фотографий), бытует мнение, что данный способ является чуть ли не манной небесной. К сожалению, для качественной фотограмметрии нужен студийный равномерный свет, дополнительная работа с фото, большое время для просчета. На выходе получаем меш с хаотичной высокополигональной сеткой, и для дальнейшей работы требуется проведение ретопологии (изменения топологии сетки), а после - устранения артефактов с помощью скульптинга. Одним из преимуществ фотограмметрии является создание реалистичной текстурной карты, но она тоже требует дополнительные правки и сильно ограничивает в оптимизации развертки.


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

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

Стандартом для создания тканевых ассетов в игровых пайплайнах давно уже стал Marvelous Design. Продукт позволяет создавать и симулировать ткани из заготовленных пользователем выкроек. Наша команда пока еще только осваивает новый инструментарий, но он уже нашел свое применение и для создания предметов окружения.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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



Материалы - базовая теория.



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


С приходом консолей последнего поколения в пайплайн разработчиков внедрился новый технологичный стандарт, пришедший в игры из кинематографа - физически корректный шейдинг (сокращено PBS, в сети можно встретить также под аббревиатурой PBR, IBR). Технология представляет с собой наиболее наиболее подобную реалтайм симуляцию взаимодействия света и материалов.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

PBR использует те же правила для отрисовки поверхностей, но, к сожалению, симуляция отражений в реальном времени до сих пор остается тяжелой темой для игровой графики. Поэтому в большинстве случаев в качестве отражения используются заранее заготовленные кубмапы (панорамные изображения натянутые на куб/сферу). А так как понятие вещество не применимо к полигональной графике, информацию о микроструктурах храниться в текстурных картах.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

Раньше разработчики вкладывали большую часть информации о поверхности в диффузную карту. И не смотря на появления карт нормалей и спекуляров (карты бликов) с приходом DX9, дифузная карта до недавнего времени содержала в себе информацию о затемнении, бликах. Попросту говоря дифуз был слегка обработанной фотографией. Теперь на их смену пришли альбедо карты, содержащие в себе только цвет поверхности и ничего больше.

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

Остальная информация о материале раскидана по остальным картам, их количество зависит от особых физ свойств объекта, которые требуется просимулировать. В нашей пайплайне для простых объектов, на базе работы с Unreal Engine 4 используется не так много карт. К знакомым нам уже картам нормалей и альбедо добавляется рафнес (roughness - карта шероховатости), металик (metalic карта металличности) и АО (ambient occlusion - карта базового затемнения).

Создание современного игрового 3D окружения от White Noise Team. (Часть-1) Twin Soul, Unreal Engine 4, Gamedev, 3D, Компьютерная графика, Длиннопост

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


Читайте продолжение! (https://pikabu.ru/story/sozdanie_sovremennogo_igrovogo_3d_ok...)

Найдены дубликаты

+32

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

раскрыть ветку 14
+9

Иииии

+8

Мне тоже очень интересно!

+7
Осторожно, тут снай
+17

и?

раскрыть ветку 3
+2
Походу пошел доделывать
+4

выиграл

раскрыть ветку 1
+3

И..?

+2

чем дело закончилось?

+1

Ну и? Что дальше?

+1
Я УЖЕ ТРИ ДНЯ ЖДУ ПРОДОЛЖЕНИЯ.
НЕ НАДО ТАК.
раскрыть ветку 2
+3

38 дней...

раскрыть ветку 1
0

Так чем закончилось? Два года прошло

+22
прочитал,охуел от обилия незнакомых терминов, понял что проще и легче лепить из пластилина)
раскрыть ветку 2
+2

Так тот же Фаллаут 1-2 делали пластилином. А мортал комбат вообще фотографиями

0

В играх fallout 1-2 все модельки (персонажей точно) это слепленные фигурки из пластелина, которые зафотали и изменили палитру на более скудную.

+4

Интересный пост. Из-за этой картинки, я видел её год назад, я влез в анриал 4 из-за реалтайма и качества рендера.

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

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

раскрыть ветку 15
+7

вобще не понятно ничего, алиасинг сплошной

+1
а всякие неровности, текстуры генерирую или рисую от руки поверх развертки и получается тоже неплохо (капли, грязь, царапины)

Ты, случайно, не в Telltale работаешь?)

Иллюстрация к комментарию
0

Угу, мы так тоже когда то делали.

раскрыть ветку 12
+3
Можете посоветовать как работать с освещением если например модель дома это стены и крыша, то даже после Build Light в стыке между стенами и крышей будет просвет будто там присутствует щель (хотя её нет) К сожалению скриншота нет, поэтому дорисую
Иллюстрация к комментарию
раскрыть ветку 9
0

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

раскрыть ветку 1
+3

Единственное, что я понял - нужно делать игры в 2d. А ещё лучше - делать визуальные новеллы. И голова болеть не будет.

раскрыть ветку 7
+4
Художник нужен для новелл, так что только текстовые квесты, только хардкор, как на спекке
раскрыть ветку 5
+8
Нее, там писать надо, сюжет придумывать. Проще сделать очередную копию 2048 на телефон.
раскрыть ветку 3
0
Только настольные игры
0

Охохо!)) А ты от руки готов сотни картинок нарисовать и раскрасить? В 2д обычно это рендеры хай-поли 3д моделек с хорошо настроенным освещением и морокой с цветами что бы на небольшой картинке было видно все задуманные детали. Исключение это в 2д стиль флешевых игр с черной обводкой и то не всегда. Корочи это тоже сложно если делать качественно.

А новеллы это вообще жесть.

+1

Половинная картинка, выглядит как призер конкурса авангардного дизайна, проведенного журналом. Уже вижу такое в каком-нибудь бандитском бомонд-заведении в башнях Москва Сити.

0

Сколько комнат планируется в игре? :)

раскрыть ветку 3
0

Жилой комплекс планируется целый.

раскрыть ветку 2
0

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

раскрыть ветку 1
0
Проработка и стилистика выше всяких похвал. Есть небольшие косяки с размерами, но это устранимо.

Удачи вам в проекте, выглядит очень вкусно и свежо. Зачет.
0
А почему HD не применимо к текстурам? А ещё, группа сглаживания - это не одна нормаль.
раскрыть ветку 5
0

По поводу группу сглаживания, соглашусь допустил ошибку.


А HD не применимо потому, что никто не делает текстуры разрешением 1280x720.

раскрыть ветку 4
0

Но HD - это просто "High Definition" и не имеет отношения к конкретным разрешениям и стандартам. Поэтому не только применимо, но и вполне себе используется.

раскрыть ветку 3
0

Очень ускоряет работу использование modo и их round edge. Заменяет hp и пекет эджи по группам сглаживаний.

0

Очень интересный пост,понятный новичку. Все хочу начать обучение 3д макса,но никак руки не доходят, то ревит,то архикад( 

раскрыть ветку 3
-1

лучше блендер, менше мороки с лицензией, тем более что там очень рендер крутой завезли в последней версии

раскрыть ветку 2
0

не знаете случайно, файлы из архикада туда спокойно закидываются для рендера?

раскрыть ветку 1
0

Только ковёр потянуло и окурки не пропорциональные (говорю, как курильщик, который застал такие ковры ).

А лайтмапу стоило бы чем нибудь годным пропечь с нормальным ги без артефактов ;)

раскрыть ветку 11
+5

окурки не пропорциональные - это специально. Окурки там как пример того, что иногда мелкие объекты приходится увеличивать, чтобы в игре лучше смотрелись.

раскрыть ветку 1
0

так у них соотношение фильтра к диаметру не верное, а не скейл... уж простите за доёб ))

0

Пропечь лайтмапу можно какую угодно.

Только еще больше увеличить ЛМ развертку и тем самым потратив память и увеличив в разы время запекания которое и так не маленькое в реалиях большого уровня. Короче потратить ресурсы видюхи и человеко часов, на то что пользователь не заметит. И как вывод - не стоит оно того.

По поводу окурков, прочтите пожалуйста саму статью.

раскрыть ветку 8
-2
Пропечь лайтмапу можно какую угодно.

Ну так лм запеченная из макса/блендера или чем пользуетесь нормальным рендером, хотя бы вреем, не говоря о короне или октане, будет выглядеть гораздо качественнее, даже без увеличения разрешения, которого более чем хватает ;)

раскрыть ветку 7
-10
В процессе создания LP, мы удалим со скетча точки не влияющие на форму объекта

Там еще удалять и удалять.

Иллюстрация к комментарию
раскрыть ветку 14
+7

Конечно, можно и всю модель удалить, ибо нефиг!

раскрыть ветку 11
+1

Если это мелкиц объект, можно было отделть конус от плоскости.

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

раскрыть ветку 1
0

Даже со сквозным отверстием то можно сделать оптимальней. Еще можно поиграть с количеством граней в нижней части конуса.


П.С. @46165957 Ну а так-то да - я не в теме.

Иллюстрация к комментарию
Иллюстрация к комментарию
раскрыть ветку 8
+4

очевидно вы не в теме ;)

раскрыть ветку 1
+1

Ну куда уж мне.

ещё комментарии
Похожие посты
67

Рендер и обработка в Blender. Часть 3

Наш куб заполняется:

Рендер и обработка в Blender. Часть 3 Xyz, 3D, 3D моделирование, Blender, Урок, Компьютерная графика, Гифка, Длиннопост

Точки на скриншоте не шумы, а заполнившие куб айкосферы.


Наконец, выставляем куб между камерой и объектом так, чтобы на него падал источник света. Фокусное расстояние у нас определено на лицо модели, и чем дальше от фокуса наш куб, тем больше будет эффект боке.

Рендер и обработка в Blender. Часть 3 Xyz, 3D, 3D моделирование, Blender, Урок, Компьютерная графика, Гифка, Длиннопост

Здесь можно видеть разные этапы обработки и как на них изменялось боке.


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


Хотя, есть и такие, которые действительно проще создать в PhotoShop.

Например:


Виньетирование — это затемнение по краям кадра, появление которого зависит от размера диафрагмы аппарата. Чем сильнее та открыта, тем больше темноты по краям кадра.


Чтобы его сымитировать, создаём слой и выбираем на панеле слева Gradient Tool, настраиваем цвета и ставим галочку Reverse. После чего задаём радиус нашему затемнению.

Рендер и обработка в Blender. Часть 3 Xyz, 3D, 3D моделирование, Blender, Урок, Компьютерная графика, Гифка, Длиннопост

Применяем к слою Multiply и уменьшаем прозрачность.

Рендер и обработка в Blender. Часть 3 Xyz, 3D, 3D моделирование, Blender, Урок, Компьютерная графика, Гифка, Длиннопост
Рендер и обработка в Blender. Часть 3 Xyz, 3D, 3D моделирование, Blender, Урок, Компьютерная графика, Гифка, Длиннопост

Ещё одна особенность плёночной фотографии — пыль. Она появляется при сканировании и, можно сказать, является такой же отличительной чертой реальной фотографии, как искажение линзы или хроматическая аберрация. Пыль можно также, как и зерно, скачать из интернета и добавить в PhotoShop.


Напоминаю, так в итоге выглядит готовое изображение, большая часть эффектов которого была исполнена в Blender:

Рендер и обработка в Blender. Часть 3 Xyz, 3D, 3D моделирование, Blender, Урок, Компьютерная графика, Гифка, Длиннопост
Показать полностью 4
1283

Планеты Солнечной системы Low Poly

Планеты Солнечной системы Low Poly Low poly, 3D, Солнечная система, Компьютерная графика, Планета, Арт, Длиннопост

В начале июня я начал создавать коллекцию планет в лоу поли. Сегодня коллекция официально завершена!

Планеты Солнечной системы Low Poly Low poly, 3D, Солнечная система, Компьютерная графика, Планета, Арт, Длиннопост

Меркурий

Планеты Солнечной системы Low Poly Low poly, 3D, Солнечная система, Компьютерная графика, Планета, Арт, Длиннопост

Венера

Планеты Солнечной системы Low Poly Low poly, 3D, Солнечная система, Компьютерная графика, Планета, Арт, Длиннопост

Родина-Земля

Планеты Солнечной системы Low Poly Low poly, 3D, Солнечная система, Компьютерная графика, Планета, Арт, Длиннопост

Марс


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

Планеты Солнечной системы Low Poly Low poly, 3D, Солнечная система, Компьютерная графика, Планета, Арт, Длиннопост

Юпитер

Планеты Солнечной системы Low Poly Low poly, 3D, Солнечная система, Компьютерная графика, Планета, Арт, Длиннопост

Сатурн. Вы знали, что у Сатурна 82 луны?

Планеты Солнечной системы Low Poly Low poly, 3D, Солнечная система, Компьютерная графика, Планета, Арт, Длиннопост

Уран


Всего потребовалось 2 месяца на то, чтобы закончить коллекцию.

Планеты Солнечной системы Low Poly Low poly, 3D, Солнечная система, Компьютерная графика, Планета, Арт, Длиннопост

Нептун

Планеты Солнечной системы Low Poly Low poly, 3D, Солнечная система, Компьютерная графика, Планета, Арт, Длиннопост

И бонус! Плутон


Вы можете просто поставить плюс или оставить комментарий. Мне будет приятно.


Все модели были созданы в Blender 3D и затем обработаны в фотошопе.

Показать полностью 9
40

VoidTrain — островные существа

Привет, Пикабу.


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

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


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


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

Жуки-солдаты

VoidTrain — островные существа Unreal Engine 4, Gamedev, Инди, Инди игра, Дневник, Гифка, Видео, Длиннопост

Жуки солдаты являются основной массой роя и действуют группами по 4-6 особей , единственная цель которых завалить угрозу массой из лап, жвал и хитина. При этом они далеко не глупы и умеют разделяться, если того требует ситуация.


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

VoidTrain — островные существа Unreal Engine 4, Gamedev, Инди, Инди игра, Дневник, Гифка, Видео, Длиннопост

Чем старше и опытнее жук-солдат, тем более опасным противником он является, ведь с возрастом особи обрастают хитином.


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

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

Плевуны

VoidTrain — островные существа Unreal Engine 4, Gamedev, Инди, Инди игра, Дневник, Гифка, Видео, Длиннопост

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


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


Как и обычные жуки роя, плевуны имеют разную степень защиты. Старые особи могут иметь пластины хитина и на голове, и на туловище, что делает их более защищёнными от входящего урона на какое-то время.

Подрывник

VoidTrain — островные существа Unreal Engine 4, Gamedev, Инди, Инди игра, Дневник, Гифка, Видео, Длиннопост

Жук-подрывник (внизу), сравнение с другими существами из роя ^_^

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

Танк

VoidTrain — островные существа Unreal Engine 4, Gamedev, Инди, Инди игра, Дневник, Гифка, Видео, Длиннопост

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


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


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

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


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


Если вам интересна игра, то вы всегда можете добавить её в вишлист в Steam, а также подписаться на наш твиттер. С радостью ответим на ваши вопросы в комментариях.
Показать полностью 5 2
46

Как процедурная генерация помогает создавать открытые миры. Часть 2

Только когда “сетка” была завершена, в дело вступала процедурная генерация. Инструмент расставлял вдоль улиц объекты архитектуры, собирая их из созданных художникам ассетов. Ассеты делились на категории: конкретные окна могли относиться только к богатому или, наоборот, бедному дому, а материал стен — к целому или разрушенному. Алгоритм брал за основу данные о улицах, которые задавали художники, и создавал постройки на их основе.


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

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Источник


Константин Якушенко, главный tools-инженер Frogwares:

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

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

Источник

Когда все правки были внесены, редактор объединял детали здания в четыре фасада, которые сохранял по отдельности. Фрагментированное хранение зданий потом помогло разработчикам оптимизировать игру.

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Источник


Алгоритмы для процедурных улиц

В Spider-Man большая часть 18 квадратных километров виртуального Манхэттена создана процедурной генерацией. В Insomniac Games стремились к тому, чтобы не менее 80% работы алгоритмов попало в финальную игру, и поэтому прорабатывали систему генерации особенно тщательно.


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

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Spider-Man (2018)


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


Со зданиями алгоритм работал поэтапно. Сначала из простых форм (кубов, цилиндров) генерация расставляла простые болванки вдоль улиц, опираясь на заданные художниками этажность и размеры. Затем, используя ассеты для нужного района или типа строения, система размещала на “коробках” внешний декор — вывески, окна и лестницы.


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

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Источник


Александр Балакшин, геймплей-программист:

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

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

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


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

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Источник


Дэвид Сантьяго, ведущий технический художник Insomniac Games:

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

Мы могли этим управлять — например, задать параметры в духе “хотим, чтобы 70% улиц были односторонними, а 70% от них — с одной полосой для движения и одной — для парковки”. И система бы просто прошлась по всему городу и создала реалистичный трафик по заданным параметрам.

Источник

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


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

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Spider-Man (2018)


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


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


Дэвид Сантьяго, ведущий технический художник Insomniac Games:

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

Источник

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Spider-Man (2018)


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


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

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Источник


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


Дэвид Сантьяго, ведущий технический художник Insomniac Games:

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

Источник

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Источник


Также пришлось продумать и изменить сам пайплайн создания открытого мира. Художники Insomniac Games хотели тонко контролировать сюжетные задания и основные локации в игре. Они регулярно добавляли новые элементы, текстуры и декоративные объекты, которые генерация подхватывала и распределяла по уже готовой локации.


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

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Источник


С чего начать

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


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


Если небольшой команде всё же нужно сгенерировать большое пространство, тут можно использовать несколько уловок. Систему генерации можно запускать на так называемых “ночных билдах”, когда офисные компьютеры всё равно простаивают. Десяти часов хватит на создание большой локации, и к утру версия мира будет готова для тестирования. Минус этого подхода в том, что новые версии можно будет создавать не чаще, чем раз в день.

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Источник


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


Студиям необязательно разрабатывать собственные инструменты для процедурной генерации с нуля. Существуют уже готовые решения, которые пользуются спросом не только в игровой, но и в киноиндустрии. Например, разработчики из Guerilla Games сначала создали рельеф мира для Horizon Zero Dawn в процедурном генераторе World Machine, после чего импортировали результат в свой движок и уже там применяли разработанные инструменты.

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Horizon Zero Dawn


Стандартом в индустрии считаются World Machine и World Creator. World Machine использует только за счёт процессора, не подключая ресурсы видеокарты. World Creator считается удачным выбором для новичков, так как предлагает дружелюбный интерфейс, но страдает от нехватки глубоких настроек.


В 2019 году вышел процедурный генератор QuadSpinner Gaea, который не уступает по мощности и проработке своим аналогам, а также предлагает умные алгоритмы и инструменты. Архитектура программы позволяет удобно работать с рельефом в реальном времени, а структура похожа на привычный для многих разработчиков Unreal Engine.


Начинающим разработчикам стоит обратить внимание и на отдельные инструменты для движков. И для Unreal Engine, и для Unity есть специальные генераторы и плагины, позволяющие создавать убедительную растительность, не выходя из привычной рабочей среды. А система Houdini сразу включает в себя и 3D-редактор, и програмную среду, и генераторы рельефа и растительности.

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Источник


Александр Балакшин, геймплей-программист:

Генерация рельефа, городов и лесов — это пройденный этап. Будущее за генерацией окружения, домов и комнат, то есть за счёт более проработанной генерации — той самой, пришествия которой так боятся левел-артисты. А это примерно то, что показывает Promethean AI.

Promethean AI — это интеллектуальная палитра и процедурный генератор, совмещённые в одной программе. Её создаёт бывший технический арт-директор Sony Interactive и Naughty Dog Андрей Максимов, а его основная цель — исключить рутину из творческого процесса художников по окружению.


В основе Promethean AI лежит распознавание типа ассетов. Система понимает, какой объект в неё добавлен, в каком стиле он выполнен и для чего используется. После чего сравнивает собранную информацию с поставленной задачей и решает, подойдёт ли элемент локации или нет. Размещением объектов тоже занимается алгоритм — он, например, следит, чтобы настольная лампа стояла на столе, а одеяло лежало на кровати.

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Источник


Художник может сам “обучать” эти алгоритмы. Для этого нужно расположить несколько объектов в сцене и задать общий стиль, — а остальное пространство достроит генерация. При этом навыков программирования не требуется — система специально создаётся так, чтобы её могли использовать разработчики любых специальностей.


Александр Балакшин, геймплей-программист:

Promethean AI — это своего рода искусственный интеллект, который использует классификацию ассетов. Он создаёт интеллектуальную базу данных, по которой художник может делать произвольные выборки. Например, можно сказать: “Покажи мне все жёлтые стулья, в которых больше миллиона треугольников”. И система покажет только нужные объекты.

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

Как процедурная генерация помогает создавать открытые миры. Часть 2 Xyz, Gamedev, Игры, Компьютерная графика, 3D, Художник, Гифка, Длиннопост

Источник


Программы для процедурной генерации постепенно становятся умнее. Tools-инженеры крупных студий и находчивые инди-разработчики развивают и углубляют соответствующие инструменты, экспериментируя с разными подходами. Генерация рельефа, растительности и улиц уже стала стандартом индустрии, созданием интерьеров через несколько лет тоже никого не получиться удивить.


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

Показать полностью 14
131

Как процедурная генерация помогает создавать открытые миры. Часть 1

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


Мы изучили доклады и презентации специалистов по генерации открытых миров, а также пообщались с программистом AAA-игр Александром Балакшиным, и теперь рассказываем, как работают эти алгоритмы, кому они могут пригодиться, и как их использовали в разработке The Witcher 3: Wild Hunt, Horizon Zero Dawn, The Sinking City и Spider-Man 2018-года.

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Horizon Zero Dawn


Автор: Юрий Кулагин


Кому и зачем нужна генерация


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


А разработчики The Elder Scrolls II: Daggerfall в 1996 году использовали процедурную генерацию, чтобы собрать из заготовленных частей пять тысяч городов. Разработчики доказали, что автоматизировать создание локаций возможно, — правда результат может получиться довольно однообразным.

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

The Elder Scrolls II: Daggerfall


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


Александр Балакшин, геймплей-программист:

Убедительность окружения зависит от самого генератора, — насколько тот подключает человека к работе, на каких правилах обучается, какой набор параметров использует. С определённой степенью проработки может получиться достаточно достоверный результат, который на глаз не отличить от работы художника.

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

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Источник


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


Александр Балакшин, геймплей-программист:

Работая с процедурной генерацией, нужно понимать, что ручную работу никто не отменял. Художники могут взять сгенерированный кадр и сказать: “Всё, конечно, хорошо, но отсюда это смотрится паршиво, оттуда — неестественно, а там вообще какая-то дичь”. И они начнут потихоньку это исправлять. Так что генерация облегчает работу, но не заменяет соответствующих специалистов.

Художники не останутся без работы ещё и потому, что в открытых мирах отлично работает принцип Парето — игрок активно изучает только 20% локации, а оставшиеся 80% служат фоном. Так что логичным шагом будет отдать проработку и заполнение этого фона на откуп алгоритмам, и дать художникам больше времени на проработку того, на что игрок обратит внимание.

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Spider-Man (2018)


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


Александр Балакшин, геймплей-программист:

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

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

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

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Источник


Кисти для процедурной растительности

Для The Witcher 3 разработчикам из CD Projekt RED нужно было создать мир, который в 35 раз превышал бы размер локаций второго “Ведьмака”. Людей с опытом работы над полностью открытым миром не хватало, а приступить к созданию локаций нужно было как можно скорее.


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

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

The Witcher 3: Wild Hunt


Александр Балакшин, геймплей-программист:

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

Команда Голлента разработала систему, которая позволяла легко создавать огромные лесные пространства, на ходу смешивая текстуры и расставляя ассеты. Например, алгоритм умел создавать плавные переходы между материалами: на стыках двух поверхностей использовали сразу две текстуры, с которыми система работала индивидуально.


Программисты обучили алгоритм распознавать два типа поверхностей: к природным система относила почву, песок, каменистую местность, а к рукотворным — кирпич, брусчатку, бревенчатые стены. Это помогало по-разному накладывать эффекты на разные типы материалов — например, на стене дома снег выглядел не так, как на земле. Благодаря этому и получались плавные переходы — по краям дороги генератор складывал рукотворную текстуру брусчатки и природную текстуру земли так, что оставались видны контуры отдельных булыжников.

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Источник


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


При этом в “Ведьмаке” процедурно сгенерированная трава не перекрывает детали исходной текстуры, а подчёркивает их. Для этого программу научили выделять на текстуре только те места, где что-то может расти. Например, если на вымощенной булыжником старой дороге местами проступает текстура земли, то трава вырастает только на этих участках.

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Источник


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

Марчин Голлент, ведущий программист графики CD Projekt RED:

Недостаточно просто добавить в движок генерацию текстур: всегда нужно прорабатывать и связанный с ней инстурментарий. Художникам нужна возможность отключать конкретные компоненты инструмента и управлять отдельными параметрами.

Источник


Для создания деревьев и кустарников художники CDPR использовали другой инструмент — кисти с набором растительности. Их можно было настраивать под конкретную локацию, указывая насыщенность местности водой, освещённость и даже направление, в котором могут распространятся семена.

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Источник


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


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

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

The Witcher 3: Wild Hunt


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


Также эти кисти давали разный результат при разном количестве применений. Если художник использовал кисть на конкретном участке один раз, у него получался лёгкий подлесок: кустарник, отдельно стоящие деревья. Но если он повторял приём, эффект становился заметнее — кустарники разрастались, деревьев становилось больше, а сами они росли выше.


Марчин Голлент, ведущий программист графики CD Projekt RED:

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

Источник

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Источник


Слои для процедурных биомов

Работая над Horizon Zero Dawn, программисты Guerrilla Games тоже использовали процедурную генерацию. Художники студии привыкли контролировать каждую деталь на локации ещё во времена работы над серией Killzone. Поэтому и в новой игре они хотели иметь возможность поменять результат генерации — например, передвинуть гору, которую алгоритм поставил неправильно.


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

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Horizon Zero Dawn


Александр Балакшин, геймплей-программист:

В Horizon: Zero Dawn художники создали карты дорог, высот, рек и растительности. В зависимости от биома между этими картами выстраивается определённая логика взаимодействия. В них хранится информация о плотности: чёрные значения означают, что в конкретной точке не может быть растительности, белые — что в ней должно быть максимальное количество растительности.

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

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Источник


Чтобы сгенерированные локации не просто работали, но и выглядели разнообразно, художникам студии потребовалось создать множество ассетов и шаблонов растительности, — но это всё равно оказалось быстрее и выгоднее, чем ручная проработка мира. Три человека в Guerrilla Games нарисовали 500 типов растений, а шаблонами занимался один технический художник.


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

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Источник


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


Александр Балакшин, геймплей-программист:

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

В Horizon: Zero Dawn игрок исследует множество разных биомов, — от среднеевропейских лесов до заснеженной тундры. Сами разработчики называли их “экотопами”: с точки зрения инструмента генерации это были просто наборы настроек для создания локации.

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Horizon Zero Dawn


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


Система работала и с геймплейными элементами. Например, при помощи отдельного инструмента художники могли размещать на локации специальный “стелс-кустарник”, в котором игрок прятался от врагов. Его расстановка и логика тоже подчинялись общим правилам — в воде или на дороге кусты не генерировались.

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Horizon Zero Dawn


Причём этот инструмент не закреплял объекты на локации намертво. Сгенерированная растительность автоматически подстраивалась под изменения, которые вносили художники. Это упрощало ручную правку локации — если переместить или изменить тропу в лесу, растительность вокруг неё изменялась сама.


Яаап ван Мюжден, старший технический программист Guerrilla Games:

Процедурную генерацию в Horizon Zero Dawn мы использовали везде, где только могли — для ассетов, эффектов, даже геймплейных элементов. И результат выглядел очень здорово: он полностью вписывался в видение арт-директора.

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

Источник

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

Источник


Сетка для процедурного города

Чтобы построить большой и реалистичный город в The Sinking City, студия Frogwares создала инструмент процедурной генерации для Unreal Engine 4. По словам Константина Якушенко, который возглавляет в компании команду tools-инженеров, разработчики вдохновлялись конструктором Ubisoft, с помощью которого создавали здания и улицы в Assassin’s Creed Unity и Syndicate.


Процедурная генерация в города в The Sinking City начиналась с ручной работы. Художники создавали “сетку”, — макет основных улиц и ориентиров — и указывали, какие типы домов могут находиться в том или ином районе. А ландшафт, рельеф и ширина улиц определялись лишь предварительно.

Как процедурная генерация помогает создавать открытые миры. Часть 1 Xyz, Gamedev, Игры, Компьютерная графика, Художник, Разработка, Гифка, Длиннопост

The Sinking City

Показать полностью 17
448

Another Way - Инди Action/RPG год спустя

Another Way - Инди Action/RPG год спустя Длиннопост, RPG, Indiedev, Unreal Engine 4, Инди, Another Way, Gamedev, Видео

С начала истории под названием “Через тернии к игре мечты” или разработка своей action/rpg буквально на коленке прошел без малого год. Самое время отвлечься от разработки и рассказать о том, что же у нас получилось за это время. Для тех, кто не понимает о чем речь предлагаю ознакомиться с началом истории - “Через тернии к игре мечты”, а в профиле можно прочесть остальные части.

До конца декабря 2019 года, команда разработки выросла с двух человек до 20 с хвостиком. Среди потрясающих людей которые очень помогли на том этапе были: концепт артисты, 3д специалисты, нарратив и саунд дизайнеры и даже консультант исторической достоверности. Некоторые работы вы могли видеть в предыдущих постах. Многие из этих людей появились именно благодаря Пикабу, за что им и порталу большое спасибо.

Another Way - Инди Action/RPG год спустя Длиннопост, RPG, Indiedev, Unreal Engine 4, Инди, Another Way, Gamedev, Видео

После нового года ситуация неожиданно изменилась в противоположную сторону. В связи с пандемией и рядом других факторов многие люди просто не смогли продолжать работать в проекте на энтузиазме, постепенно наша команда сократилась втрое и сейчас из тех кто хотя бы как-то принимает участие в жизни проекта осталось ~7 человек, но мы очень благодарны всем тем благодаря кому Another Way может выглядеть сейчас именно так.

Another Way - Инди Action/RPG год спустя Длиннопост, RPG, Indiedev, Unreal Engine 4, Инди, Another Way, Gamedev, Видео

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

Another Way - Инди Action/RPG год спустя Длиннопост, RPG, Indiedev, Unreal Engine 4, Инди, Another Way, Gamedev, Видео

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

Если проект кажется вам интересным, то будем рады ответить на ваши вопросы, подискутировать над идеями и миром в комментариях. Также всегда рады любым предложениям и помощи. В нашей группе Вконтаке мы постим художественные описания и истории существ, местности, королевств из нашей вселенной. Поэтому для всех кто хочет узнать больше о лоре Another Way, да и в целом узнавать все новости первыми, милости просим в группу Вконтакте
Another Way - Инди Action/RPG год спустя Длиннопост, RPG, Indiedev, Unreal Engine 4, Инди, Another Way, Gamedev, Видео
Показать полностью 3 1
46

Куст обмазочка

На данный момент в целях рисования всякой разной изометрии используют систему, где сначала делается болваночка в 3д, иногда даже текстурированная - в зависимости от прямости рук и скорости, а потом она подкрашивается\дорисовывается в фотошопе\других 2д редакторах.
Вот и я приобщилась немножечко) вышло быстро для такого результата (4 часа на все)

Куст обмазочка 3D, 3D моделирование, Арт, Gamedev
Куст обмазочка 3D, 3D моделирование, Арт, Gamedev
184

3D графика в играх, просто и с примерами

Привет. Я хочу рассказать из чего состоит 3D графика в играх. Я разберу лишь некоторые темы, которые по большей части относятся конкретно к работе 3D художников, а разбор этих тем будет очень поверхностным, без сложной теории и терминологии с наглядными примерами из игр.

Я написал это для тех, кому хоть немного интересно как устроена компьютерная графика в играх, а еще наверное для начинающих или желающих начать изучение 3D графики и геймдева в целом.


Начать наверное стоит с того что вообще такое 3D Модели.

Самое краткое и простое объяснение которое я смог бы дать: Объект состоящий из координатных точек, находящихся на трех осях XYZ, соединенных между собой ребрами и трехугольными плоскостями (полигонами), на эти плоскости, при помощи двумерных координат UV проецируются текстуры, это только малая часть того из чего состоит 3D модель, но основная.


3D Модели в играх разделяют по разному, я лично разделяю их так:

Модули - это такой вид моделей, предназначенный для сбора больших объектов (расположенных в игровом мире). Чаще всего из них собирают здания, коридоры уровней, пещеры, комнаты. Сборка объектов из модулей проходит в игровом движке, а не в 3D редакторе.

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

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

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

Персонажи - Люди, животные, роботы, все что выполняет хотя бы примитивные команды и анимацию.

Помимо этого, есть еще и другие типы моделей, не предназначенных для использования в играх, вроде фотосканов, скульптинг, CAD модели

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры
Текстурный материал.

В современных играх модели окрашиваются полноценным материалом с несколькими текстурами, а не просто одной текстурой как думают некоторые игроки. Исключение - это игры со стилизованной графикой.s

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

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

Normal Map - передает рельеф, она никак не влияет на геометрию модели, влияет лишь только на то, как с этой поверхностью ведет себя свет.

Base Color или Albedo - текстура цвета, эту карту называют по разному а иногда она отличается и содержанием, помимо цвета на эту карту еще могут добавить тени.

Roughness - черно-белая маска, по ней определяется где у материала будет шероховатая поверхность, а где глянцевая.

Есть еще карты, но эти три наиболее часто используемые. Есть карта металлических свойств Metallic, есть карта Emissive - на ней обозначены участки свечения, Displacement - изменяет геометрию и создает реальный рельеф, Ambient Occlusion - мелкие затенения в углах геометрии. и еще много других.

Тема того как устроен PBR (physically based rendering) очень большая, в интернете ее разбирали подробно и неоднократно, здесь я оставлю лишь короткое описание.



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


О модулях.

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

Как выглядят модули в деле, пример из игры Dishonored. Посмотрите на фасад голубого дома, паттерн облупившейся краски повторяется на всех этажах, кроме первого и последнего. Я считаю, что средние этажи сделаны одним и тем же модулем, потому как 3D художник не допустил бы таких повторов, если бы делал дом целиком.

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

Все здание (снаружи) состоит из такого списка моделей:

- Фасад первого этажа

- Фасад средних этажей

- Последний этаж с крышей (возможно раздельно)

- Несколько вариаций окон, включая открытые

- Несколько вариаций козырьков

- Мелкие детали, провода, крючки, трубы.


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

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

Трудно назвать игру в которой не используется модули в той или иной степени.

Вот коридорный онлайн шутер Warframe, попробуйте оценить сколько здесь уникальных моделей:

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

Я насчитал как минимум 15, вместе с пропсами, некоторые объекты могут быть разделены на еще меньшие модули, поэтому на глаз точно не скажешь.


Кстати, в Warframe модели слишком часто переиспользуют, локации повторяются так что в глазах мозолит, предметы окружения или даже оружие может стать элементами экипировки вражеских солдат, любые персонажи, враги могут стать фигурками для украшения.
3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры
Это выглядит очень странно, ведь у них уже есть нормальные модели ракетных ранцев и наплечников.


Модульность в какой то степени применяется и к персонажам. Играя в Ведьмака 3 вы наверняка замечали что у торговца, стражника и бездомного бывает что то общее, лицо например
3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

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

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

О том какие преимущества дает модульность:

- Экономия времени при создании контента. Художникам не приходится создавать множество разных коридоров или персонажей, они делают это в движке, уже из готовых деталей, правда от этого немного теряется уникальность.

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

- Кастомизация. Благодаря этим модулям можно создавать множество вариантов объектов или персонажей.


Крутим, перемещаем, уменьшаем и прячем.

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


В Dishonored есть локация, королевская кунсткамера, с большими чучелами сов, размерами больше человека, там их было несколько штук, на одной видно составные части, сова разделена на три модели, тело и крылья.

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

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

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

5 лет назад, интернет обсуждал что в Skyrim'e маленькие столики это вкопанные в землю шкафы. Кто-то всерьез считал что это халтура, что от этого страдает оптимизация, а кого то даже бесил факт обмана.

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

эти 30 - 50 полигонов спрятанных под землю, повлияют на оптимизацию меньше чем еще одна модель для столика.


Одна текстура на двоих.

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


Overwatch, карта Кастильо, много домов на заднем и переднем плане, у каждого разные окна, маленькие, большие, дверцы балкона и полукруглые окна. Вот только все это разнообразие окон сделано из одного материала с разрешением текстур 128x512 px, а различие в формах придают за счет манипуляций с UV Разверткой.

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

Такое происходит часто с объектами одного или похожего типа.


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

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

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

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

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


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

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

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



Декали.

То что избавляет от следов оптимизации. Поверх часто повторяемых текстур накладывают другие. Текстура с альфа каналом (прозрачностью), чаще всего наложенная на один полигон, или методом проецирования. Пятна грязи, крови, подтеков, пыли, мелких деталей, болтики, дыры от пуль, трещины в стенах и ранее упомянутые тексты. Они нужны чтобы добавить на уровне детализации, разбавить повторяющиеся текстуры и объекты.


В Overwatch почти все декали кроме графити наносят через полигоны, здесь это видно особенно, текст отдалился от стены и парит в воздухе, если ставить полигоны слишком плотно друг к другу, то те начнут "драться" за отрисовку, появятся визуальные баги, правда тут с расстоянием они переборщили.

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

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

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

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

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры
3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры
У обоих методов нанесения декалей есть свои плюсы и минусы, многое зависит от инструментария движка и графики.


Симметрия не только для красоты.

Тут скорее речь больше пойдет об overlapping'e. Что такое overlapping: схожая геометрия может использовать общий участок текстуры, полигоны в 2D накладываются друг на друга.

Пример, винтовка Эш из Overwatch выглядит симметрично с двух сторон, поэтому у нее одна текстура на обе стороны. Но можно пойти еще дальше, динамит имеет 6 одинаковых деталей и все под одним участком

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

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


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


БОБ! Не стой в А позе! Небольшой ремешок и заплатка, все остальное у Боба зеркально:

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

Да, в данном случаи это А поза а не Т, между ними есть небольшая разница при создании анимации.


Тайловые текстуры и их смешивания.


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


Лучше всего смешивание тайловых материалов можно увидеть на земле и на стенах больших зданий

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

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


Я часто замечаю как новички в 3D пытаются текстурить большие объекты, здания через уникальные материалы, без использования тайлов, они удивляются почему текстура получается

такой размытой и шакальной при разрешении в 4к. Текстурирование зданий делается в преимущественно в движке при помощи бесшовных текстур их смешивания и декалей. Если нужен именно уникальный материал то придется очень часто использовать overlapping и увеличить полигонаж для швов.


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


LOD'ы.

Level of Detail. Модели теряют свой уровень детализации по мере увеличения расстояния между объектом и камерой, снижается количество полигонов. Раньше лоды делали исключительно вручную, 3D художник создавал парочку упрощенных моделей одного объекта, сделать это несложно, просто сам факт того что в проекте росло число моделей да и к тому же трата времени. Сейчас в движках есть технологии которые генерируют лоды автоматически, применяется не всегда, из за своих минусов, бывает что автоматика слишком сильно "мнет" модель.

Случаи когда лоды не используют:

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

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

- Объект и без того низкополигональный, если это простая коробка, то добавление лодов будет не рационально.


в Overwatch я заметил что лоды применяются только к персонажам и оружию, остальное не изменяется или происходит это слишком незаметно.

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

Анимация

Rigging - Процесс подготовки модели к анимации, создание оснастки, джоинтов или проще говоря скелета. Между скелетом для анимации и реальным скелетом внутри живых существ мало что общего, мы двигаемся благодаря мышцам, персонажи при помощи костей. Кости или джоинты есть далеко не только на персонажах, они применяются и в одежде для симуляции, в оружии, на любых других подвижных деталях.


Записанная анимация или же процедурная применяется именно к костям, а те уже в свою очередь двигают привязанные к ним вершины модели. Привязку вершин к скелету делает 3D моделлер/аниматор, этот процесс называется Skinning.


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


Анимации как и другие игровые файлы также неоднократно переиспользуют, если персонажи имеют схожее телосложение для этого.

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

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

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

3D графика в играх, просто и с примерами 3D, 3D графика, Gamedev, Ведьмак 3: Дикая охота, Overwatch, Warframe, Гифка, Длиннопост, Игры, Компьютерные игры

Завершение

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

Думаю у вас еще останутся вопросы, на какие то вопросы вы сможете сами найти ответы погуглив термины из моей статьи или спросите в комментариях, если знаю то отвечу.

Показать полностью 24
52

VoidTrain — знакомство со вселенной

Привет, Пикабу!


Мы начинаем публиковать серию постов о VoidTrain. Первая публикация будет вводной и рассказывать часть предыстории игры. Обращу внимание, что здесь специально нет стандартных описаний особенностей и игровых механик. Игру и её фичи мы будем разбирать в рамках публикаций. Ну а если у вас всё же есть вопросы про жанр и другие аспекты, и вы не нашли их на странице Steam, то буду рад ответить в комментариях.

VoidTrain — знакомство со вселенной Unreal Engine 4, Gamedev, Инди, Инди игра, Дневник, Гифка, Видео, Длиннопост

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


Правда, сначала всего лишь на дрезине…

VoidTrain — знакомство со вселенной Unreal Engine 4, Gamedev, Инди, Инди игра, Дневник, Гифка, Видео, Длиннопост

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

VoidTrain — знакомство со вселенной Unreal Engine 4, Gamedev, Инди, Инди игра, Дневник, Гифка, Видео, Длиннопост

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

---

1950 год. Советский союз. Территория бывшего Кёнигсберга.


Уже 4 года бывший немецкий город называется Калининградом, и уже 4 года советские инженерные войска разбирают завалы, восстанавливают жилища, обезвреживают минные поля, находят и проверяют заброшенные подземные лаборатории, оставленные побеждёными агрессорами.


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


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

VoidTrain — знакомство со вселенной Unreal Engine 4, Gamedev, Инди, Инди игра, Дневник, Гифка, Видео, Длиннопост

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


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


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

VoidTrain — знакомство со вселенной Unreal Engine 4, Gamedev, Инди, Инди игра, Дневник, Гифка, Видео, Длиннопост

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


Шанс на миллион, редкое везение, поймали удачу за рукав — не правда ли?


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

VoidTrain — знакомство со вселенной Unreal Engine 4, Gamedev, Инди, Инди игра, Дневник, Гифка, Видео, Длиннопост

Что это? Как это здесь оказалось, а главное — кто и зачем здесь обитал и работал?


Эти же вопросы возникли и у наших героев, а ответы на них находились в потёртом дневнике на столе.


---


Какие тайны хранит в себе загадочный дневник в мастерской? Продолжение предыстории VoidTrain ждите в следующей публикации, ну а чтобы не пропускать новости — добавляйте игру в вишлист и подписывайтесь на обновления.


Также мы есть в соц.сетях. Для них подбирается отдельный контент, который публикуется только там — гифки, видео, арты и скриншоты из VoidTrain:


twitter;

vk;

discord.

Показать полностью 4 1
332

Shieldwall - Ранний доступ

Всем привет!


Сегодня я, наконец, созрел для написания этого важного для меня поста. Дело в том, что 23 марта 2020 года я выпустил свою игру Shieldwall в ранний доступ в Steam. В этом посте я расскажу о том, как это было.

Shieldwall - Ранний доступ Unreal Engine 4, Gamedev, Разработка, Видео, Длиннопост

В последней главе моего увлекательного сериала (в смысле, в моем предыдущем посте) я показал основу геймплея Shieldwall. Пост нашёл позитивный отклик: многим понравился визуальный стиль вкупе с озвучкой персонажей. Это меня приободрило, и я вышел на финальную прямую перед моментом Х.


И вот здесь стоит вернуться немного назад во времени и объяснить, что значит для меня этот проект. После успешного релиза (успешного - для меня тогдашнего) моей первой игры Formata у меня где-то полгода был творческий кризис. В конце августа 2018 я всё-таки нашёл внутри себя увлекательную идею и принялся за работу над следующим моим проектом - Discharge. Но 8 месяцев работы до релиза и еще 2 месяца после - не увенчались успехом. Я допустил ряд серьезных ошибок по всем направлениям: я напортачил в дизайне базовых механик, я попал совершенно не в ту аудиторию, в которую хотел попасть, я сильно спешил и пошёл в полный релиз с недоделанной игрой, а кроме того, я делал игру "для себя", а не для игроков. В итоге, выручка не перебила даже трети денежных затрат на проект, и это я уже не говорю про свои силы и время.


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

Shieldwall - Ранний доступ Unreal Engine 4, Gamedev, Разработка, Видео, Длиннопост

Ближе к осени 2019 я всё же собрался с силами и сел за работу. А ситуация была довольно напряженная: все эти мои попытки убежать от "завода" до сих пор держались лишь на одной Formata. Этот чудесный проект позволил мне еще пинать болт, разрабатывая и Discharge, и Shieldwall. Но продажи падали, а расходы превышали доходы. По моим подсчетам я укладывался тютелька в тютельку; мне нужен был релиз в феврале 2020. Но не просто релиз, а успешный релиз.


Я поставил на Shieldwall всё, имея за спиной только: один успешный проект, отзывы у которого уже стали смешанными, а также один провальный проект... Но кроме этого у меня был опыт. Мне казалось, что я понимал, в чём ошибся, и как это исправить.

Shieldwall - Ранний доступ Unreal Engine 4, Gamedev, Разработка, Видео, Длиннопост

Я делал посты здесь и на реддите по ходу разработки. Некоторые из них вызывали интерес у публики. Но я не знал наверняка, верна ли моя догадка и зайдёт ли игра в Steam. Всё это время меня одолевали страх и сомнения.


Тем не менее я шёл к релизу.. но мой баланс в банке шёл к нулю быстрее, чем я шёл к релизу. Мне снова приходилось очень спешить. Я начал узнавать то же самое эмоциональное состояние, которое у меня было перед выпуском Discharge. Только в этот раз я мог просто не закончить проект из-за отсутствия денег. Это значительно усиливало тревогу.


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


Вдруг, ютубер BaronVonGames, который когда-то играл в Formata, снова в неё сыграл на своём канале. Это при том, что новых роликов по Formata не появлялось уже очень давно. Его ролик краткосрочно поднял продажи моей первой игры, что принесло еще немного денег: как раз на тот месяц, который мне был очень нужен. Я это воспринял как знак, что выводы я сделал верные.


И бум!

Shieldwall - Ранний доступ Unreal Engine 4, Gamedev, Разработка, Видео, Длиннопост

Я вышел в ранний доступ.


Те цифры продаж, которые я для себя посчитал бы успехом за первые два месяца, я получил в первые сутки.


Надо сказать, что релиз у меня вышел скомканным, как всегда: 3/3! Почему я не могу не накосячить с чем-нибудь?! Я выложил игру - в первой миссии не работает навигация для ботов. Игра не играется. Я отхватил негативных отзывов из-за этого бага. Ошибку я быстро устранил, но было обидно, т.к. часть из этих негативных отзывов до сих пор осталась. 


После этого я усиленно выпускал апдейты и общался с аудиторией. При этом я ничего не успевал! А потом.. а потом.. я выдохся. Выдохся настолько, что просто не мог сидеть за компьютером. Пожар! Пожар! Уже две недели нет апдейта, люди пишут, что я забросил игру.. Но я выгорел. Это было очень сложно. Огромный стресс.


Один из первых роликов (мой любимый) на YouTube о моей игре:

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


Я не заплатил ни за один ролик на YouTube. Я просто разослал ключи за несколько дней до планируемой даты выхода моей игры в Steam. Некоторые блогеры сняли видео, и количество вишлистов с ~700 выросло примерно до ~15000 к моменту выпуска. Я уж не знаю, какую часть влил сам Steam, но мне кажется, что работает это как снежный ком.


Покупать контекстную рекламу и/или рекламу в контакте - не выгодно. Можно поиграться, если есть лишние деньги, но на какой-то серьезный результат не рассчитывайте. С этим проектом я не покупал рекламу.


Также я хочу сказать, что я никогда не крутил отзывы. По моему мнению, это глупое занятие. Вы обманите Steam, и Steam нальёт вам независимый трафик, который, в свою очередь, оставит уже настоящие отзывы. Стратегически это просто не выгодно. А потом Steam, в добавок, забанит вас пожизненно.


А вот на что стоит обратить внимание. В этот раз я точно знал свою базовую целевую аудиторию. Это игроки TABS и Ravenfield. Соответственно, я старался сделать игру, которая привлечет их внимание. Потом я пошёл к ютуберам, которые играли в эти игры. И, в конце концов, я составил список тегов на странице в Steam основываясь на тегах этих двух игр (TABS - в первую очередь), а также использовал ключевые фразы в описании (например, battle simulator).


Фанатский арт :D

Shieldwall - Ранний доступ Unreal Engine 4, Gamedev, Разработка, Видео, Длиннопост

Сейчас мне пришлось сбавить обороты, чтобы восстановить силы. Апдейты теперь выходят не так часто, а хайп немного поутих. Как следствие, отзывы в Steam стали потихоньку ползти вниз, что, конечно, меня очень печалит.


Но работать дальше без отдыха я просто не мог, так что я успокоился и воспринял это как издержки моего производства. Теперь главная для меня задача - улучшить игру и исправить динамику отзывов. Я хочу, чтобы в этот раз они не опустились потихоньку до смешанных, как это было с Formata. Мне это по силам. А "завод" пока подождёт.


Спасибо за вашу поддержку!



Моя группа в контакте: https://vk.com/nezon_production

Показать полностью 4 1
42

Как мы работаем над проектом "Хельхейм". Пост №4

Здравствуйте!


Преисполненные глубоким уважением, приветствуем всех заинтересовавшихся и рады представить проект “Хельхейм” (пост №4).


Уж сильно затосковали мы по нашим дорогим читателям:) Потому, несмотря на напряженную работу в преддверии “Всенародного конкурса разработчиков на Unreal Engine 4”, делимся наработками, ловите!


Небольшой тизер для конкурса. В видео есть несколько отсылок к скандинавскому фольклору и сюжету игры. Как вам?


Мир поглотит тьма…

Эгиль - один из основных персонажей игры, которого мы будем часто встречать во время путешествия по миру “Хельхейма”. Вы уже слышали о нем, а точнее видели видео с его озвучкой под постом № 2. Он не раз поможет нам и окажется куда более важным персонажем мира, чем покажется на первый взгляд.

При создании концепта внешнего вида Эгиля мы опирались на его описание из “Саги об Эгиле” (характер, кстати, прорабатывается также согласно саге:)).


Эгиль, сын Скаллагрима.

Как мы работаем над проектом "Хельхейм". Пост №4 Викинги, Фэнтези, Dark Fantasy Fantasy, Игры, Gamedev, Длиннопост, Unreal Engine 4, Видео

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


Отрывок из доклада.

Как мы работаем над проектом "Хельхейм". Пост №4 Викинги, Фэнтези, Dark Fantasy Fantasy, Игры, Gamedev, Длиннопост, Unreal Engine 4, Видео

Всех благодарим за внимание! Комментируйте, не стесняйтесь, мы всем рады.

Как мы работаем над проектом "Хельхейм". Пост №4 Викинги, Фэнтези, Dark Fantasy Fantasy, Игры, Gamedev, Длиннопост, Unreal Engine 4, Видео

Группа вк - https://vk.com/club191083624

Показать полностью 3
48

Запекание в Blender 2.8+ | Видеокурс

Вводный курс по бейкингу/запеканию в 3D пакете Blender версии 2.8 и выше.


Здесь разбираемся не только в запекании базового цвета, но и карт шероховатости (roughness), отражений (reflections), AO (Ambient occlusion) и нормалей (normal).


Приятного просмотра!

Показать полностью 3
103

Реалистичная планета земля в Unreal Engine 4 | обзор

Сделал реалистичную планету земля в игровом движке Unreal Engine 4 с текстурами высокого разрешения: 16к для поверхности и 16к для облаков. А также, 8к текстуры для ночного неба.

На видео полный немой обзор данного проекта.

Планета земля вращается, облака, также, вращаются, но чуть быстрее.

Реалистичная планета земля в Unreal Engine 4 | обзор Земля, Планета, Unreal Engine 4, Разработка, Gamedev, Реализм, Космос, Видео, Длиннопост
Реалистичная планета земля в Unreal Engine 4 | обзор Земля, Планета, Unreal Engine 4, Разработка, Gamedev, Реализм, Космос, Видео, Длиннопост
Реалистичная планета земля в Unreal Engine 4 | обзор Земля, Планета, Unreal Engine 4, Разработка, Gamedev, Реализм, Космос, Видео, Длиннопост
Реалистичная планета земля в Unreal Engine 4 | обзор Земля, Планета, Unreal Engine 4, Разработка, Gamedev, Реализм, Космос, Видео, Длиннопост
Показать полностью 3
55

Разработка локации для игры

Я с самого детства обожаю игры и всегда мечтала создать когда-нибудь свою собственную игру. И, наверное, всю жизнь бы только и делала, что мечтала об этом, пока не открыла для себя Unreal Engine 4. Оказывается, чтобы сделать игру, не обязательно быть гуру программирования с 10-летним опытом. Всё на самом деле гораздо проще. Нужно всего лишь каждый день 3 раза втирать этот препарат создать 3D модельки и заставить их выполнять твои команды.
Не судите строго, это первый опыт в моделировании и работы с данным движком.
На сегодняшний день проработана одна из локаций игры и определён жанр проекта: хоррор.
По завершении разработки, данная игра будет в бесплатном доступе на Steam.

Похожие посты закончились. Возможно, вас заинтересуют другие посты по тегам: