我将以下脚本附加到对象上。 当它撞到左侧或右侧墙壁时,我想重新定位对象,但它似乎没有重置位置。
我确实在调试窗口中看到了“撞墙”。
function OnTriggerEnter2D (hitInfo : Collider2D)
{
var hitSide : boolean = false;
if (hitInfo.name == "leftWall")
{
hitSide = true;
}
else if (hitInfo.name == "rightWall")
{
hitSide = true;
}
if (hitSide)
{
Debug.Log("Hit wall");
transform.position.x = Screen.width /2;
transform.position.y = Screen.height / 2;
}
}
答案 0 :(得分:1)
您是否了解Unity Answers,这是一个与此类似的论坛网站?我不确定Screen.width / 2的行为.Screen.width只是屏幕宽度单位的计数。将其设置到此位置会告诉坐标系使用这些单位中的一半作为x坐标。根据您相机的当前位置和其他因素,这不是实现此目的的理想方式。 http://answers.unity3d.com/questions/466665/placing-a-gameobject-in-the-exact-center-of-the-ca.html