UI скролл на курсор (как в Google Maps)

Графический интерфейс пользователя

UI скролл на курсор (как в Google Maps)

Сообщение Makkarob 16 ноя 2016, 22:28

Привет всем кто это читает! Возник вопрос - я написал скрипт который скролит UI Image (карту) :

Синтаксис:
Используется csharp
using UnityEngine;
using UnityEngine.UI;

 public class Map : MonoBehaviour {

  public float MapScale;

  void Awake () {}

  void Start () {}
       
  void Update () {
         
   if (Input.GetAxis("Mouse ScrollWheel") < 0 && MapScale > 0) {
    this.gameObject.transform.GetChild(0).GetChild(0).GetComponent<RectTransform>().sizeDelta -= new Vector2 (50, 50);
    MapScale -= 1;
   }
   else if (Input.GetAxis("Mouse ScrollWheel") > 0 && MapScale < 25) {
    this.gameObject.transform.GetChild(0).GetChild(0).GetComponent<RectTransform>().sizeDelta += new Vector2 (50, 50);  
    MapScale += 1;
   }
         
  }

}
 


Но он скролит только "В центр - Из центра". Что нужно добавить что бы скролл был в ту часть карты, где находиться курсор?
(В тех же Google Maps куда мышь навел туда и скролит)
Аватара пользователя
Makkarob
UNIт
 
Сообщения: 90
Зарегистрирован: 18 июл 2015, 14:22
Откуда: Украина, Харьков
Skype: Makkarob
  • Сайт

Re: UI скролл на курсор (как в Google Maps)

Сообщение waruiyume 16 ноя 2016, 22:47

Нужно сдвинуть камеру/карту, так чтобы курсор указывал на то же место, где был в начале масштабирования.
Аватара пользователя
waruiyume
Адепт
 
Сообщения: 6143
Зарегистрирован: 30 окт 2010, 05:03
Откуда: Ростов на Дону


Вернуться в uGUI

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2