У меня есть игра, похожая на фруктового ниндзя, где лезвие следует за твоим пальцем, а за ним следует детский след.
Это нормально работает в редакторе, но когда я собрал apk и сыграл на своем телефоне, он телепортируется с последней точки. Поэтому, если я перейду в верхний левый угол, подниму палец и положу его в нижнем правом углу, и вы увидите тонкую быструю диагональную линию.
Вот мой код:
private void Update()
{
if (Event.current == null || (Event.current != null && EventSystem.current.currentSelectedGameObject == null))
{
if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Began)
{
circleCollider.enabled = false;
currentTrail = Instantiate(trail, transform);
isCutting = true;
}
else if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Ended)
{
circleCollider.enabled = false;
currentTrail.transform.SetParent(null);
Destroy(currentTrail, 2f);
isCutting = false;
}
}
if (isCutting)
{
Vector2 newPos = currentTrail.transform.position = rb.position = cam.ScreenToWorldPoint(Input.mousePosition);
float velocity = (newPos - previousPos).magnitude * Time.deltaTime;
if (velocity > minCuttingVelocity)
{
circleCollider.enabled = true;
canCut = true;
} else {
circleCollider.enabled = false;
canCut = false;
}
previousPos = newPos;
}
}
Как я уже сказал, это прекрасно работает в редакторе, просто на телефоне. Есть ли какой-нибудь хакерский способ обойти это?