Базовые концепции Unity: игровые объекты | OTUS
⚡Подписка от OTUS!
Собери свой пул курсов на выгодных условиях. Подробности в чате →
Написать в чат

Курсы

Программирование
Разработчик программных роботов (RPA) на базе UiPath и PIX
-6%
Разработчик C#
-8%
Алгоритмы и структуры данных
-8%
Backend-разработчик на PHP
-8%
JavaScript Developer. Professional
-9%
Team Lead
-5%
Golang Developer. Professional
-6%
Agile Project Manager
-5%
Flutter Mobile Developer
-10%
MS SQL Server Developer
-8%
C++ Developer. Professional Android Developer. Professional Framework Laravel Cloud Solution Architecture Highload Architect Reverse-Engineering. Professional Kotlin Backend Developer React.js Developer VOIP инженер Нереляционные базы данных Scala-разработчик Супер-практикум по использованию и настройке GIT IoT-разработчик JavaScript Developer. Basic Advanced Fullstack JavaScript developer Unity Game Developer. Professional Супер-интенсив Azure
Инфраструктура
Супер-интенсив "Версионирование и командная работа с помощью Git"
-30%
Administrator Linux. Professional
-5%
Супер-интенсив «CI/CD или Непрерывная поставка с Docker и Kubernetes»
-30%
Разработчик программных роботов (RPA) на базе UiPath и PIX
-6%
Administrator Linux. Advanced
-8%
Infrastructure as a code in Ansible
-12%
Network engineer
-4%
MS SQL Server Developer
-8%
Cloud Solution Architecture Highload Architect Разработчик голосовых ассистентов и чат-ботов Мониторинг и логирование: Zabbix, Prometheus, ELK Супер-практикум по работе с протоколом BGP Супер - интенсив по паттернам проектирования Супер - интенсив по Kubernetes Архитектор сетей Супер-интенсив «IaC Ansible»
Специализации Курсы в разработке Подготовительные курсы
+7 499 938-92-02

Базовые концепции Unity: игровые объекты

Игровой объект (он же GameObject) – один из базовых компонентов, из которых строится игра. Говоря о GameObject, мы подразумеваем наблюдаемые в игре сущности, причем как физические (персонаж, дерево, оружие, взрыв, пуля, грунт и т. д.), так и метафизические (контроллер мультиплеерного режима, менеджер снаряжения и пр.).

Каждый физический игровой объект имеет значения поворота и положения. При этом допускается вложение игровых объектов друг в друга. Вышеупомянутые поворот и положение каждого объекта отсчитываются относительно его родительского объекта. Объект, который размещен непосредственно в сцене, позиционируют относительно «мировых координат».

На картинке ниже можно увидеть группу объектов, совместно вложенных в сцене. Объекты объединены в пустом объекте “Interior_Props”, что сделано в целях структурирования:

wpbb7ykm5xg3sj490itxplobhqi_1-1801-ea335b.png

Существует масса причин, по которым вам может потребоваться вложение объектов. К примеру, вы можете принять решение, что в целях структуризации будет целесообразным поместить вашу окружающую среду (к примеру, отдельные элементы, из которых состоит деревня либо город) в пустой родительский объект. Таким способом вы можете представить вашу окружающую среду в сжатом виде, чтобы потом вместе со всем представлением сцены перенести ее куда надо при разработке игры.

На следующей картинке видна группа объектов, которые вложены в объект «игрок». Отображаются оружие игрока, его аватарка и разные UI-элементы вокруг игрока.

g9y2_vjbodzszyirdfjltqeltdk_1-1801-a8812c.png

Вложение объектов имеет значение и с функциональной точки зрения. К примеру, в объекте «Car» может быть код, который управляет и скоростью, и поворотами машины в целом. Однако у него могут быть отдельные дочерние объекты, которые представляют 4 колеса (все колеса будут крутиться независимо), автомобильные окна, корпус машины и т. д. В случае перемещения родительского объекта «Car», станут двигаться и его дочерние объекты, причем они будут сохранять ориентацию как относительно родительского объекта, так и относительно друг друга. Допустим, можно запланировать, что персонаж открывает дверцу, причем это действие будет касаться именно дверцы, а не всего автомобиля.

По материалам статьи «Basic Concepts in Unity for Software Engineers».

Не пропустите новые полезные статьи!

Спасибо за подписку!

Мы отправили вам письмо для подтверждения вашего email.
С уважением, OTUS!

Автор
0 комментариев
Для комментирования необходимо авторизоваться