我正在尝试在unity3d中的2个点之间移动一个对象,似乎这个主题有很多答案,但我总是得到一个错误,当我试图解决这个问题时我不知道如何解决,所以实际上我试着这样做:
void Update () {
transform.position = Vector3(Mathf.PingPong(Time.time,10.0f), transform.position.y, transform.position.z);
}
我收到此错误:
Assets / PingPong.cs(7,38):错误CS0119:表达式表示
type
,其中预计有variable
,value
或method group
我做错了什么?我是初学者需要一些帮助:/
答案 0 :(得分:1)
要创建包含x,y和z值的Vector3
,您必须使用new
关键字。
transform.position = new Vector3(Mathf.PingPong(Time.time, 10.0f), transform.position.y, transform.position.z);
一个例外是使用静态Vector3
函数返回预定义的Vector3
值,例如Vector3.zero
,Vector3.back
和其他值。
Vector3
是struct
数据类型。您可以了解在创建新的Vector3(struct)here时需要使用new
关键字的原因。