У меня проблема.Я хочу использовать джойстик для движения игрока.Я хочу повернуть камеру, если игрок щелкнет ЛЮБОЕ ЛИБО на экране.
Вот изображение
Моя проблема: если игрок использует джойстик, то камера тоже вращается!Я попробовал IsPointerOverGameObject не очень хорошо, потому что игрок нажимает джойстик и перетаскивает его на экран, затем джойстик все еще работает, но камера вращается снова :( Так что я думаю, что если игрок использует джойстик, я отключаю вращение камеры, но не хорошо, потому что если игрок использует двапальцами это возможно и одновременно. (джойстик одним пальцем и экран одним пальцем)
public float speed = 2.0f;
private float X;
private float Y;
void Update() {
if (Input.GetMouseButton (0)) {
if(!EventSystem.current.IsPointerOverGameObject ()) {
transform.Rotate (new Vector3 (Input.GetAxis ("Mouse Y") * speed, -Input.GetAxis ("Mouse X") * speed, 0));
X = transform.rotation.eulerAngles.x;
Y = transform.rotation.eulerAngles.y;
transform.rotation = Quaternion.Euler (X, Y, 0);
}
}
}
Поэтому необходимо другое решение. Если игрок использует джойстик, не двигайте камеру. Но если игрок используетэто двумя пальцами (один с джойстиком, а другой с разрешенной камерой!) Надеюсь, вы понимаете. (похоже на другие стрелялки).
Спасибо!