🔊

【Unity】音量をクリップ毎に変える方法

2021/04/25に公開

スクリプトで再生する直前に音量を変更するやり方です。

public AudioSource ausi,audi2;
public AudioClip ac,ac2
[Range(0f, 1f)]
public float bgmVolume,seVolume;

audi.volume= bgmVolume;
audi.PlayOneShott(ac, 0.7F);

audi.volume= seVolume;
audi.PlayOneShott(ac2, 0.7F);

こいつのデメリットは別々の音を二つ同時再生すると音量がどちらかが違ってしまうという点です。そこでAudioSourceを増やして複数のAudioSourceを扱って再生します。

ただやり方としてスマートではない気がしますが他に方法が見当たりませんでした。以下をEditorに追加するとプレイ中に音量変更してプレイ後適用できます。

https://gist.github.com/kankikuchi/08dd7139265d81152bde1e4b6e74ad68#file-persistentamongplaymodeattribute-cs

Discussion