Назад
Как Look North World создали ритм-игру Patchwork Parkour в Fortnite
Майкл Декекек, ведущий инженер, Look North World
Patchwork Parkour (код острова: 1425-4464-4801) — совместный продукт игровой студии UGC, издателя Look North World и команды Harmonix Labs из Epic Games, известной созданием музыкального сопровождения мирового уровня.
Вместе мы разработали музыкальную игру, уделив особое внимание игровому процессу и интерактивным музыкальным возможностям. Мы установили новые стандарты творчества и управления музыкой и визуальными эффектами с набором устройств Patchwork для творческого режима Fortnite и UEFN. Patchwork Parkour наглядно демонстрирует, как можно создавать пользовательские саундтреки для островов и использовать музыку для расширения игрового процесса.
Harmonix постоянно совершенствует и дополняет свои инструменты Patchwork, и в процессе разработки Patchwork Parkour в инструмент были внесены существенные улучшения.
Ниже мы расскажем о ряде ключевых возможностей, использованных в нашей игре, а также о важных уроках, которые мы извлекли из процесса разработки. Более подробную информацию и документацию по текущим инструментам Patchwork можно найти в документации Epic по инструментам Patchwork.
Нотные секвенсоры позволяют размещать и воспроизводить ноты, основываясь на текущем игровом темпе. Хотя само устройство не создаёт музыку, выходной кабель нотного секвенсора можно подключить к различным другим устройствам, которые мы опишем позднее.
Нотные триггеры активируют события в момент воспроизведения выбранных нот. Подключив нотный триггер к выходной цепочке нотного секвенсора, вы дадите другим устройствам возможность реагировать на эти события и выполнять действия, основанные на воспроизводимой ноте. Так в Patchwork Parkour мы анимировали угрозы окружения в такт саундтрека.
Эти устройства, а также устройство «Синхронизация песен» — основные компоненты для построения игрового процесса на основе ритма. Хотя их можно сочетать с другими устройствами для создания реальной музыки, технически для активации игрового процесса на основе ритма даже не требуется воспроизводить какие-либо звуки. Процесс создания музыки для полного саундтрека может идти параллельно или последовательно с процессами других инструментов Patchwork, но об этом мы подробнее расскажем в следующем разделе.
Один из важных инструментов в Patchwork Parkour — «Центральный контроллер». Этот простой диспетчер играет очень важную роль, управляя темпами всех инструментов Patchwork. Когда в центральном контроллере задаётся темп, все размещённые нотные секвенсоры воспроизводятся синхронно этому темпу. Данная возможность позволяет параллельно и синхронно запускать несколько нотных секвенсоров.
На этапе разработки прототипа Patchwork Parkour в основном использовались встроенные инструменты. Однако переключение на элементы Fusion Patch в процессе разработки позволило сделать аудиоряд максимально динамичным и при этом свести к минимуму количество размещаемых на карте устройств.
Чтобы обеспечить оптимальное сочетание сложности музыки и расхода памяти, мы объединили элементы Fusion Patch и Эффекты с нотными секвенсорами и нотными триггерами в параллельной схеме. Так, мы поместили комбинацию нотного секвенсора и нотного триггера (без вывода на динамик) рядом с отдельным нотным секвенсором и разнообразными генераторами музыки в его рабочей цепочке (в т. ч. инструментальными проигрывателями, фильтрами, модуляторами и динамиками).
Такой подход позволил нам создавать относительно сложную музыку на основе имеющихся сэмплов, сохраняя при этом точную синхронизацию игровой анимации с музыкой, воспроизводимой в сэмплах.
Демонстрация Fusion Patch и нотных триггеров с синхронным использованием нескольких Нотных секвенсоров.
Простейшая форма влияния игрового процесса на музыку — включение и отключение устройств Patchwork в зависимости от входа или выхода игрока с устройств зоны модификатора. Это достаточно распространённый и простой метод, который очень много используется в нашей игре. Использование устройства «Настройщик Patchwork» ещё более интересно. Это устройство позволяет менять настройки других устройств Patchwork в процессе игры, внося любое количество изменений в музыкальную композицию.
В следующих видеороликах рассказывается об использовании настройщиков для управления музыкой через игровой процесс.
Видео 2: в конце уровня 3 музыка сменяется на новый микс.
Видео 3: настройщик используется для обновления микса. Хотя в игровом процессе происходит много изменений музыки, в этом видео рассказывается о двух конкретных музыкальных элементах. Мы можем переключаться между ними, изменяя текущую страницу нотного секвенсора.
Видео 1: уровень 3 начинается с нового микса.
Если ваши игроки не взаимодействуют с устройствами Patchwork, есть несколько способов сократить нагрузку на память в зависимости от количества используемых устройств Patchwork.
Однако для оптимизации производительности в финальной версии рекомендуется конвертировать анимацию в другие форматы.
Для большинства наших целей оптимально подошли сценарии Verse. Хотя некоторые визуально сложные анимации остались в видеорядах, для оптимальной производительности важно обрабатывать их аккуратно.
Patchwork Parkour — платформер с препятствиями, основанный на ритме, и мы используем в игровом процессе много одинаковых препятствий, каждое из которых состоит из одного или нескольких акторов. В UEFN есть некоторые сложности с преобразованием данных объектов в компоненты, которыми можно легко манипулировать, копировать и переносить. Вот несколько советов, которые помогут упростить эту задачу:

В Patchwork Parkour мы узнали, как сочетать динамическую музыку с увлекательным игровым процессом и при этом оптимизировать производительность. Каждое решение, от выбора инструментов до тонкой настройки памяти, помогало нам формировать более стабильный и интересный игровой процесс. Создавая собственные острова, не забывайте побольше экспериментировать и оптимизировать, а самое главное — получать от этого удовольствие!
Заходите в игру сейчас с кодом острова 1425-4464-4801.
Вместе мы разработали музыкальную игру, уделив особое внимание игровому процессу и интерактивным музыкальным возможностям. Мы установили новые стандарты творчества и управления музыкой и визуальными эффектами с набором устройств Patchwork для творческого режима Fortnite и UEFN. Patchwork Parkour наглядно демонстрирует, как можно создавать пользовательские саундтреки для островов и использовать музыку для расширения игрового процесса.
Harmonix постоянно совершенствует и дополняет свои инструменты Patchwork, и в процессе разработки Patchwork Parkour в инструмент были внесены существенные улучшения.
Ниже мы расскажем о ряде ключевых возможностей, использованных в нашей игре, а также о важных уроках, которые мы извлекли из процесса разработки. Более подробную информацию и документацию по текущим инструментам Patchwork можно найти в документации Epic по инструментам Patchwork.
Создание игрового процесса на основе ритма
Основные компоненты: нотный секвенсор, нотный триггер, синхронизация песни
Во многих играх инструменты Patchwork «Нотный секвенсор», «Нотный триггер» и «Синхронизация песен» играют основную роль в создании игрового процесса на основе ритма. При создании Patchwork Parkour широко использовались первые два инструмента. Инструмент «Синхронизация песен» предлагает мощные средства синхронизации видеоряда UEFN с аудиорядом. Поскольку данный инструмент был выпущен уже после начала разработки, мы не смогли использовать его возможности в полной мере, но оценили его огромный потенциал на будущее.
Комбинация инструментов «Нотный секвенсор» и «Нотный триггер» использовалась для синхронизации акторов с барабанным ритмом в Patchwork Parkour.
Нотные секвенсоры позволяют размещать и воспроизводить ноты, основываясь на текущем игровом темпе. Хотя само устройство не создаёт музыку, выходной кабель нотного секвенсора можно подключить к различным другим устройствам, которые мы опишем позднее.
Нотные триггеры активируют события в момент воспроизведения выбранных нот. Подключив нотный триггер к выходной цепочке нотного секвенсора, вы дадите другим устройствам возможность реагировать на эти события и выполнять действия, основанные на воспроизводимой ноте. Так в Patchwork Parkour мы анимировали угрозы окружения в такт саундтрека.
Видео, показывающее, как комбинация Нотного секвенсора и Нотного триггера активирует в игре анимацию света.
Эти устройства, а также устройство «Синхронизация песен» — основные компоненты для построения игрового процесса на основе ритма. Хотя их можно сочетать с другими устройствами для создания реальной музыки, технически для активации игрового процесса на основе ритма даже не требуется воспроизводить какие-либо звуки. Процесс создания музыки для полного саундтрека может идти параллельно или последовательно с процессами других инструментов Patchwork, но об этом мы подробнее расскажем в следующем разделе.
Один из важных инструментов в Patchwork Parkour — «Центральный контроллер». Этот простой диспетчер играет очень важную роль, управляя темпами всех инструментов Patchwork. Когда в центральном контроллере задаётся темп, все размещённые нотные секвенсоры воспроизводятся синхронно этому темпу. Данная возможность позволяет параллельно и синхронно запускать несколько нотных секвенсоров.
Создание динамических саундтреков
Смешивание аудио из внутренних и внешних источников для игрового процесса, основанного на музыке
Основные компоненты: элементы Fusion Patch, инструментальные проигрыватели, эффекты, фильтры, модуляторы, динамики
Patchwork предлагает мощный инструментарий аудиоустройств, позволяющий создавать полноценное музыкальное сопровождение игры. С помощью встроенных инструментов и эффектов Patchwork можно сгенерировать весь саундтрек целиком. Более того, вы можете добавить собственные сэмплы через элементы Fusion Patch, используя внешние аудиоинструменты.На этапе разработки прототипа Patchwork Parkour в основном использовались встроенные инструменты. Однако переключение на элементы Fusion Patch в процессе разработки позволило сделать аудиоряд максимально динамичным и при этом свести к минимуму количество размещаемых на карте устройств.
Чтобы обеспечить оптимальное сочетание сложности музыки и расхода памяти, мы объединили элементы Fusion Patch и Эффекты с нотными секвенсорами и нотными триггерами в параллельной схеме. Так, мы поместили комбинацию нотного секвенсора и нотного триггера (без вывода на динамик) рядом с отдельным нотным секвенсором и разнообразными генераторами музыки в его рабочей цепочке (в т. ч. инструментальными проигрывателями, фильтрами, модуляторами и динамиками).
Такой подход позволил нам создавать относительно сложную музыку на основе имеющихся сэмплов, сохраняя при этом точную синхронизацию игровой анимации с музыкой, воспроизводимой в сэмплах.
Влияние игрового процесса на музыку
Patchwork предлагает не только инструменты для создания музыки и расширения игровых механик, но и множество средств, позволяющих реализовать влияние игрового процесса на музыку. Patchwork Parkour использует разнообразные техники динамического обновления музыки в зависимости от действий и достижений игрока.Простейшая форма влияния игрового процесса на музыку — включение и отключение устройств Patchwork в зависимости от входа или выхода игрока с устройств зоны модификатора. Это достаточно распространённый и простой метод, который очень много используется в нашей игре. Использование устройства «Настройщик Patchwork» ещё более интересно. Это устройство позволяет менять настройки других устройств Patchwork в процессе игры, внося любое количество изменений в музыкальную композицию.
В следующих видеороликах рассказывается об использовании настройщиков для управления музыкой через игровой процесс.
Видео 2: в конце уровня 3 музыка сменяется на новый микс.
Видео 3: настройщик используется для обновления микса. Хотя в игровом процессе происходит много изменений музыки, в этом видео рассказывается о двух конкретных музыкальных элементах. Мы можем переключаться между ними, изменяя текущую страницу нотного секвенсора.
Выводы и советы для разработчиков
Основные компоненты: режим экономии памяти Patchwork, наборы страниц в секвенсорах нот, сэмплы Fusion, скелетные сетки, привязка акторов
Управление памятью
Игровые устройства Patchwork могут потреблять много оперативной памяти. Вот несколько советов, которые помогут сбалансировать нагрузку на память, сохранив при этом динамическую музыку.Если ваши игроки не взаимодействуют с устройствами Patchwork, есть несколько способов сократить нагрузку на память в зависимости от количества используемых устройств Patchwork.
- Использование настройки «Режим экономии памяти Patchwork» в параметрах острова. Эта настройка отключает все анимации и большую часть графических эффектов, используемых устройствами Patchwork в игровом процессе. Данную опцию рекомендуется включать, только если вашим игрокам не нужно взаимодействовать с устройствами Patchwork в процессе игры.
- Её использование необходимо ограничивать, поскольку эти устройства должны быть полностью видимы и доступны для взаимодействия, когда вы создаёте и интегрируете музыку в игру с помощью Patchwork. Однако в финальной версии или при тестировании памяти вы можете включить её и существенно снизить нагрузку игры на память.
- Используйте наборы страниц в нотных секвенсорах, чтобы переключаться между настройщиками в зависимости от требований игрового процесса.
- Нотные секвенсоры могут использовать наборы из нескольких страниц, и их можно перебирать по отдельности или по порядку. В Patchwork Parkour эта возможность используется для сокращения количества отдельных устройств в игре. Страницы можно менять в зависимости от достижений игрока. В одном из видеороликов выше показан соответствующий пример, где активируется переход на страницу 3 нотного секвенсора, чтобы воспроизвести другую музыку.
- Использование сэмплов Fusion. Как уже говорилось выше, в Patchwork Parkour широко используются сэмплы Fusion. Чтобы сократить количество отдельных устройств для создания определённого звука и тем самым снизить нагрузку на память, вы можете создать звук во внешнем устройстве DAW и воспроизвести его в элементе Fusion Patch через инструментальный проигрыватель.
Внутриигровое видео: преимущества и типичные ошибки
Начиная разработку, мы знали, что устройства видеорядов и внутриигрового видео ставят высокие требования к производительности. Однако также мы знали, что они идеально подходят для быстрой итерации игровых механик, которые хорошо синхронизируются с музыкой. На этапе создания прототипов они позволяют быстро и легко создавать интересные игровые механики, и поэтому мы рекомендуем применять их на ранних стадиях процесса разработки.Однако для оптимизации производительности в финальной версии рекомендуется конвертировать анимацию в другие форматы.
Для большинства наших целей оптимально подошли сценарии Verse. Хотя некоторые визуально сложные анимации остались в видеорядах, для оптимальной производительности важно обрабатывать их аккуратно.
- При воспроизведении последовательностей внутриигрового видео синхронно с музыкой желательно консолидировать как можно больше акторов, анимирующих конкретный музыкальный ритм, в минимальном количестве видеорядов. Запуск и остановка этих устройств потребляют много ресурсов, и производительность можно повысить, сведя к минимуму количество одновременно воспроизводимых видеорядов.
- В Patchwork Parkour мы создали инструмент включения и отключения анимации по зонам, что позволило снизить количество параллельно воспроизводимых видеорядов. Поскольку это игра для одного игрока, мы можем чётко контролировать количество одновременно работающих устройств.
Patchwork Parkour — платформер с препятствиями, основанный на ритме, и мы используем в игровом процессе много одинаковых препятствий, каждое из которых состоит из одного или нескольких акторов. В UEFN есть некоторые сложности с преобразованием данных объектов в компоненты, которыми можно легко манипулировать, копировать и переносить. Вот несколько советов, которые помогут упростить эту задачу:
- Скелетные сетки: по возможности следует избегать использования скелетных сеток во внутриигровом видео.
- Вначале мы строили все активируемые музыкой внешние препятствия, используя скелетные сетки и их анимацию. Это существенно упрощало работу с большим количеством препятствий, поскольку при изменении анимации обычно требовалось менять только саму анимацию, а не вносить изменения в каждую дорожку в нескольких видеорядах.
- Однако в текущей версии UEFN при воспроизведении видеоряда скелетные сетки должны синхронизировать свою анимацию и обновлять кости в каждом кадре, даже если анимация не задана. Это может вызывать серьёзные проблемы с производительностью.
- Вначале мы строили все активируемые музыкой внешние препятствия, используя скелетные сетки и их анимацию. Это существенно упрощало работу с большим количеством препятствий, поскольку при изменении анимации обычно требовалось менять только саму анимацию, а не вносить изменения в каждую дорожку в нескольких видеорядах.
- Акторы и дорожки: чтобы оптимизировать производительность видеоряда, лучше всего привязывать к каждой дорожке преобразования только один актор. При таком подходе загрузка выполняется гораздо более плавно, а также сводится к минимуму вероятность проблем с производительностью, вызванных особенностями работы видеоряда с подчинёнными объектами.
- Если к одной дорожке привязаны несколько акторов, на дорожке появится значок двойной жёлтой стрелки. Обращайте внимание на этот значок и постарайтесь избегать таких структур, чтобы сохранить оптимальную производительность.

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

В Patchwork Parkour мы узнали, как сочетать динамическую музыку с увлекательным игровым процессом и при этом оптимизировать производительность. Каждое решение, от выбора инструментов до тонкой настройки памяти, помогало нам формировать более стабильный и интересный игровой процесс. Создавая собственные острова, не забывайте побольше экспериментировать и оптимизировать, а самое главное — получать от этого удовольствие!
Заходите в игру сейчас с кодом острова 1425-4464-4801.