На главную > Блог > Категория > 🧱 Unity с нуля: что такое GameObject, Transform, Collider и с чем их едят
Если ты решил начать делать игры на Unity — поздравляю. Ты выбрал одну из самых дружелюбных экосистем для геймдева.
Но первое, с чем сталкивается каждый новичок — это куча непонятных слов:
GameObject, Transform, Rigidbody, Collider, MonoBehaviour...
Сегодня я разложу всё по полочкам так, чтобы у тебя сложилась цельная картина.
Сцена — это твой игровой уровень. Все объекты в игре находятся внутри сцены.
Ты можешь переключать сцены (меню → уровень 1 → уровень 2) через код.
Сцена — как большой холст, на котором ты размещаешь всё остальное.
GameObject — это любой объект в сцене.
Это может быть:
Сам по себе GameObject ничего не умеет. Он как пустая коробка.
Всю магию добавляют компоненты (Components).
Transform — это компонент, который есть у каждого объекта.
Он отвечает за три вещи:
Без Transform объект не существует в игровом мире.
transform.position = new Vector3(0, 5, 0); // телепорт
transform.Translate(Vector3.forward); // сдвиг вперёд
Если у объекта нет коллайдера, он как призрак: другие объекты проходят сквозь него.
Collider нужен, чтобы:
Виды коллайдеров:
Rigidbody подключает объект к физическому движку Unity.
С ним объект может:
AddForce)Rigidbody — двигай его через физику, а не через Transform.
rb.velocity = new Vector3(5, 0, 0); // правильно
transform.Translate(...); // неправильно для физических объектов
Любой твой скрипт в Unity наследуется от MonoBehaviour.
Это даёт доступ к событиям жизненного цикла:
Awake() — при созданииStart() — перед первым кадромUpdate() — каждый кадрFixedUpdate() — каждый физический шагOnEnable() / OnDisable() — при включении/выключении
public class Player : MonoBehaviour
{
void Start()
{
Debug.Log("Игрок появился");
}
}
Transform, Collider, Rigidbody, скрипт — всё это компоненты.
Они добавляются в инспекторе или через код:
gameObject.AddComponent<Rigidbody>();
Представь, что ты создал врага, настроил его, добавил скрипты, коллайдеры, анимацию.
Теперь ты можешь сохранить его как префаб и создавать копии в любом месте игры.
Instantiate(enemyPrefab, spawnPoint.position, Quaternion.identity);
Создаём игрока:
GameObject (пустой объект)Transform (уже есть)BoxCollider — чтобы не проваливался сквозь полRigidbody — чтобы падать под гравитациейPlayerController — чтобы управлятьГотово. У нас есть физический игрок, которым можно управлять.
Путают движение через Transform и через Rigidbody.
| Если... | Двигай через... |
|---|---|
| У объекта нет Rigidbody | Transform.Translate() или position в Update() |
| У объекта есть Rigidbody | rb.velocity, rb.AddForce в FixedUpdate() |
Нарушишь это правило — персонаж будет дёргаться, пролетать сквозь стены или странно телепортироваться.
Пошаговый план для новичка:
Скачай с официального сайта. Выбери LTS-версию (самая стабильная).
Добавь куб, плоскость, свет. Запусти. Увидишь куб на плоскости.
Добавь скрипт на куб, чтобы он двигался по стрелкам.
Повесь Rigidbody и заставь куб прыгать по пробелу.
Попробуй собрать монетки или дойти до финиша. Это даст понимание всех базовых систем.
| Понятие | Что это | Обязательно? |
|---|---|---|
GameObject | Любой объект в сцене | ✅ Всегда |
Transform | Позиция, поворот, размер | ✅ Всегда |
Collider | Форма для столкновений | ❌ Только если нужна физика |
Rigidbody | Физика (гравитация, силы) | ❌ Только для физических объектов |
MonoBehaviour | Базовый класс для скриптов | ✅ Для всех скриптов |
Prefab | Шаблон объекта | ❌ Удобно, но необязательно |
Update() | Каждый кадр | ❌ По желанию |
FixedUpdate() | Каждый физический шаг | ❌ Только для физики |
Unity — это не страшно. Она состоит из кирпичиков (GameObject), которые наполняются компонентами (Component).
Главное — понять, кто за что отвечает, и не двигать физику через Transform.
Начни с малого: куб, плоскость, скрипт движения.
А дальше — монополия, шутер, RPG — всё в твоих руках.
Дата размещения статьи: 17-06-2026 в 08:39:43