Как проверить, находится ли позиция мыши внутри circleCollider2D - PullRequest
0 голосов
/ 11 октября 2019

Я пытаюсь проверить, находится ли положение мыши внутри circleCollider2D.

Я проверяю границы коллайдера в обновлении, но это возвращает только поле, а не круг

void Update() {
    CircleCollider2D collider2D = GetComponent<CircleCollider2D>();
    Vector2 mousePosition = Camera.main.ScreenToWorldPoint(Input.mousePosition);

    Debug.Log(collider2D.bounds.Contains(new Vector2(mousePosition.x, mousePosition.y)));
    Debug.DrawLine(collider2D.bounds.ClosestPoint(mousePosition), mousePosition);
}

Demo of the problem

Как проверить, находится ли мышь внутри коллайдера?

1 Ответ

1 голос
/ 11 октября 2019

Существует ли причина, по которой вы не используете OnMouseEnter() Unity Builtin?

Создайте сценарий и присоедините его к GameObject с CircleCollider2D и добавьте событие OnMouseEnter(). При желании вы также можете использовать событие OnMouseExit(). OnMouseEnter() и OnMouseExit() - это события, которые автоматически запускаются Unity аналогично OnCollisionEnter(), OnCollisionExit(), OnGuiEnter() и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...