@artshelom

Как сделать перемещение только внутри одной картинки?

У меня есть картинка внутри нее находится еще одна картинка, как узнать границы картинки родителя? Чтобы она не выходила за границы родителя?
Вот код который у меня есть:
if (Input.touchCount > 0)
        {
            if (Input.touches[0].phase == TouchPhase.Began)
                center = Input.touches[0].position;
            if (Input.touches[0].phase == TouchPhase.Moved || Input.touches[0].phase == TouchPhase.Stationary)
            {
                Vector2 moved = Input.touches[0].position - center; // вектор сдвига от начала касания до текущей точки касания
                if (transform.position.x <= 0.5 && transform.position.x >= -0.5)
                {
                    transform.position = new Vector3(transform.position.x + moved.x / 1000, transform.position.y, transform.position.z);
                }
            }
        }

Но у меня двигается только по середине экрана, по длине родителя. А как сделать, чтобы учитывалась положение родителя?
  • Вопрос задан
  • 72 просмотра
Решения вопроса 1
MrMureno
@MrMureno Куратор тега Unity Game Engine
VR for all
где это в вашем коде вообще присутствует "по длине родителя" просвятите пожалуйста??
не вижу вообще никакой ссылки на родительский (или целевой) объект.

что из себя представляют картинки?? Canvas ?? Sprite? Quad??

В принципе ..как вариант смотреть вам в сторону..
https://docs.unity3d.com/ScriptReference/Mesh-boun...
https://docs.unity3d.com/ScriptReference/Renderer-...

для RectTransform наверно проще просто по координатам (смещения все эти лево право верх вниз менять, зная размер родителя)) ...

но опять же у вас ни скриншотов, ни примеров ) толком не ясно)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Pixonic Москва
от 200 000 руб.
ЛАНИТ Москва
от 80 000 до 175 000 руб.
YOPS LTD Санкт-Петербург
от 48 000 руб.