Как добавить звуки шагов в юнити

Добавление звуков ходьбы в Unity

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

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

А теперь перейдём непосредственно к теме данной статьи. Для начала нам необходимо скачать звук ходьбы в интернете, и перетащить этот аудиофайл в окно Project. Так же можете переименовать данный файл на своё усмотрение. У меня он переименован в run.

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

В поле AudioClip перетащите свой аудиофайл шагов из окна Project. В поле Play On Awake необходимо убрать галочку, чтобы наши шаги не воспроизводились сразу же, после запуска игры. Мы их сами будем воспроизводить в скрипте. А в поле Loop необходимо галочку всё же поставить, чтобы по завершению звукового файла, он воспроизводился снова и снова.

Остался последний штрих. Нам необходимо с помощью кода воспроизводить звук шагов, которые подгружены в компонент Audio Source в тот момент, когда персонаж идёт, и останавливать этот звук, когда персонаж не идёт. Для этого создадим новый скрипт C# с названием SoundRun, в котором пропишем следующее:

В первой строке мы объявили переменную moveSound, в которой будет храниться ссылка на компонент AudioSource. Поэтому не забудьте в окне Inspector перетащить компонент Audio Source в поле moveSound.

В строке #9 мы проверяем, нажата ли кнопка движения игрока в одну из сторон: вправо, влево, вверх, вниз. И если да, то с помоью метода Play() воспроизводим наш аудиофайл шагов. А если кнопка движения не нажата, то принудительно останавливаем звук шагов с помощью метода Stop().

Так же обратите внимание, что в строке #11 у нас есть ещё одна проверка на то, воспроизводится ли звук шагов в данный момент? Если да, то ничего не делаем, поскольку так и надо. А если нет, то начинаем воспроизведение звука.

Важно: Чтобы не создавать множество скриптов, Вы можете скрипт SoundRun не создавать, а скопировать данный код в ваш скрипт, который отвечает за передвижение персонажа. Так будет более правильно.

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

На этом всё. Если остались вопросы, пишите в комментариях. А так же не забываем ставить алйки 🙂

Как сделать звуки шагов? [FPS]

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

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

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

Создаем класс, который отвечает за загрузку и воспроизведение:

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

Создаем скрипт управления:

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

Простая звуковая система для FPSController в Unity

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

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

Подготовка сцены

Для начала нужно подготовить сцену.

  1. FPSController

Скачиваем с Asset Store. Открываем окно Asset Store’а.

Вбиваем в поиск «Standart Assets».

Кликаем «Download», ждем пока скачается, потом кликаем «Import».

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

Не боимся, просто очищаем консоль.

Чтобы очистить консоль:

– Кликаем снизу на текст ошибки

– В открывшемся окне кликаем на «Clear»

  1. Создаем

Меняем масштаб X и Z 100х100

  1. Делаем материал для «земли»

Это не обязательно, когда «земля» белая, немного засвечивает экран, не очень приятно.

Чтобы создать и присвоить материал:

  1. Правый клик на Assets
  2. Create -> Material
  3. Выбираем его и перетаскиваем на «землю»
  4. Меняем настройки цвета, как нравится

Мы сделали цвет чуть потемнее

  1. Находим в Assets\Standard Assets\Characters\FirstPersonCharacter\Prefabs префаб (обозначется синеньким кубиком) FPSController и перетаскиваем его на сцену.

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

  1. Ставим кубик, чтобы ходить вокруг него
  2. Удаляем Main Camera, которая есть по стандарту на сцене
  3. Пробуем

  1. Отключаем Use FOV Kick и Use Blob Head в FirstPersonCharacter, но это не обязательно
  2. Чтобы убрать звуки шагов: В Скрипте FirstPersonController.cs с помощью символов «//»
    1. Комментируем строку 74
    2. Комментируем строку 119
    3. Комментируем строку 130

    Пример закоменченной строки:

    Система звуков отключена, всё готово, чтобы делать свою систему.

    Подготовка скрипта

    1. Качаем звуки, можно с сайта premiumbeat.com/blog/40-free-footstep-foley-sound-effects/
    1. Создаем папку Sounds в Assets
    2. Распаковываем архив в папку Sounds

    Импорт займет много времени – звуковые файлы гарантированно долго конвертируются.

    1. Создаем папку Scripts
    2. Создаем скрипт FootstepsSoundController
    3. Добавляем скрипт cs на FPSController на сцене
    4. Когда объявили переменные – не забудьте добавить аудиоклипы через инспектор:

    Звук прыжка и приземления берем из стандартных ассетов, в папке FirstPersonCharacter

    Звук ходьбы берем на ваше усмотрение из заранее заготовленных, из папки Sounds. Мы выбрали Concrete_Shoes_Running.

    Должно получится так:

    Скриптинг

    Обратите внимание на комментарии в коде. Больше инфы после листинга кода.

    public class FootstepsSoundController : MonoBehaviour

    public AudioClip FootstepsSound;

    public AudioClip JumpSound;

    public AudioClip LandingSound;

    private AudioSource audioSource;

    private CharacterController cController;

    private bool wasGrounded = false ;

    //getcomponent очень требователен к ресурсам компьютера, поэтому мы выполняем его один раз, “сохраняем ссылки” на компоненты

    if (cController.isGrounded) // персонаж на земле

    if (cController.velocity.sqrMagnitude > 0f) // персонаж двигается , используется квадратичная магнитуда ,

    //т.к. это операция менее требовательна к ресурсам, и нам не нужна точная скорость – нам нужен сам факт передвижения

    else // персонаж НЕ двигается

    if (audioSource.clip != JumpSound && audioSource.clip != LandingSound) // если аудиоклип в AudioSorce это не клип прыжка и не клип приземление

    if (audioSource.isPlaying) // если звук проигрывается

    audioSource.Stop(); // выключаем проигрывание звуков

    if ( cController . isGrounded != wasGrounded ) //проигрываем звук, если раньше персонаж был на земле, а теперь в воздухе

    wasGrounded = true ; //запоминаем прошлое состояние персонажа – в данном случае персонаж на земле

    else //персонаж Н E на земле

    if (audioSource.clip != JumpSound && audioSource.clip != LandingSound ) //если аудиоклип в AudioSorce это не клип прыжка и не клип приземление

    if ( audioSource . isPlaying ) //если звук проигрывается

    audioSource . Stop (); //выключаем проигрывание звуков

    if (cController.isGrounded != wasGrounded) //проигрываем звук, если раньше персонаж был в воздухе, а теперь на земле

    wasGrounded = false ; //запоминаем прошлое состояние персонажа – в данном случае персонаж в воздухе

    Подробнее

    1. Зачем вообще нужен GetComponent?

    На сцене может существовать сколько угодно AudioSource и CharacterController. С помощью GetComponent мы указываем какой именно компонент мы используем.

    1. Почему GetComponent в старте? почему логика в FixedUpdate, а не в Update?
      1. Функция GetComponent очень требовательна к ресурсам. Мы выполняем её только один раз при запуске скрипта и сохраняем результат её работы в виде ссылки на компонент. Дальше мы можем использовать ссылку на компонент на свое усмотрение, без повторного использования GetComponent.
      2. Звук может проигрываться в любой момент, и, вроде логично было бы выполнять функцию в Update. Но на деле обновление положения физических объектов (в т.ч. CharacterController’а) происходит каждый FixedUpdate. То есть, если выполнять логику скрипта в Update, то, на деле, мы просто сильнее загрузим компьютер, а результат будет точно такой же.
      1. Чтобы добавить ваш аудиоклип в скрипт создаем переменную тип AudioClip.
      2. В AudioSource, переменную clip, присваиваем ваш аудиоклип
      3. Чтобы начать проигрывание звук – используем команду Play(), чтобы остановить проигрывания звука – используем команду Stop().

      Пример:

      4. Условия выполнения логики скрипта

      • Если персонаж на земле И двигается – включаем звук шагов
      • Если персонаж в воздухе ИЛИ НЕ двигается – выключаем звук шагов
      • Если персонаж был в воздухе, а потом оказался на земле – проигрываем звук приземления
      • Если персонаж был на земле, а потом оказался в воздухе – проигрываем звук прыжка

      5. Магнитуда вектора – это длина вектора. Зачем? Скорость это трехкомпонентный вектор (X,Y,Z). Его длинна – скорость в метрах/секунду. В нашем случае нам просто нужно узнать двигается ли персонаж, т.е. если магнитуда вектора скорости больше нуля – то персонаж двигается.

      Заключение

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

      Но, на деле, именно правильное звуковое сопровождение создает эффект «присутствия» и «погружения» в игру, а это, как известно, очень важно.

      Обучение основам звуков в Unity

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

      UnitySound-feature

      Версия

      Примечание: это руководство адаптировано для Unity 2018.

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

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

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

      В этом уроке вы узнаете:

      • В чем разница между AudioClips и AudioSources;
      • Как настроить различные свойства 3D-звуков;
      • Воспроизводить звуки в программе.

      Это урок предназначен для начинающих, но вы должны уже быть знакомы с интерфейсом Unity, чтобы работать с ним. Если вы новичок в Unity или вам необходимо освежить в памяти базовые знания, ознакомьтесь с руководством «Введение в Unity».

      Примечание: вам нужно будет установить Blender, чтобы открыть проект, вы можете это скачать его здесь.

      Введение

      Вы можете скачать необходимые для создания проекта материалы в начале этой страницы. После этого откройте проект в Unity (минимальная версия 2018.2.10f1).

      Для начала откройте главную сцену в папке AssetsRWScenes и нажмите кнопку Play.

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

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

      Добавление первых звуковых эффектов

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

      В проекте уже созданы префабы для каждого животного. В окне проекта откройте окно AssetsRWPrefabs и выберите префаб коровы.

      Примечание: вы никогда не слышали о префабах? Почитайте урок, который называется Введение в Unity, чтобы освоиться.

      Первое, что потребуется для данного префаба — это компонент AudioSource для воспроизведения звука. Находясь в окне Inspector нажмите кнопку «Add Component» и введите в поле «Audio Source». Затем выберите появившуюся опцию Audio Source, как показано на изображении ниже:

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

      Но что же такое AudioSource и чем он отличается от AudioClip?

      Как в Unity работают звуковые эффекты

      Для воспроизведения звуков в Unity вы будете использовать функции AudioSource и AudioClip.

      AudioSource — это то, что фактически воспроизводит звук в 2D или 3D пространстве. В трехмерном пространстве громкость звука может варьироваться в зависимости от того, насколько далеко AudioSource находится от объекта, который его должен слышать (AudioListener, который в этой игре находится непосредственно на камере).

      Вы можете настроить AudioSource для воспроизведения звука в 2D-пространстве по своему усмотрению, что означает, что он может воспроизводиться на постоянной громкости независимо от расстояния до AudioListener.

      AudioClip — это аудиофайл, который AudioSource будет воспроизводить.

      Важно отметить, что AudioSource при этом является компонентом. Это означает, что это объект, который унаследован от класса Unity MonoBehaviour и он может быть присоединен непосредственно к любому объекту типа Unity GameObject.

      При этом AudioClip является переменной, которая может быть установлена в AudioSource (то есть каждый AudioSource может иметь один AudioClip). Вы можете прикреплять компоненты через редактор Unity или использовать для этой цели специальный код. В этом уроке вы будете использовать только редактор.

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

      Примечание: Если вам интересно узнать, как работают триггеры, обратитесь к уроку, который называется Физическая система Unity.

      Добавление аудиоклипов

      Откройте папку AssetsRWSounds в окне «Project» и найдите звуковой файл moo. Убедитесь в том, что в Инспекторе все еще выделен префаб коровы и перетащите звуковой файл moo на аудиоклип (AudioClip).

      Убедитесь, что Play On Awake включен.

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

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

      1. Выделите префаб барана и находясь в окне Inspector нажмите кнопку «Add Component». Теперь вам нужно выбрать компонент AudioSource в категории Audio.
      2. Перетащите звуковой файл baa в поле AudioClip.
      3. Убедитесь, что флажок Play On Awake установлен.
      4. Выделите префаб свиньи и находясь в окне Inspector нажмите кнопку «Add Component». Вам также нужно выбрать компонент AudioSource в категории Audio.
      5. Перетащите звуковой файл oink в поле AudioClip.
      6. Убедитесь, что флажок Play On Awake установлен.

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

      Звук не воспроизводится?

      AudioSource может воспроизводить самые разные форматы файлов, включая распространенные форматы .mp3 и .wav. Если у вас случится ситуация, что ваш звуковой файл не воспроизводится, сначала проверьте, поддерживается ли формат этого файла.

      Примечание: При выборе формата звука, который вы хотите использовать, лучше всего выбирать файлы без потери качества звука, такие как .ogg или .wav.

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

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

      1. Не установлена ли слишком низкая громкость? Проверьте уровень громкости на каждом из AudioSources.

      1. Не отключили ли вы компонент AudioSource? Если компонент отключен, то соответственно он не будет воспроизводить звук.

      1. Проверьте стоит ли флажок Play On Awake. Звук будет воспроизводиться в том же кадре, в котором создан объект.

      Настройка звуков

      Пока что все выглядит отлично — все животные издают звуки, когда летят к сараю, однако до сих пор не хватает нескольких важных вещей:

      • Тракторы не издают никаких звуков.
      • Нет звука победы, когда животное успешно добирается до сарая.
      • Нет звука неудачи, когда животное попадает под трактор.

      Добавление этих звуков придаст этой игре завершенности.

      Добавление звуков трактора

      Чтобы добавить жужжащий звук к тракторам при их движении вперед и назад, сначала удерживайте Cntrl (на ПК) или Command (на Mac) и выберите все три трактора в окне Hierarchy. Теперь вам нужно добавить AudioSource и звук трактора аналогичным образом, как вы это делали для озвучки животных. Не забудьте проверить чтобы Play On Awake был отмечен.

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

      Конечно замечательно, что у всех тракторов есть звук, но их сложно различить, к тому же эти звуки заглушают все остальное и немного нервируют своей громкостью.

      Как упоминалось ранее, 3D-звуки могут воспроизводиться с уменьшением громкости, чем дальше AudioListener (в этой игре он находится на камере) от AudioSource. Добавление эффекта спада (чем дальше тракторы от камеры, тем они тише) сделает их звучание намного лучше.

      Нажмите на трактор в Hierarchy и в окне Inspector найдите компонент AudioSource. Там будет выпадающая область под названием 3D Sound Settings. Здесь вы можете установить параметры Doppler Level, а также значения для переменных Rolloff и Distance.

      Doppler Level — это интенсивность звука, которая может быть изменена. Rolloff Level — это то, насколько громкость уменьшается, в зависимости от того, насколько дальше находится источник от AudioListener.

      Сейчас у вас должен быть выбран ближайший к игроку трактор, поэтому его звук должен быть более громким, чем у двух других. Установите для параметра Volume Rolloff значение Linear Rolloff, что сделает эффект более выраженным. Затем установите значение для Min Distance = 1 и Max Distance = 9. Doppler Level должен быть равен 0,68.

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

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

      Чтобы уменьшить интенсивность звука задних тракторов нужно:

      1. Выбрать tractor2 в Иерархии.
      2. Установить для параметра Volume Rolloff значение Linear Rolloff.
      3. Установить значение для Min Distance = 1 и Max Distance = 30.
      4. Doppler Level должен быть равен 0,68.
      5. Выбрать tractor3 в Иерархии в иерархии и установить для параметра «Volume Rolloff» значение «Linear Rolloff».
      6. Установить значение для Min Distance = 1 и Max Distance = 50.
      7. Doppler Level должен быть равен 0,68.

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

      Однако тарахтение тракторов по-прежнему звучит слишком громко, особенно когда они едут одновременно. Чтобы это исправить установите ползунок громкости на их AudioSource = 0,4.

      Если вы будете играть в эту игру более 40 секунд, то заметите, что звуки трактора отключаются спустя это время. Это происходит потому, что их AudioSource не был установлен на определенный цикл. Чтобы это изменить, установите флажок «Loop» для каждого компонента AudioComponent каждого трактора.

      Добавление звуков ударов

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

      Для начала вам необходимо прикрепить AudioClip звука смерти к компоненту «Tractor». Для этого:

      1. Нажмите Cntrl (на ПК) или Command (на Mac) и в меню Hierarchy выберите сразу три трактора.
      2. Теперь выберите три объекта GameObject для трактора и отметьте галочкой поле «Death Sound» компонента «Tractor» в Инспекторе.
      3. Далее вам нужно выбрать звуковой файл смерти из всплывающего окна «Select Audio Clip», как показано ниже.

      Чтобы кодировать звук смерти животного, начните с двойного щелчка на скрипте TractorC#, чтобы открыть его в редакторе (находится в папке Assets\RW\Scripts). Перед закрывающей скобкой if добавьте следующий код:

      Нажмите Control-S (на ПК) или Command-S (на Mac), чтобы сохранить изменения в коде.

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

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

      Добавление звука удачного попадания

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

      1. Выбрать в меню Hierarchy сарай.
      2. В Инспекторе добавить к нему компонент AudioSource.
      3. Перетащить звук победы из AssetsRWSounds в поле AudioClip.

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

      Дважды щелкните по скрипту Barn в разделе AssetsRWScripts.

      Под открывающей скобкой if добавьте следующее:

      Конечный результат должен выглядеть так:

      Последние штрихи: различные звуковые эффекты

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

      Для этого откройте скрипт AnimalC# в папке Scripts и добавьте следующие данные прямо под public bool isDead = false:

      Этот код выбирает компонент AudioSource и устанавливает переменную основного тона в случайное значение между 0,8 и 1,5. Теперь нажмите Play и попробуйте запустить животных. Их звуки будут каждый раз разными.

      Что делать дальше?

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

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *