【问题标题】:Changing AudioSource volume更改 AudioSource 音量
【发布时间】:2016-01-16 00:22:31
【问题描述】:

我正在尝试更改我的 AudioSource GameObject 音量,正如文档所说,它只是 myAudioSourceGameObject.volume = 0.5f

但是,在我的脚本中,我无法访问任何名为 volume 的字段。

那么你应该如何通过代码更改AudioSource 的音量?

【问题讨论】:

  • 当你写myAudioSourceGameObject.volume = 0.5f时你得到一个编译错误或者你编译正常但没有任何反应?
  • @user2320445 我什至没有选择volume 字段的选项。
  • 这可能是 ide 的一些问题,只需编写代码并编译它,看看它是否给出错误
  • @user2320445 GameObject 不包含 'volume' 的定义,而不是扩展方法 'volume' 可以找到接受类型为 'GameObject' 的第一个参数(您是否缺少 using 指令或程序集引用)
  • @user2320445 我不需要为该语句使用一些库?

标签: c# audio unity3d unityscript


【解决方案1】:

制作音频源

AudioSource asour;

分配它,然后改变它

asour.volume = 0.5f;

【讨论】:

  • 做到了。但是如何将 Gameobject AudioSource 从统一连接到脚本?
  • 将音频源拖放到检查器中
  • 也这样做了。但是脚本如何知道我使用的是哪个AudioSource
  • 我只是 - GameObject- Audio - AudioSource - 将音频资产附加到 AudioSource AudioClip。脚本如何知道我指的是这个 GameObject。它没有。
  • 您的脚本在检查器中公开了一个字段,名为我们从检查器中获取音频源并将其放入该字段
【解决方案2】:

好的,我明白了。

public GameObject go = GameObject.Find("MyGameObjectAudioSource");
void Update()
{
     go.GetComponent<AudioSource>().volume = 0.5f;
}

感谢大家的帮助。

【讨论】:

  • 不要忘记您可以接受自己的答案 - 这样,它会向其他人发出问题已解决的信号。
【解决方案3】:
public gameobject MainCamera;

MainCamera.GetComponent<AudioSource>().volume = 0.7f;

这里 MainCamera 被称为 GameObject...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多