Аудиотехнологии «Грёз»
Звуковой движок «Грёз»
В «Грёзах» есть несколько мощных инструментов, которые помогут вам понять, как воспроизводятся ваши творения. Большинству авторов они не нужны, но тем, кто хочет выжать движок на полную, они могут пригодиться! Вы можете использовать инструменты, чтобы выяснить, почему некоторые из ваших звуков пропадают, искажаются или воспроизводятся с задержкой. Прежде всего, давайте рассмотрим технологию звукового движка в «Грёзах». Звук в «Грёзах» обычно исходит из гаджетов в сцене. Когда гаджет для звука срабатывает по логике, он создает экземпляр самого себя. Гаджет может создать более одного экземпляра одновременно, если, например, он снова запускается до того, как завершилось воспроизведение предыдущего экземпляра.
Затем каждый экземпляр звука может создать несколько голосов. Аудиоэффект обычно запускает один экземпляр с одним голосом. Голос — это то, что фактически воспроизводит данные семпла. Инструментальный отрывок создаст один экземпляр звука, который создаст несколько голосов, по одному для каждой ноты из отрывка. Вот пример того, как выглядит этот поток и что может входить в эти единицы.
Более того, в «Грёзах» используется гранулярный движок, и каждый голос фактически воспроизводит звук отдельными фрагментами под названием зёрна. Это немного похоже на частицы, которые используются в графике «Грёз»!
Анализатор звука
Этот инструмент позволяет вам увидеть, сколько этих ресурсов использует ваше творение в любой момент. Полезный ролик про анализатор звука здесь.
Запустите анализ аудио и воспроизведите свое творение. Инструмент с течением времени будет собирать информацию, выдавая вам числовые значения в процессе воспроизведения. При выходе из инструмента вы получите обзор анализа (изображение ниже).. Это отчёт, представляющий данные вашего прохождения на графике, где вы можете увидеть, какие части вашего творения наиболее затратные. Вы можете просмотреть график до любого момента времени, а изображение справа от графика показывает, что происходило в это время.
Наиболее важным показателем здесь являются затраты звука. Это совокупные затраты на голоса, экземпляры, зёрна и все эффекты: реверберацию, задержку, компрессию и так далее. Чем ближе это значение к максимуму, тем больше движок начнет вырезать голоса, чтобы не достичь 100% — обычно в таком случае вы получаете предупреждение. Если затраты достигнут 100%, игра не сможет правильно выводить звук, поэтому сделает всё возможное, чтобы этого избежать.
У экземпляров и голосов есть лимиты, и если вы до них дойдёте, новые звуки могут не воспроизводиться, а те, которые уже воспроизводятся, могут быть вырезаны. Лимит для экземпляров — 128. Для голосов немного сложнее, но мы также сделали ограничение графика на 128. Теоретически у вас может быть больше голосов, но тогда они, как правило, сильно влияют на производительность — в зависимости от того, на какой системе вы запускаете «Грёзы».
Чем больше голосов и экземпляров запущено, тем сильнее будут расти затраты. Глядя на график, вы сможете понять, где их нужно оптимизировать.
Обратите внимание, что не все голоса равные. Гранулярный движок означает, что некоторые голоса могут воспроизводиться с большим количеством перекрывающихся зёрен, чем другие, поэтому затраты на них намного выше. Затраты зерна — это среднее значение затрат на все звуки, которые воспроизводятся в сцене. У большинства голосов средние затраты зерна равны 1x, но они могут сильно возрасти, если вы поиграете с настройками гранулярного синтеза и гранулярной рандомизации на гаджетах для звука. На приведенных ниже диаграммах показаны примеры дорогих и дешёвых настроек перекрытия зёрен.
Вы можете задать перекрытие зёрен на странице гранулярного синтеза в меню настройки звука. Эта настройка также отображается на странице гранулярной рандомизации, где ряд других ползунков также может влиять на затраты зерна.
Голоса также могут стать более затратными, если вы активировали такие эффекты, как осциллятор, перегруз, динамический компрессор и т. д. Самые дешёвые голоса обычно представляют собой простые аудиоэффекты, воспроизводимые без каких-либо интересных настроек.
Как использовать эту информацию для оптимизации своего творения? Чаще всего вам нужно снизить полифонический лимит своих звуков. Это ограничение на количество голосов, которые можно создать одним звуком. Если всё делать аккуратно, разница будет практически не заметна. Вот несколько примеров, где может быть полезно уменьшение полифонии:
— Музыкальный отрывок, в котором много очень длинных нот накладываются друг на друга, например, фортепиано или синтезатор с плавным затуханием звука. — Звук взрыва или оружия, который воспроизводится сам по себе, срабатывая очень быстро.
Полифонический лимит обычно по умолчанию равен 20 — большинство звуков могут воспроизводить 20 экземпляров самих себя без необходимости, например, если повторяются очень быстро.
Другой вариант — посмотреть на звуки с большим перекрытием зёрен и уменьшить их, хотя имейте в виду, что это обычно влияет на классный эффект, который эти звуки создавали.
Вы также можете перейти на страницу аудиоэффектов, чтобы отключить их частично или полностью, что также должно помочь сократить затраты на большинство этих звуков.
И разумеется, если ничего не помогает, можете перепроверить свои сцены и поискать там звуки, которые можно полностью удалить.
Аудиотермометр и готовность звуков
Сейчас мы поговорим об аудиотермометре! Но сначала мы снова взглянем на движок.
Звук в «Грёзах» представлен в виде семплов, разделенных на куски. Семплы — это то, что создают записи вашего микрофона, а куски — то, что вы видите в преобразователе кусков звука.
Общее количество уникальных семплов (в термометре: «уникальные звуки») ограничено, также мы ограничили количество памяти, доступной для использования семплами. Например, у вас могут закончиться семплы, если вы используете много небольших записей, или у вас может закончиться память, если вы используете несколько длинных записей. Другое ограничение действует на количество импортированных или записанных пользовательских звуков. Очень важно понимать, что именно обеспечивает работоспособность аудиосистемы «Грёз»:
Все аудиоматериалы ММ, такие как инструменты и звуковые эффекты из коллекций, не обладают стоимостью загрузки.
Аудиоданные обычно долго загружаются и занимают много места, поэтому использование стандартного набора семплов в «Грёзах» значительно повышает скорость загрузки творений сообщества. Пользовательские аудиоматериалы влияют на время загрузки творений (например, переходы между уровнями будут не мгновенные, а с задержкой). Использование длинных звуковых семплов (например, целых песен) крайне негативно скажется на времени загрузки.
Поэтому мы рекомендуем использовать музыку, созданную в «Грёзах» с помощью инструментов ММ. Обычно семплов из подготовленной библиотеки достаточно для создания самых разнообразных звуков с помощью встроенных эффектов. Но если вы хотите обеспечить быструю загрузку своих творений, обрежьте применяемые звуки и используйте их как можно чаще.
Однако необходимо понимать, что обрезая собственные семплы с помощью преобразователя кусков, вы не уменьшите их стоимость. Семплы невозможно изменить после записи, поэтому вы должны заранее подготовить каждый семпл. Если вы загружаете в «Грёзы» файл, который будет нарезан на звуки, заранее отредактируйте файл, избавившись от пауз и ненужных звуков. Если вы превысите какое-либо ограничение, вы не сможете опубликовать или сохранить свое творение.
Далее приведен пример двух звуков с разной стоимостью. Звук слева использует куски из двух различных семплов. Звук справа использует два куска из одного семпла. Звук справа дешевле, но его стоимость можно было уменьшить с помощью предварительной обрезки неиспользуемых частей. Звук слева абсолютно не оптимизирован! В ММ мы предпочитаем создавать звуковые эффекты и инструменты с помощью кусков, вырезанных из одного семпла, чтобы снизить общую стоимость.
Сейчас мы поговорим о крайне важном ограничении под названием готовность звуков, которое существовало всегда, но редко упоминалось.
Для воспроизведения звука его аудиоданные должны быть «загружены». Если аудиоданные не готовы, звук будет воспроизводиться с задержкой. Музыка или записи голоса будут не синхронизированы с анимацией.
Нам нравится использовать звуки, но если бы мы загрузили каждый кусок для каждого звука заранее, в игре не осталось бы памяти для добавления других интересных функций, поэтому нам постоянно приходится идти на компромисс при использовании движка. Мы называем эту систему закреплением — каждый звук пытается воспроизвести хотя бы один свой кусок в определённое время. Это упрощает задачу, но если в вашем творении слишком много звуков, одновременно воспроизводящих различные аудиодорожки, это займет всю доступную память, что вызовет задержки при воспроизведении.
Раньше в «Грёзах» это происходило незаметно, но теперь вы будете получать оповещение. Также вы сможете использовать особый инструмент для определения звуков, вызывающих ошибку.
В ваших творениях, особенно там, где другие творцы могут вставлять уровни, необходимо минимизировать стоимость термометра, иначе звуки других творцов, вставляющих дополнительные элементы, будут воспроизводиться с задержкой! Однако от задержки можно избавиться, вырезав другие элементы. Давайте узнаем, как это сделать.
Во-первых, в режиме звука есть шкала термометра, которая появится после повышения стоимости готовности звука. Мы добавили меню показать/скрыть в режим звука, чтобы термометр постоянно отображался на экране. На шкалу стоит обращать внимание, если вы превысили ограничение по готовности звуков. Щёлкнув по шкале, вы откроете термометр готовности звуков, в котором можете выбрать пункт дополнительная информация, чтобы отобразить 20 самых дорогих звуков в сцене. Помните: стоимость будет связана с готовностью звуков!
Также вы найдёте разделение по звуковым каналам. Вы можете выбрать любой пункт из списка, чтобы перейти к местонахождению звука в вашей сцене (вероятно, придётся извлечь его из микрочипа или временной шкалы). Вы также увидите синий мигающий индикатор, временно указывающий на местонахождение звука.
Как вы можете заметить, некоторые звуки в списке продублированы. Если вы хотите освободить место в бюджете готовности звуков, вам придётся избавиться от дубликатов, поскольку они используют память.
Далее можно удалить самые дорогие звуки или обрезать их в преобразователе кусков. Обрезав звуки, вы уменьшите стоимость готовности звуков, поскольку вы будете использовать стоимость одного куска, а не целого семпла. Далее приведён пример двух звуков, использующих разные части одного более длинного семпла.
В стоимости учитывается часть семпла, используемого обоими кусками — общие части не будут учитываться дважды!
Чаще всего ошибки готовности звуков возникают из-за излишне длинных звуков. Например, здесь воспроизводится фоновый звук «День в лесу», который использует 5,24% бюджета, столько же использует целая песня, вставленная в эту сцену! В этом случае мы вписываемся в рамки бюджета, но мы можем обрезать звук «День в лесу» в преобразователе кусков.
Еще один совет: импортированные звуки, такие как длинные фрагменты предварительно записанной музыки, очень быстро и неэффективно расходуют бюджет готовности звуков. Поэтому для корректного воспроизведения звуков рекомендуется использовать музыку, созданную в «Грёзах».
На этом всё. Мы надеемся, что вы сможете эффективно использовать эти функции. Однако нам следует упомянуть о некоторых особенностях, связанных с этими функциями: – Каждый звук подготавливает только один из кусков (См. ниже), поэтому, если в сцене используется несколько кусков, вам придётся поискать нужный. – За исключением инструментов с включённой функцией преобразования рядов! Они подготовят один кусок для каждого ряда на своей ленте для пианино, на которой расположены ноты. Это значит, что они могут быть довольно дорогими! – Звуки, которые используют практически одни и те же части семпла (но не одни и те же), будут обладать стоимостью, равной стоимости используемой части семпла, даже если она разделена между несколькими звуками. Однако, как упоминалось выше, общие части звуков не удваивают общую стоимость. Фактически звуки в списке становятся отдельными пунктами после обрезки, даже если они используют почти идентичные аудиоданные. – Сейчас невозможно выбрать кусок для подготовки, но кто знает, что будущее нам готовит!
Руководство пользователя «Грёз» постоянно дополняется. Следите за обновлениями: мы будем периодически добавлять новые уроки и статьи.