Задать вопрос
@wolf-9830

Как перехватить касание в libgdx?

Здравствуйте, как мне узнать что пользователь коснулся на экране кнопки старт?(Она у меня просто прямоугольник с текстурой).
Думаю так:
Перехватываем координаты с помощью Gdx.input.isTouched(), а потом строю Rectangle по этим координатам и обрабатываю collusion, но тогда как мне обработать столкновение двух Rectangle?
  • Вопрос задан
  • 3359 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
@KChernenko
Android/Java/Security
Немного не понял специфику вопроса? Вы хотите узнать как обработать коллизию или же поверить её?
Для проверки коллизии двух Rectangle в классе Intersector есть метод overlaps, который принимает два объекта типа Rectangle и возвращает true, при возникновении коллизии, - если я не ошибаюсь.
А как обработать эту коллизию - это уже Вам решать исходя из контекста поставленной задачи.
Вы можете, например:
if(Gdx.input.isTouched()) {
     Rectangle r1 = new Rectangle();
     Rectangle r2 = new Rectangle();
     if(Intersector.overlaps(r1, r2)) {
           Gdx.app.log("Game", "Collision");
     }
}
Ответ написан
Комментировать
@fresheed
Если уж пользуетесь библиотекой, то почему бы не задействовать встроенные средства интерфейса? Есть пакет scene2d.ui(большая часть нужной информации здесь). Писать велосипеды не советовал бы - грабли до боли знакомые.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы