使用音频管理器的基本脚本,但出现错误,不确定发生了什么事
尝试使用系统;而是相同的问题。
using UnityEngine;
[System.Serializable]
public class Sound {
public string name;
public AudioClip clip;
private AudioSource source;
public float volume = 0.7;
public float pitch = 1f;
public void SetSource (AudioSource _source) {
source = _source;
source.clip = clip;
}
public void Play () {
source.volume = volume;
source.pitch = pitch;
source.Play();
}
}
public class AudioManager : MonoBehaviour
{
[SerializedField]
Source[] sounds;
}
我希望这会将字段添加到我正在构建的“音频管理器”中
答案 0 :(得分:1)
您的错误与此有关:https://docs.unity3d.com/ScriptReference/SerializeField.html
哪个属性应该位于UnityEngine命名空间(程序集UnityEngine.CoreModule)中,并且存在于Unity的多个版本中(因此,由于版本之间的API更改,这似乎不成问题)。
还,您写得正确吗?我在错误消息中注意到“ SerializedField”而不是“ SerializeField”,这看起来很奇怪。您应该再看一遍。
您确定已为Unity安装了所有运行时,所有必需的“使用”和程序集引用以及所有工具(Visual Studio)是最新的吗?
答案 1 :(得分:0)
应该是[SerializeField],我有[Serialize d Field]。
对不起!感谢您对AFract的回复。