Как лучше реализовать всплывающие подсказки?

Например, когда игрок подходит к лежащему на земле оружию он видит всплывающую подсказку: "Нажмите E, чтобы подобрать".
Я вот думаю, либо на каждом оружие будет объект с текстом который будет включаться по вхождению в триггер, либо Instantiate текст над оружием. Может ещё другие варианты есть. введите сюда описание изображения


Ответы (1 шт):

Автор решения: SoulOFTrue

Проблема приведенных Вами методов в том, что Вам каждый раз нужно будет показывать текст относительно камеры персонажа, то есть вычислять угол и положение. Я думаю удобнее будет сделать это через OnGUI.

Примерно так:

void OnGUI()
{
    if (something)//Условие наведение камеры на оружие, или пересечение коллайдера области подбора оружия
    {
        GUI.Box(new Rect(Screen.width / 2, Screen.height / 2, 300, 50), ("Press E to pick up item!"));
    }
}

В данном примере подсказка отображается по центру экрана и с дефолтными настройками текста. У этого метода 5 перегрузок, там можно настроить стиль текста и контейнера отображения.

→ Ссылка