Unitate - Decuplarea obiecte de joc (gameobjects)

Dezactivarea obiect de joc vă permite să-l eliminați temporar de pe scena. Puteți utiliza activeSelf de proprietate printr-un script, puteți utiliza, de asemenea, un „tick“ inspector de activare

facilități de jocuri „Checkmark“ activate

Rezultatul dezactivarea obiectelor de joc părinte

În cazul în care obiectul părinte este dezactivat, dezactivarea-l suprascrie, de asemenea, opțiunea activeSelf pentru toți copiii săi, adică întreaga ierarhie de obiect de la părinte la fiecare dintre descendenții săi, acesta devine inactiv. Cu toate acestea, acest proces nu se schimba valoarea proprietății activeSelf au elemente copil, ei se vor întoarce la starea lor inițială, de îndată ce părintele va fi activat din nou. Acest lucru înseamnă că este imposibil de a judeca dacă sunt activate în momentul în care obiectul pe scena, el activeSelf proprietate. În schimb, este necesar să se utilizeze proprietatea activeInHierarchy. care ia în considerare efectul suprascrierea de la mamă.

Aceasta rescrie comportamentul apărut pentru prima dată în Unitate 4.0. În versiunile anterioare, aceasta are o caracteristică numită SetActiveRecursively. care ar putea fi folosite pentru a activa sau dezactiva descendenții obiectului părinte. Cu toate acestea, această caracteristică se distinge prin faptul că parametrii de activare a fiecărui progenituri sa schimbat - puteți activa sau dezactiva întreaga ierarhie, dar nici un copil a avut posibilitatea de a „aminti“ starea în care a fost inițial. Pentru versiunile anterioare ale codului au continuat să lucreze, SetActiveRecursively a rămas în API-ul la 4.0, dar utilizarea sa nu este recomandată, funcția poate fi exclus din API-ul în viitor: -