現在、私は8秒間のオーディオクリップを持っています。しかし、私は、特定のことが起こったときにそれを止めることができるようにしたい。このような何か:PlayOneShotの使用時にオーディオを停止する方法
private AudioSource soundPlayer2D;
private AudioClip sound;
void Start(){
GameObject new2DsoundPlayer = new GameObject ("2DSoundPlayer");
soundPlayer2D = new2DsoundPlayer.AddComponent<AudioSource>();
new2DsoundPlayer.transform.parent = transform;
}
void Update() {
if(shouldPlayAudio){
soundPlayer2D.PlayOneShot (sound, fxVolumePercentage * allVolumePercentage);
} else if(shouldStopAudio){
//Stop Audio <--
}
}
編集1:私は、特定のオーディオクリップを停止したいと注意していないオーディオソースがPlayOneShot
が使用されていない停止オーディオすることができます
[SoundPlayer2D.Stop()](https://docs.unity3d.com/ScriptReference/AudioSource.Stop.html)?また、標準の命名規則に従うために、そのプロパティの名前を 'soundPlayer2D'に変更する必要があります(クラス名は最初の大文字で始まります。あるいは、プロパティのメソッド呼び出しはクラスへの静的な参照のように見えます)。 – Draco18s
しかし、これはSoundPlayer2Dで再生されているすべてのオーディオを停止するでしょうか?そして、SoundPlayer2Dで別のサウンドを再生したいとき、前のサウンドはSoundPlayer2D @ Draco18sを再開するときに再生を終了します。 – RaZ
は@ typo @ Draco18s – RaZ