GetComponent<> в юнити

Для чего нужен GetComponent в юнити? Без него же тоже самое.


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

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

GetComponent()<> нужен для того, чтобы брать "компонент" у объекта. Это бывает полезно, когда используешь OverlapCircle(). Ты можешь обратится непосредственно к скрипту объекта, который засечет оверлап, и к переменным в них не используя instance и другие модели.

→ Ссылка
Автор решения: Максим Фисман

GetComponent - это обобщенная функция UnityEngine, которая позволяет получить компонент объекта.

Общий синтаксис этой функции таков:

gameObject.GetComponent<название_компонента>(); или таков: gameObject.GetComponent(typeof(название_компонента));

Например:

private GameObject Player; // Игровой объект персонажа
private BoxCollider PlayerCollider; // Коллайдер игрока

private void Start () {
    PlayerCollider = Player.GetComponent<BoxCollider>();
}

GetComponent возвращает лишь один компонент, поэтому если на объекте висит несколько одинаковых компонентов может потребоваться GetComponents()

→ Ссылка