teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

ソースを追記

2018/05/25 10:07

投稿

fiveHundred
fiveHundred

スコア10450

answer CHANGED
@@ -1,1 +1,33 @@
1
- Start()で、[AudioMixer.GetFloat()](https://docs.unity3d.com/ja/current/ScriptReference/Audio.AudioMixer.GetFloat.html)で取得した値を[Slider.value](https://docs.unity3d.com/ja/current/ScriptReference/UI.Slider-value.html)に代入すればよろしいと思います。
1
+ Start()で、[AudioMixer.GetFloat()](https://docs.unity3d.com/ja/current/ScriptReference/Audio.AudioMixer.GetFloat.html)で取得した値を[Slider.value](https://docs.unity3d.com/ja/current/ScriptReference/UI.Slider-value.html)に代入すればよろしいと思います。
2
+
3
+ ---
4
+
5
+ 追記:
6
+
7
+ ```C#
8
+ public class VolumeBGM : MonoBehaviour
9
+ {
10
+
11
+ public UnityEngine.Audio.AudioMixer mixer;
12
+
13
+ // インスペクター上からスライダーのオブジェクトを登録
14
+ public Slider targetSlider;
15
+
16
+ void Start()
17
+ {
18
+ float volume;
19
+
20
+ // mixer.GetFloat()の値は、volumeに代入される
21
+ // 返り値は、パラメーターが存在しない場合にfalseになるといった具合
22
+ if (mixer.GetFloat("BGM", out volume))
23
+ {
24
+ targetSlider.value = volume;
25
+ }
26
+ }
27
+
28
+ public void masterVol(Slider slider)
29
+ {
30
+ mixer.SetFloat("BGM", slider.value);
31
+ }
32
+ }
33
+ ```