Unity 6.3
0 онлайн 39 гостей 3 в системе
Вход

AudioSource.pitch

Declaration

public float pitch;

Описание

Высота источника звука.

Интенсивность делает мелодию выше или ниже. Например, если вы проигрываете аудиоклип с установленной интонацией 1, увеличение интонации при проигрывании клипа сделает клипы звучащие выше. Аналогичным образом, уменьшение интонации ниже 1 сделает клипы звучащие ниже. Когда resource является AudioClip, свойство интонации зажимается в диапазоне [-3..3]. Когда resource является AudioRandomContainer, свойство интонации игнорируется, и если оно не находится в диапазоне [0.0001..3.0], в консоли появляется предупреждение. Это происходит потому, что AudioRandomContainer не поддерживает обратное/паузовое воспроизведение от интонации. Любые значения вне этого диапазона зажимаются при изменении из AudioClip в AudioRandomContainer.

//Attach this script to a GameObject.
//Attach an AudioSource to your GameObject (Click Add Component and go to Audio>Audio Source). Choose an audio clip in the AudioClip field.
//This script sets the pitch of the audio at the start, and then gradually turns it down to 0 as time passes.

using UnityEngine;

//Make sure there is an Audio Source component on the GameObject [RequireComponent(typeof(AudioSource))]

public class ExampleScript : MonoBehaviour { public int startingPitch = 4; public int timeToDecrease = 5; AudioSource audioSource;

void Start() { //Fetch the AudioSource from the GameObject audioSource = GetComponent<AudioSource>();

//Initialize the pitch audioSource.pitch = startingPitch; }

void Update() { //While the pitch is over 0, decrease it as time passes. if (audioSource.pitch > 0) { audioSource.pitch -= Time.deltaTime * startingPitch / timeToDecrease; } } }

Еще один пример:

using UnityEngine;

// A script that plays your chosen song. The pitch starts at 1.0. // You can increase and decrease the pitch and hear the change // that is made.

public class AudioExample : MonoBehaviour { public float pitchValue = 1.0f; public AudioClip mySong;

private AudioSource audioSource; private float low = 0.75f; private float high = 1.25f;

void Awake() { audioSource = GetComponent<AudioSource>(); audioSource.clip = mySong; audioSource.loop = true; }

void OnGUI() { pitchValue = GUI.HorizontalSlider(new Rect(25, 75, 100, 30), pitchValue, low, high); audioSource.pitch = pitchValue; } }