C# 统一音频
当我试图运行我的(悲伤的借口)游戏时,我在unity中遇到了这个奇怪的错误。这是密码C# 统一音频,c#,unity3d,audio-source,audioclip,C#,Unity3d,Audio Source,Audioclip,当我试图运行我的(悲伤的借口)游戏时,我在unity中遇到了这个奇怪的错误。这是密码 using System.Collections; using System.Collections.Generic; using UnityEngine; public class ARsound : MonoBehaviour { public static AudioClip sound; static AudioSource audioSrc; void Start()
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ARsound : MonoBehaviour
{
public static AudioClip sound;
static AudioSource audioSrc;
void Start()
{
sound = Resources.Load<AudioClip>("AR SFX");
audioSrc = GetComponent<AudioSource>();
}
public static void playSound()
{
audioSrc.PlayOneShot(sound);
}
}
使用系统集合;
使用System.Collections.Generic;
使用UnityEngine;
公共类ARsound:单一行为
{
公共静态音频剪辑声音;
静态声源audioSrc;
void Start()
{
声音=资源负载(“AR SFX”);
audioSrc=GetComponent();
}
公共静态无效播放声音()
{
audioSrc.PlayOneShot(声音);
}
}
错误是:
PlayOneShot使用空音频剪辑播放
即使那个音频剪辑看起来不是空的。
以下是一些附加信息:
Gun:Update()(位于Assets/Scripts/Gun.cs:17)
建议?您对
资源的调用。Load
返回null-当未找到资产时会发生这种情况(无异常)
见文件:
因此,您需要确保资产存在并且可以加载。这里没有
而循环。你的问题标题和你的问题主体是如何匹配的也一点都不清楚。while循环在哪里!!?我不是说当你在循环的时候。哦,不!这是我要问的另一个问题。现在是凌晨3点,所以我有点累了。我很抱歉。我把标题改成了我想要的。你有没有考虑过Resources.Load(“AR-SFX”)代码>失败,因此声音
是否为simpynull
?附加信息Gun:Update()(位于Assets/Scripts/Gun.cs:17)
根本没有帮助,因为我认为这正是您调用ARSound.playSound()的地方代码>…我想出来了!我做的有点不同。首先我声明了两个音频源公共音频源shootSound;公共声源然后,我做了shootSound=GetComponent();shootFastSound=GetComponent()代码>最后,我做了``private void ShootFast(){shootFastSound.Play();//其他代码}