Вот у меня есть панель, я её могу двигать и удалять/приближать, проблема состоит в том что если удалять/приближать в центре то объект который находится по центру и остается по центру, но если сдвинуть панель в сторону и там начать увеличивать то объект на экране конечно визуально сместится, вот и думаю как сделать так чтобы при увеличении центр оставался на месте, то есть сдвинул в сторону, сфокусировался на каком-то объекте, увеличиваю и этот объект так же остается по центру, хотя это может быть и не объект а просто пустое место.
Подкиньте идею как это можно вычислить...
Что у меня имеется:
canvas: render mode -> screen overlay, UI Scale Mode -> Scale Width Screen
Panel: на ней скрипт
public void OnDrag(PointerEventData eventData){
this.transform.Translate(eventData.delta);
}
void Update(){
if(Input.GetAxis("Mouse ScrollWheel") != 0){
if(Input.GetAxis("Mouse ScrollWheel") > 0) MapScale = MapScale + 0.05f; else MapScale = MapScale - 0.05f;
this.transform.localScale = new Vector3(MapScale, MapScale, 1f);
}
}