Заставляем персонажа игрока вести себя как при использовании событий мыши unity

У меня есть игра, в которой корабль игрока парит на фиксированном расстоянии над сеткой защиты башни. Я хочу, чтобы плитка под кораблем выделялась, когда корабль над ней. Используя функцию OnMouseOver (), это довольно просто, однако я хочу, чтобы это управлялось не мышью, а кораблем игрока. Есть ли способ передать моделирование событий мыши игровому объекту? Как я могу назначить эту функцию кораблю?

Вы наверняка ищете OnTriggerStay()

derHugo 10.09.2018 08:07
0
1
31
1

Ответы 1

Как сказал де Гюго, вы можете использовать OnTriggerStay(). Хотя вы также можете использовать raycast, чтобы проверить, есть ли что-то под кораблем:

    public void FixedUpdate()
{
    RaycastHit hit;
    if (Physics.Raycast(transform.position, -transform.up, out hit, 10f))
    {
        //Here obj will be filled with the gameobject under your ship. You can use this to check for the tag, get components and outline the object.
        var obj = hit.transform.gameObject;
    }
}

Надеюсь, это направит вас в правильное русло.

Другие вопросы по теме