Как сделать так, чтобы меню вентилятора увеличивалось в интерфейсе мыши при наведении курсора мыши (только на форме меню Pie, а не на квадратном изображении)? - PullRequest
0 голосов
/ 07 июля 2019

Я пытаюсь создать фан-меню в Unity.В настоящее время у меня есть грубая фан-диаграмма, в которой я хотел реализовать несколько базовых сценариев, таких как увеличение при наведении курсора и вызов функции при нажатии.Я пытался использовать OnPointerEnter, но он срабатывал по форме квадратного изображения.Я хотел бы, чтобы пункт меню (который не был прямоугольным) увеличивался только в том случае, если он наведен, а не на пустое пространство сбоку от него.

public void OnPointerEnter(PointerEventData eventData)
    {
        Debug.Log("Mouse enter");
        rt = gameObject.GetComponent<RectTransform>()
        rt.sizeDelta = startSize * enlargeFactor;
    }

Это срабатывает, но не в формемой пункт меню вентилятора, но в квадрате самого изображения.Я пытался реализовать события OnMouse с помощью коллайдера вместо OnPointer Events, но ничего не сработало, и из здесь я прочитал, что они больше не реализованы для пользовательских интерфейсов в Unity.У кого-нибудь есть идеи относительно хорошего подхода к этой проблеме и решения Example of a single crude pie chart menu item Пример отдельного пункта меню с круговой диаграммой

...