.active

Форум для самых маленьких, а так же тех, кому недосуг читать справку самостоятельно.

.active

Сообщение Raxi2012 11 дек 2012, 17:41

Всем привет, кто знает знает как с помощью .active можно было активировать потомков, просто у меня в префабе сам меш не являются главным
Raxi2012
UNIт
 
Сообщения: 60
Зарегистрирован: 12 окт 2012, 16:48

Re: .active

Сообщение KaMiKaZa 11 дек 2012, 19:49

Raxi2012 писал(а):Всем привет, кто знает знает как с помощью .active можно было активировать потомков, просто у меня в префабе сам меш не являются главным

Получать с помощью Find("") постоянную ссылку на потомки, и крутить их как душе угодно.
Аватара пользователя
KaMiKaZa
UNIт
 
Сообщения: 75
Зарегистрирован: 29 окт 2012, 15:42
Откуда: ЯНАО, Надым

Re: .active

Сообщение Raxi2012 11 дек 2012, 19:54

KaMiKaZa писал(а):
Raxi2012 писал(а):Всем привет, кто знает знает как с помощью .active можно было активировать потомков, просто у меня в префабе сам меш не являются главным

Получать с помощью Find("") постоянную ссылку на потомки, и крутить их как душе угодно.


А есть по проще, у меня там примерно 150 потомчиков :)
Raxi2012
UNIт
 
Сообщения: 60
Зарегистрирован: 12 окт 2012, 16:48

Re: .active

Сообщение seaman 11 дек 2012, 20:05

Пример из справки.
Синтаксис:
Используется csharp
        foreach (Transform child in transform) {
            child.position += Vector3.up * 10.0F;
        }

Аналогично любые действия с детьми.
seaman
Адепт
 
Сообщения: 8352
Зарегистрирован: 24 янв 2011, 12:32
Откуда: Самара

Re: .active

Сообщение gturk 11 дек 2012, 23:20

seaman писал(а):Пример из справки.
Синтаксис:
Используется csharp
        foreach (Transform child in transform) {
            child.position += Vector3.up * 10.0F;
        }

Аналогично любые действия с детьми.


Хм....
Вот уж не знал что Transform реализует IEnmerable, да еще и таким экзотическим способом).

вобщем провел небольшой эксперементик
Синтаксис:
Используется csharp
        foreach (Transform child in transform) {
            child.position += Vector3.up * 10.0F;  
//таким способом пройдетесь по всем детям лишь первого уровня, но вне зависимости от того активны они или нет

Tramsform[] transforms = GetComponentsInChildren<Transform>();
//Вернет вам всех потомков (и детей и внуков и правнуков) но только активные.

//Либо можно еще вот таким способом
SetActiveRecursively(true)
        }


А вобще считается что трогать в рантайме флаг active это есть дурной тон,
можно выключать рендерер или любой другой компонент, или переносить объект куда-нибудь с глаз долой
Аватара пользователя
gturk
UNITрон
 
Сообщения: 239
Зарегистрирован: 01 апр 2012, 18:49


Вернуться в Почемучка

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 30