Как получить дочерний объект unity
Перейти к содержимому

Как получить дочерний объект unity

  • автор:

Как получить дочерний объект unity

Иерархия ( Hierarchy ) содержит все объекты( GameObject ) в текущей сцене. Некоторые из них являются прямыми экземплярами файлов ассетов, таких как 3D-модели, а другие — экземпляры префабов, пользовательских объектов, из которых состоит большая часть вашей игры. Вы можете выбрать объекты в иерархии, и перетащить один объект на другой, для создания родительской связи( Parenting ) (см. ниже). При добавлении и удалении объектов в сцене, они также будут появляться и исчезать из Иерархии.

Unity использует концепцию под названием Parenting . Для того, чтобы сделать любой GameObject дочерним для другого, перетащите желаемый дочерний объект на желаемый родительский в иерархии. Дочерний объект будет наследовать перемещение и повороты своего родителя. Вы можете использовать раскрывающую стрелку родительского объекта для того, чтобы, при необходимости, показать или скрыть его детей.

Два объекта без родителей Один объект стал родителем для другого

Чтобы узнать больше о parenting, смотрите страницу компонента Transform.

Alphanumeric Sorting

The order of GameObjects in the Hierarchy window can be changed into alphanumeric order. This mode can be enabled using the Edit->Preferences menu (Windows) or Unity->Preferences menu (Mac) which launches the Unity Preferences window. The “Enable Alpha Numeric Sorting” can be ticked. Once this is made the order of the GameObjects in the Hierarchy can be made into alphanumberic sorting. A new icon appears at the top right-hand side of the Hierarchy window. A drop-down appears which lets you choose Alphabetic or Transform sort.

Multi-Scene Editing

It is possible to have more than one Scene open in the Hierarchy at the same time. To find out more about this, see the Multi Scene Editing page.

Поиск дочерних объектов в Unity

Проблема в том что если у меня есть два или больше префаба , то код не работает нормально.
Думаю,программа находит дочерний объект,но только первый.

Отслеживать

задан 4 июл 2019 в 9:03

Merry_Train Merry_Train

269 7 7 серебряных знаков 25 25 бронзовых знаков

4 июл 2019 в 9:08

А какова нужда для создания префаба из кода в объекте? Не проще сделать объект с уже настроенными префабами и скрипт содержащий требуемые связи. При необходимости можно управлять видимостью в префабе отдельных компонентов. Обычно этого достаточно

Как получить доступ к другому объекту из скрипта

Очень часто нам приходиться получать доступ из скрипта одного объекта, к скрипту другого объекта, ведь без этого было бы почти невозможно создать нормальную игру. И сейчас мы подробно разберём, как это сделать.

Для получения доступа к объекту, нам необходимо получить ссылку на тот объект. Для этого нам необходимо осуществить поиск объекта либо по имени, либо по тегу. Воспользуемся ОДНИМ из нижеприведённых способов:

public GameObject obj; void Start() < // Вариант 1. Поиск объекта по имени объекта obj = GameObject.Find("NameGameObject"); // Вариант 2. Поиск объекта по тегу объекта obj = GameObject.FindGameObjectWithTag("TagName"); >

Доступ к объекту получен, теперь с помощью переменной obj, Вы можете делать с этим объектов всё что угодно. Например удалить его, либо отключить, либо использовать его компоненты, для дальнейшей работы с его свойствами и методами. Например так:

Rigidbody _rb = obj.GetComponent(); // получаем ссылку на компонент Rigidbody _rb.MovePosition(rb.position + new Vector3(1, 0 0)); // используем метод MovePosition, компонента Rigidbody.

Так же есть один важный момент. Если Вы хотите использовать свойства и мтоды пользовательсткого(собственного) компонента, то убедитесь, что права доступа к ним установлены как public или protected, иначе Вы не сможете работать с такими методами и свойствами.

На этом всё. Если для Вас эта статья была полезной, то буду рад Вашим лайкам.

Объекты с множеством двигающихся частей

Вы можете захотеть анимировать Game Object’ы которые имеют много двигающихся частей, например орудийную башню с движущимся стволом, или персонаж со многими частями тела. Все части могут быть анимированы с помощью одного компонента Animation на родителе, хотя в некоторых случаях полезно иметь дополнительные компоненты Animation на дочерних объектах.

Анимация дочерних Game Object’ов

Иерархия игровых объектов показана на панели слева от окна Animation.

Вы можете получить доступ к “детям” Game Object’а с помощью значка треугольника рядом с именем объекта. Свойства дочерних объектов могут быть анимированы так же просто, как и у родителя.

Child Game Objects appear in the list of animatable properties when pressing the Add Curve button. They can be expanded to view the animatable properties on those child Game Objects__Animation View__.

Или же вы можете выбрать только дочерний Game Object, который необходимо анимировать, в окне Hierarchy или в окне сцены. Когда вы сделаете это, только дочерний объект отображается в списке свойств, хотя данные анимации по-прежнему будут обрабатываться компонентом анимации на родителе.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *