Unity3D 2D Сброс положения 2D-объекта

У меня есть приведенный ниже скрипт, прикрепленный к объекту. Когда он попадает в левую или правую стену, я хочу центрировать объект, но, похоже, он не сбрасывает положение.

Я вижу «ударить по стене» в окне отладки.

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;
}
}

person Tsukasa    schedule 21.01.2014    source источник


Ответы (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

person Chris Zhang    schedule 21.01.2014