Рубрика развивается при поддержке

Постоянный поиск нетипичных решений во время разработки Creature in the Well Материал редакции

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

В закладки
Аудио

Creature in the Well — необычная игра, которую проще всего описать словами «пинбол с мечом». В преддверии релиза 6 сентября разработчики на сайте 80 Level рассказали о её создании. В тексте они описали, как развивалась основная концепция, а также показали, как выглядел проект на разных этапах готовности. Кроме того, большое внимание они уделили созданию визуального стиля. Мы выбрали из текста главное.

По словам разработчиков, они всегда старались быть максимально креативными в своих играх. Кроме того, они опробовали множество самых разных мультимедийных форматов. Авторы даже признались, что им часто говорят об уникальности Creature in the Well, хотя в этот раз они старались сделать как можно более мейнстримную игру.

В начале прошлого года команда поставила перед собой задачу разработать три прототипа, а затем выбрать самый удачный и сделать на его основе игру. В итоге получилось так, что две идеи соединили в одну — так и появился основной геймплей Creature in the Well.

Март 2018

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

Май 2018

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

Май 2018

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

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

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

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

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

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

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

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

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

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

У некоторых действий в игре есть свой тайминг, который отражается в музыке. За это в Creature in the Well отвечал композитор Джим Фаулер и саунд-дизайнер Френк Питтенджер. Разработчики хотели, чтобы в игре особенно выделялись звуки электричества от шара. Было важно воплотить ощущение передачи силы и энергии. В работе команде очень помог FMOD.

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

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

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

У большинства объектов один и тот же класс — «powered object». Это позволяет им соединяться друг с другом, чтобы один объект мог активироваться, когда другой объект полностью заряжен.

Все базовые классы написаны на C++ и предназначены для того, чтобы было легко переопределить событие нужное в Blueprint. Также это позволяет опробовать конкретный VFX или воспроизвести FMOD.

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

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

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

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

Здесь визуальные эффекты устроены по тому же принципу

Напомним, что релиз состоится 6 сентября. Игра будет доступна на Nintendo Switch, Xbox One и ПК через Xbox Game Pass. Разработчики в заключение признались, что очень волнуются перед запуском игры, и надеются, что она понравится аудитории.

{ "author_name": "Владимир Семыкин", "author_type": "editor", "tags": ["\u043e\u043f\u044b\u0442","\u0438\u0441\u0442\u043e\u0440\u0438\u0438","\u0430\u0440\u0442"], "comments": 3, "likes": 43, "favorites": 77, "is_advertisement": false, "subsite_label": "gamedev", "id": 66718, "is_wide": true, "is_ugc": false, "date": "Fri, 30 Aug 2019 13:00:42 +0300", "is_special": false }
0
{ "id": 66718, "author_id": 94357, "diff_limit": 1000, "urls": {"diff":"\/comments\/66718\/get","add":"\/comments\/66718\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/66718"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64954, "last_count_and_date": null }
3 комментария
Популярные
По порядку
5

Не пиксельное! Охуенно!

Ответить
0

Прекрасная стилистика, напомнила мне Power Hover.

Ответить
0

Нехило арканоид прокачали.

Ответить

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "Article Branding", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "cfovz", "p2": "glug" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Баннер в ленте на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } } ]