Я делаю 2d-платформенную игру. Я использовал элемент пользовательского интерфейса для съемки, и персонаж движется, прикоснувшись к экрану.Unity Touch и UI Element работают вместе
Так, чтобы переместить символ
void Update()
{
if (Input.touches.Length>0) {
Touch firstTouch = Input.GetTouch (0);
if (firstTouch.phase == TouchPhase.Began) {
if (firstTouch.position.x > ScreenCenterX) {
sagHareketBasili();//Move Right
}
if (firstTouch.position.x < ScreenCenterX) {
solHareketBasili();//Move Left
}
} else
sagHareketBasiliDegil();//Stop
solHareketBasiliDegil();//Stop
}
}
}
Так что я сделал некоторые исследования в Интернете. И я изменил свой код как
void Update()
{
if (Input.touches.Length>0) {
if (!EventSystem.current.IsPointerOverGameObject()) {
Touch firstTouch = Input.GetTouch (0);
if (firstTouch.phase == TouchPhase.Began) {
if (firstTouch.position.x > ScreenCenterX) {
sagHareketBasili();
}
if (firstTouch.position.x < ScreenCenterX) {
solHareketBasili();
}
} else if (firstTouch.phase == TouchPhase.Ended) {
sagHareketBasiliDegil();
solHareketBasiliDegil();
}
}
}
}
Кажется, проблема решена. Но нет. Во-первых, пока я касаюсь внешних элементов пользовательского интерфейса, движется символ. если я впервые касаюсь элемента пользовательского интерфейса, перемещаются символы и элементы пользовательского интерфейса (оба должны работать вместе). Если я прикасаюсь к элементу пользовательского интерфейса во второй раз, то успеваю то, что хочу (только элемент UI работает). то есть символ не перемещается, и пользовательский интерфейс работает нормально. Во-вторых, после того, как я касаюсь элемента пользовательского интерфейса, если я хочу, чтобы персонаж перемещался и касался внешнего элемента пользовательского интерфейса, при первом касании ничего не происходит, но второй и более штрих-символ начинает двигаться, как я хочу.
В элементах пользовательского интерфейса я использовал кнопки и триггеры событий.
Любая помощь по этому поводу, пожалуйста ...
Большое спасибо за ваш ответ. Я попробую его и поделись результатом. –
Я сделал ваше предложение. Оно работает. спасибо .. –
Пожалуйста, отметьте принятый ответ и повысьте –