내 libgdx 게임을 테스트하고 내 libgdx 게임을 완료했으며 PC에서 안심할 수 있었지만 안드로이드 (Samsung Galaxy S3 mini 및 Samsung Galaxy S2)가 장착 된 두 대의 휴대폰에서 실행했을 때 내가 예상했던 몇 가지 문제들. 기본적으로 내 1v1 플레이어 버전에서 모든 플레이어는 왼쪽 및 오른쪽으로 자체 터치 컨트롤을 사용합니다. 플레이어는 일정한 속도 (속도 벡터의 길이는 일정합니다)를 가지지 만 플레이어가 컨트롤 중 하나를 터치 할 때마다 속도 벡터의 방향이 변경됩니다. 내 코드는 다음과 같습니다 : 그것은 단지 실제 안드로이드 장치에서 잘 작동하지 않습니다libGdx 멀티 터치 문제
private void handleInput(float delta) {
if (Gdx.input.isTouched()) {
for (int i = 0; i < 20; i++) {
if (Gdx.input.isTouched(i)) {
touchedX = Gdx.input.getX(i);
touchedY = Gdx.input.getY(i);
// PLAYER 1
if (touchedX <= dB) {
// RED RIGHT
if (touchedY <= h/2 + h/playerSpacing + dB
&& touchedY >= h/2 + h/playerSpacing) {
turnLeft(players[0], delta);
}
// RED LEFT
else if (touchedY <= h/2 - h/playerSpacing
&& touchedY >= h/2 - h/playerSpacing - dB) {
turnRight(players[0], delta);
}
}
//PLAYER 2
else if (touchedX >= w - dB) {
// BLUE RIGHT
if (touchedY <= h/2 + h/playerSpacing + dB
&& touchedY >= h/2 + h/playerSpacing) {
turnRight(players[1], delta);
}
// BLUE LEFT
else if (touchedY <= h/2 - h/playerSpacing
&& touchedY >= h/2 - h/playerSpacing - dB) {
turnLeft(players[1], delta);
}
}
}
}
}
의 접촉은 유창하게 인식되지 않고 플레이어의 총 컨트롤이 손상된다. 왜 그런 일이 일어나는 지 아십니까? LibGdx에 멀티 터치 지원이 잘못되었거나 잘못되었습니다.
답변 주셔서 감사합니다. 그러나 문제는 여전히 남아 있습니다. 게임 투영 행렬을 사용하지 않았습니다. – user2685747
문제에 대해 더 잘 설명합니다. 왼쪽 단추를 누른 채로 누른 상태에서 오른쪽 단추를 누른 다음 왼쪽 단추를 다시 표시하면 작동하지 않습니다. 그건 내 실수 야? – user2685747
함수의 첫 번째 줄을 제거하려고하면 (Gdx.input.isTouched()) 기본적으로이 줄은 Gdx.input.isTouched (0)을 의미합니다 ... 루프를 실행하고 모든 인덱스에 대해 isTouched를 확인하십시오 –