Предположим, что это ваш квад, с центром в c , где h - половина его высоты, а w - половина его ширины.
------- -
| | | h
| c | -
| |
'-------'
|---|
w
Я не помню, есть ли у четверки свойство SpriteRenderer, но если оно есть, вы можете использовать .bounds для получения w и h . В противном случае вы можете просто прикрепить BoxCollider2D (как триггер, если он вам не нужен) и использовать .bounds для получения этих значений.
Имея эти значения, вы можете определить значение d . Давайте назовем положение мыши m , вы будете касаться границы, когда хотя бы одно из следующих условий выполнено:
- c.x - w - d
- c.x + w - d
- c.y - h - d
- c.y + h - d
Вы можете проверить d , как хотите, чем больше, тем легче будет дотронуться до границ.
Чтобы сделать касание, вы можете использовать встроенные методы (которые можно использовать только при подключенном коллайдере) OnMouseDown
, OnMouseDrag
и OnMouseUp
.
Процесс масштабирования зависит от вас, но его можно выполнить с помощью простых математических вычислений, используя значения .bounds, начиная с OnMouseDown
, масштабируя с OnMouseDrag
и заканчивая OnMouseUp
.