【发布时间】:2016-12-09 03:00:00
【问题描述】:
我在屏幕底部有一个玩家,在屏幕顶部有一个敌人。我希望它们都不断地相互旋转。这是我的代码:
void Update ()
{
Vector3 diff = target.position - transform.position;
diff.Normalize();
float zRotation = Mathf.Atan2(diff.y, diff.x) * Mathf.Rad2Deg;
Vector3 lookDirection = new Vector3(0, 0, zRotation - 90);
transform.rotation = Quaternion.Euler(lookDirection);
}
在这种状态下,玩家的行为与预期一样,但敌人总是从玩家身边旋转,这意味着他在玩家所在的位置向上而不是向下看。
如果我像这样切换diff 向量:
Vector3 diff = transform.position - target.position;
然后是玩家将目光从敌人身上移开。 两个精灵在编辑器中的旋转和缩放值都为 0。
这里有什么问题?
【问题讨论】: