Когда я запускаю свое приложение на Android, первое касание пальца вызывает Input.GetMouseButtonDown(0)
, а второе касание вызывает Input.GetMouseButtonDown(1)
. В некоторых случаях я хочу переопределить GetMouseButtonDown(0)
, поэтому касание второго пальца (1) станет первым (0), и я не знаю, как это сделать. Либо это, либо как заставить mouseButtonUp
при первом касании пальцем - я хочу удалить этот первый «щелчок» из системы, чтобы он не использовал Input.mousePosition
в случае 2 касаний.
Почему? Я создаю приложение для рисования, когда пользователь может рисовать линии. Есть область, где пользователь может рисовать (в прямоугольнике), и область, где он не должен, я знаю, как обнаружить нажатие на нежелательную область. Но иногда моя ладонь создает нежелательное первое касание Input.GetMouseButtonDown(0)
в нежелательной области (без Input.GetMouseButtonUp(0)
), и когда я начинаю рисовать линию, Input.mousePosition
получает среднее значение обоих касаний, поэтому мне просто нужен способ удалить касание «вниз». щелкните из системы. Или другой способ решить мою проблему.
Вот мой код:
if (Input.touchCount == 0)
{ screenPoint = new Vector3(0, 0, 0);
currentTouch = 4; //currentTouch is for GetMouseButtonUp(currentTouch) }
for (int i=0; i< Input.touchCount; i++)
{
touch = Input.GetTouch(i);
screenPointTemp = touch.position;
screenPointTemp3 = new Vector3(screenPointTemp.x, screenPointTemp.y, zCam);
//if the touch is in a "good" zone-
if (Camera.main.ScreenToWorldPoint(screenPointTemp3).z > BottomNod.transform.position.z - nodeScale)
{
screenPoint = touch.position;
currentTouch = i;
}
}
}
if (Input.GetMouseButtonUp(currentTouch))
{...}