我正在玩一些Unity代码以扩大视野。
我有以下代码,该代码从角色发射的子弹以“ this.angle”设置的方向飞行,“ this.angle”是枪指向目标的角度。
我要完成的工作是使子弹离开枪支并向右旋转360度,并从后面射击玩家(实际上是枪支)。
我还没有完全理解四分之一,但是我认为我不需要解决这个问题。
有人可以给我指点吗?
base.transform.rotation = Quaternion.Euler(0f, Mathf.MoveTowardsAngle(base.transform.rotation.eulerAngles.y, this.angle, 9.3f * Time.deltaTime), 0f);
Vector3 cposition = base.transform.position;
base.transform.position = Vector3.MoveTowards(base.transform.position, cposition, Time.deltaTime * 2f);
this.pos.set(base.transform.position);
this.rot.set(base.transform.rotation);
答案 0 :(得分:1)
好的,如果您想坚持自己的原始想法,可以这样做:
项目符号代码
void Update(){
transform.Rotate(degTurnRate, 0, 0);
transform.position += transform.forward * Time.deltaTime * bulletSpeed
}
答案 1 :(得分:0)
如果您仅使用Transform.RotateAround,则可以使代码简单得多 这样一来,您就可以将对象绕指定目标旋转任意轴上的x量。