这真的不应该那么困难,但我似乎无法在剧本中播放声音。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class State1 : State {
AudioClip clip = new AudioClip();
public override void initialize(){
Debug.Log ("StateRemoveBolts.initialize()");
clip = Resources.Load<AudioClip>("Sounds/my_sound");
AudioSource.PlayClipAtPoint (clip, Vector3(0));
}
public override void destroy(){}
public override void update(StateMachine sm){}
}
我收到此错误:
错误CS0119:表达式表示
type', where a
变量',value' or
方法组'是预期的
答案 0 :(得分:3)
Vector3(0)
不是有效代码。
你要么:
Vector3.Zero
用于引用零向量(如执行Math.PI
)或者
new Vector3(0,0,0)
创建一个答案 1 :(得分:1)
正如Draco所说,Vector3(0)
无效,Vector3(0, 0, 0)
也无效。
你想要的是使用new
关键字,否则,Unity会认为你想要一个变量类型,当它需要一个实际的变量或值时。
如果你取出(0)
,你会得到同样的错误,所以你在括号中放的是无关紧要的,你也需要使用new
关键字,它告诉编译器调用Vector3构造函数。
由于看起来你想要全部为零,我会做Vector3.Zero
。