Для управления на экране, вы можете сделать это следующим образом:
Создайте новый кулачок, который будет зафиксирован для управления:
OrthographicCamera guicam = new OrthographicCamera(480, 320);
guicam.position.set(480/2F, 320/2F, 0);
Сделайте (libgdx) Прямоугольник для каждого элемента управления:
Rectangle wleftBounds = new Rectangle(0, 0, 80, 80);
Rectangle wrightBounds = new Rectangle(80, 0, 80, 80);
Создать новую Vector3 провести свой unprojected контакт координаты:
Vector3 touchPoint = new Vector3();
Затем вы можете опрашивать вход, чтобы увидеть, если пользователь прикасается эти прямоугольники:
//in render method
for (int i=0; i<5; i++){
if (!Gdx.input.isTouched(i)) continue;
guicam.unproject(touchPoint.set(Gdx.input.getX(i), Gdx.input.getY(i), 0));
if (wleftBounds.contains(touchPoint.x, touchPoint.y)){
//Move your player to the left!
}else if (wrightBounds.contains(touchPoint.x, touchPoint.y)){
//Move your player to the right!
}
}
Примечание Я проверяю первые 5 сенсорных индексов, то потому что вы наверняка хотите иметь элементы управления, которые в настоящее время используется в то же время (т.е. Прыжки при движении вправо).
Последнее, но не менее, вы хотите, чтобы сделать некоторые интересные графики по сравнению с контролем:
batch.draw(leftRegion, wleftBounds.x, wleftBounds.y, wleftBounds.width, wleftBounds.height);
batch.draw(rightRegion, wrightBounds.x, wrightBounds.y, wrightBounds.width, wrightBounds.height);
Я хочу добавить таблицу с текстовыми кнопками или сенсорную панель Libgdx в мир Box2d ?????? Не могли бы вы объяснить, почему вы этого хотите? для вашего второго вопроса следуйте по этой ссылке http://stackoverflow.com/questions/10112868/example-of-director-stage-group-actor-box2d-and-gesturedector-libgdx – Pranav008
Я хотел использовать таблицу с кнопками или сенсорной панелью для создавать на экране элементы управления. – Mandeep
ни таблица, ни тачпад не требуют box2d ... – Pranav008