unity3d - unity AudioSource.Play 有噪音
问题描述
我有多个带有 AudioSource 组件的钢琴键,如果我反复按一个键,声音会以原始声音剪辑中没有的滴答声开始。
我尝试更改音频剪辑并将多普勒因子设置为 0,但没有任何效果。
我可以通过在播放时实例化键来管理它,现在噪音消失了,但是如果我通过将手指移到它们上来播放多个键,我会得到“Hall Reverb”效果,而且它也有点贵。
if (go.GetComponent<AudioSource>().isPlaying)
{
AudioSource Note = Instantiate(go.GetComponent<AudioSource>(), Clones);
Note.GetComponent<SpriteRenderer>().enabled = false;
Note.GetComponent<BoxCollider>().enabled = false;
Note.Play();
Destroy(Note.gameObject, 2);
}
else
{
go.GetComponent<AudioSource>().Play();
}
我尝试了 PlayOneShot(),它的效果与上面的代码完全相同。
你可以帮帮我吗?我正在使用 Unity 2018.2.14f1。
解决方案
如果我错了,请纠正我,但在我看来,你想播放一个音符,即使你的音频源已经在播放。
您可以在某一点播放音频剪辑,而不是复制现有的游戏对象(这很容易出错,而是使用预制件)。
AudioSource.PlayClipAtPoint(clip, transform.position);
您需要在脚本中添加一个将目标剪辑接收到的公共变量。
推荐阅读
- firefox - 如何在谷歌开发者控制台中将firefox扩展redirect_uri列入白名单
- git - 永久删除 git 存储库及其所有没有项目 ID 的内容
- stored-procedures - 将 DateTime 参数发送到链接服务器存储过程
- bash - 如何添加自定义路径:“ls -d */”
- amazon-web-services - 微服务架构 - 独立服务器服务还是在同一台服务器上?
- javascript - Javascript“for in”无法获取嵌套对象(非标准键标识符)
- webpack - 需要 Babel "^7.0.0-0" 但在 CI 服务器上测试时加载了 "6.26.3"
- google-maps-api-3 - 如何在不应用图像或图标的标记上应用自定义 CSS 样式
- javascript - 更新查询中的 MongoDB $graphLookup
- java - 我想使用 Android KeyChain 来存储公钥和私钥