3D での AudioSource の表現
An AudioSource is attached to a GameObject for playing back sounds in a 3D environment.
In order to play 3D sounds you also need to have a AudioListener.
The audio listener is normally attached to the camera you want to use.
Whether sounds are played in 3D or 2D is determined by AudioImporter settings.
You can play a single audio clip using Play, Pause and Stop.
You can also adjust its volume while playing using the volume property, or seek using time.
Multiple sounds can be played on one AudioSource using PlayOneShot.
You can play a clip at a static position in 3D space using PlayClipAtPoint.
See Also: AudioListener, AudioClip, AudioSource component.
//This script allows you to toggle music to play and stop. //Assign an AudioSource to a GameObject and attach an Audio Clip in the Audio Source. Attach this script to the GameObject.
using UnityEngine;
public class Example : MonoBehaviour { AudioSource m_MyAudioSource;
//Play the music bool m_Play; //Detect when you use the toggle, ensures music isn’t played multiple times bool m_ToggleChange;
void Start() { //Fetch the AudioSource from the GameObject m_MyAudioSource = GetComponent<AudioSource>(); //Ensure the toggle is set to true for the music to play at start-up m_Play = true; }
void Update() { //Check to see if you just set the toggle to positive if (m_Play == true && m_ToggleChange == true) { //Play the audio you attach to the AudioSource component m_MyAudioSource.Play(); //Ensure audio doesn’t play more than once m_ToggleChange = false; } //Check if you just set the toggle to false if (m_Play == false && m_ToggleChange == true) { //Stop the audio m_MyAudioSource.Stop(); //Ensure audio doesn’t play more than once m_ToggleChange = false; } }
void OnGUI() { //Switch this toggle to activate and deactivate the parent GameObject m_Play = GUI.Toggle(new Rect(10, 10, 100, 30), m_Play, "Play Music");
//Detect if there is a change with the toggle if (GUI.changed) { //Change to true to show that there was just a change in the toggle state m_ToggleChange = true; } } }
bypassEffects | Bypass エフェクト (フィルターコンポーネントやグローバルリスナーのフィルターから適用) |
bypassListenerEffects | AudioListener にグローバルエフェクトを設定するときは AudioSource によって生成されたオーディオ信号には適用されません。ミキサーグループで AudioSource を再生している場合は適用されません。 |
bypassReverbZones | 設定されているとき Reverb Zone に関連付けられているグローバルリバーブに AudioSource からの信号をルーティングしません。 |
clip | 再生するデフォルトの AudioClip |
dopplerLevel | この AudioSource のドップラースケールを設定します。 |
gamepadSpeakerOutputType | Gets or sets the gamepad audio output type for this audio source. |
ignoreListenerPause | AudioListener.pause が True に設定されていても AudioSource は再生することができます。これはメニューエレメントの音や一時停止メニューでの BGM に便利です。 |
ignoreListenerVolume | これにより AudioSource は AudioListener の音量を考慮しません。 |
isPlaying | 今、 ::Ref::clip を再生しているか(Read Only) |
isVirtual | AudioSource によって再生されるすべてのサウンド (OneShot 同様、Play() か playOnAwake で開始された主サウンド) がオーディオシステムによって選択されているならば true。 |
loop | オーディオクリップをループしているか。 |
maxDistance | ( Logarithmic Rolloff ) MaxDistance は音が減衰を停止する距離です。 |
minDistance | MinDistance 内にある AudioSource はボリュームで大きくならなくなります。 |
mute | UnMute と Mute 、 AudioSource 。 Mute は Volume = 0 に設定し、 UnMute は元のボリュームの値に戻します。 |
outputAudioMixerGroup | AudioSource がその信号をルーティングする必要があるターゲットグループ |
panStereo | ステレオ(の左か右) で再生音をパンします。これはモノラルかステレオサウンドにのみ適用されます。 |
pitch | AudioSource の Pitch |
playOnAwake | True に設定した場合、 AudioSource は自動的に Play On Awake を開始します。 |
priority | AudioSource の優先順位を設定します。 |
reverbZoneMix | Reverb Zone に関連付けられているグローバルリバーブにミックスされる AudioSource からの信号の量 |
rolloffMode | AudioSource が距離とともにどのように減衰するかを設定し取得します。 |
spatialBlend | この AudioSource は 3D 立体化の計算(減衰やドップラーなど) によってどのくらい影響を受けるか設定します。 0.0 は音を完全に 2D にし、1.0 は完全に 3D になります。 |
spatialize | 空間化を有効か無効にします。 |
spatializePostEffects | Determines if the spatializer effect is inserted before or after the effect filters. |
spread | 3D ステレオが広がる角度 (度単位)かスピーカー空間のマルチチャンネルを設定します。 |
time | 秒単位での再生位置 |
timeSamples | PCM サンプルの再生位置 |
velocityUpdateMode | AudioSource を固定して変更するか動的に更新するか。 |
volume | AudioSource の音量 ( 0.0 から 1.0 ) |
DisableGamepadOutput | Disables audio output to a gamepad for this audio source. |
GetAmbisonicDecoderFloat | Reads a user-defined parameter of a custom ambisonic decoder effect that is attached to an AudioSource. |
GetCustomCurve | 指定された AudioSourceCurveType のために現在のカスタムの Curve を取得します。 |
GetOutputData | 現在再生されているソースの出力データのブロックを提供します。 |
GetSpatializerFloat | AudioSource にアタッチされているカスタム Spatializer エフェクトのユーザー定義パラメーターを読み出します。 |
GetSpectrumData | 現在再生されている Audio source のスペクトラムデータのブロックを提供します。 |
Pause | clip の再生を一時停止します。 |
Play | Plays the clip. |
PlayDelayed | 秒単位で指定した遅延で ref::clip を再生します。ユーザーは引数を 44.1 kHz のサンプリングレートを基準にして遅延時間を指定する古い Play(delay) 関数ではなくこの関数を使用することをお勧めします。 |
PlayOneShot | AudioClip を再生し、volumeScale で AudioSource 音量をスケールします。 |
PlayOnGamepad | Enable playing of audio source though a specfic gamepad. |
PlayScheduled | 絶対タイムライン上から AudioSettings.dspTime が読み取った特定の時間に clip を再生します。 |
SetAmbisonicDecoderFloat | Sets a user-defined parameter of a custom ambisonic decoder effect that is attached to an AudioSource. |
SetCustomCurve | 指定された AudioSourceCurveType のカスタムの Curve を設定します。 |
SetScheduledEndTime | スケジュールされているサウンドの再生を終了する時間を変更します。タイミングによってすべてのスケジュール変更要求が満たされるわけではないことに注意してください。 |
SetScheduledStartTime | すでに再生する予定だったサウンドを開始する時間を変更します。 |
SetSpatializerFloat | AudioSource にアタッチされているカスタム Spatializer エフェクトのユーザー定義パラメーターを設定します。 |
Stop | clip の再生を停止します。 |
UnPause | この AudioSource の再生の一時停止を解除します。 |
GamepadSpeakerSupportsOutputType | Check if the platform supports an audio output type on gamepads. |
PlayClipAtPoint | ワールド空間内の指定された位置で AudioClip を再生します。 |
enabled | 有効であれば更新され、無効であれば更新されません。 |
isActiveAndEnabled | Has the Behaviour had active and enabled called? |
gameObject | このコンポーネントはゲームオブジェクトにアタッチされます。コンポーネントはいつもゲームオブジェクトにアタッチされています。 |
tag | ゲームオブジェクトのタグ |
transform | The Transform attached to this GameObject. |
hideFlags | Should the object be hidden, saved with the Scene or modifiable by the user? |
name | オブジェクト名 |
BroadcastMessage | ゲームオブジェクトまたは子オブジェクトにあるすべての MonoBehaviour を継承したクラスにある methodName 名のメソッドを呼び出します。 |
CompareTag | このゲームオブジェクトは tag とタグ付けされているかどうか |
GetComponent | Returns the component of Type type if the GameObject has one attached, null if it doesn't. Will also return disabled components. |
GetComponentInChildren | GameObject や深さ優先探索を活用して、親子関係にある子オブジェクトから type のタイプのコンポーネントを取得します。 |
GetComponentInParent | GameObject や深さ優先探索を活用して、親子関係にある親オブジェクトから type のタイプのコンポーネントを取得します。 |
GetComponents | GameObject から type のタイプのコンポーネントを「すべて」取得します。 |
GetComponentsInChildren | Returns all components of Type type in the GameObject or any of its children. Works recursively. |
GetComponentsInParent | GameObject や深さ優先探索を活用して、親子関係にある親オブジェクトから type のタイプのコンポーネントを「すべて」取得します。 |
SendMessage | ゲームオブジェクトにアタッチされているすべての MonoBehaviour にある methodName と名付けたメソッドを呼び出します |
SendMessageUpwards | ゲームオブジェクトと親(の親、さらに親 ... )にアタッチされているすべての MonoBehaviour にある methodName と名付けたメソッドを呼び出します |
TryGetComponent | Gets the component of the specified type, if it exists. |
GetInstanceID | Gets the instance ID of the object. |
ToString | Returns the name of the object. |
Destroy | Removes a GameObject, component or asset. |
DestroyImmediate | Destroys the object obj immediately. You are strongly recommended to use Destroy instead. |
DontDestroyOnLoad | Do not destroy the target Object when loading a new Scene. |
FindObjectOfType | タイプ type から最初に見つけたアクティブのオブジェクトを返します |
FindObjectsOfType | Gets a list of all loaded objects of Type type. |
Instantiate | original のオブジェクトをクローンします |
bool | オブジェクトが存在するかどうか |
operator != | 二つのオブジェクトが異なるオブジェクトを参照しているか比較します |
operator == | 2つのオブジェクト参照が同じオブジェクトを参照しているか比較します。 |