Wayback Machinekoobas.hobune.stream
May JUN Jul
Previous capture 14 Next capture
2021 2022 2023
2 captures
13 Jun 22 - 14 Jun 22
sparklines
Close Help
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by Clegert · Mar 07 at 04:21 PM · c#gameobjectchildactive

Check if the child of an object is active not working!!!

I have a container GameObject that has multiple children with in turn children. I need to take only the collisions of the children that are active, but when I check if achild is active, either with activeSelf or with activeInHierarchy, it always returns true, no matter if the child is active or not. Has no sense. I don't know what I'm doing wrong or if is a bug in Unity 2021.2.28. Does anyone have any ideas? Thanks.

Comment
Add comment · Show 3
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Cakebox · Mar 07 at 06:01 PM 0
Share

Have you tried recreating the problem in isolation? Start with a blank scene and add a single, empty gameObject and see if you can write a test script to successfully get its active status. If that works, you can gradually re-add the elements of your earlier scene one by one, and see where the problem re-emerges.

avatar image Hellium · Mar 07 at 06:07 PM 0
Share

if is a bug in Unity 2021.2.28

Chances are you did something wrong...


But without any code, no description of the hierarchy, etc, it's impossible to help you

avatar image CleeDotExe · Mar 07 at 06:25 PM 0
Share

It's either a bug or:

  1. You clicked on the eye instead of ticking the box, which is in the inspector not the hierarchy.

  2. You made a mistake in the If-function.

Then again, it is impossible to help without seeing the code or hieracrhy as hellium commented.

2 Replies

· Add your reply
  • Sort: 
avatar image
0
Best Answer

Answer by Clegert · Mar 08 at 03:30 PM

I found where the problem was! I was making a mistake. I'm sorry if you guys wasted your time. The only thing I can do in my defense, in case someone comes across this confusion, is to explain the situation. When adding multiple children as boxes, GOBox(A).ChildBox(B).ChildBox(C).ChildElement(D) and the last box has a child element (D). What I did is that OnStart deactivated the childBox(B), therefore C and D were deactivated automatically, but when opening the GOBox(A) and activating the childBox(B) all the contained elements (C and D) were also activated . I had to do an OnStart procedure to SetActive(false) the items contained in the GOBox recursively from D to B. Best regards.

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image
0

Answer by Alexander_Atanasov · Mar 07 at 07:44 PM

Maybe something like this:

 using UnityEngine;
 using System.Collections.Generic;

 public class TestScript : MonoBehaviour {
     public GameObject objectToGetChildrenFrom;
     public List<GameObject> activeChildren;

     private void Update() {
         activeChildren.Clear();

         for(int i = 0; i < objectToGetChildrenFrom.transform.childCount; i++) {
             if (objectToGetChildrenFrom.transform.GetChild(i).gameObject.activeSelf) {
                 activeChildren.Add(objectToGetChildrenFrom.transform.GetChild(i).gameObject);
             }
         }
     }
 }

I just loop through all children of this object and if its active I add it to the list with active children. I can't understand why it won't work if you give more information it would be better.

Comment
Add comment · Show 1 · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image Clegert · Mar 07 at 08:00 PM 0
Share

Thank you for your answers!

@Cakebox I did what you suggested manually and it worked fine. The problem is that the children are created by script from a Prefab and I inactivate them with SetActive(false), the child gameObjects are inactive and hidden but when I want to check if they are active by script they are always active. The code is something like this.

 static public bool GetCollidersBounds(GameObject go, bool searchMeshInChilds, ref Bounds bounds) {
         Component[] comps;
         List<Collider> collLst;
         Collider collTmp;
         int i;
         collLst = new List<Collider>(0);
         collTmp = go.GetComponent(typeof(Collider)) as Collider;
         if(collTmp) {
             collLst.Add(collTmp);
         }
         if(searchMeshInChilds) {
             comps = go.GetComponentsInChildren(typeof(Collider));
             if(comps != null && comps.Length > 0) {
                 Debug.Log("    >> GetCollidersBounds Childs");
                 for(i = 0; i < comps.Length; i++) {
                     collTmp = comps[i] as Collider;
                     if(comps[i].transform.gameObject.activeInHierarchy) {
                         
                         Debug.LogWarning(" >> comps[i].gameObject(" + comps[i].gameObject.name + ") is ACTIVE!!!");
                         collLst.Add(collTmp);
                     }
                     else {
                         Debug.LogWarning(" >> comps[i].gameObject(" + comps[i].gameObject.name + ") is deactive");
                     }
                     
                 }
             }
         }
         if(collLst != null && collLst.Count > 0) {
             bounds = collLst[0].bounds;
             if(collLst.Count > 1) {
                 for(i = 1; i < collLst.Count; i++) {
                     bounds.Encapsulate(collLst[i].bounds);
                 }
             }
             return (true);
         }
         return (false);
     }

And the script that create prefab is something like this:

 public class Container{
     //some variables
     public List<ElementsClass> elements;
     public void AddNewElement(GameObject prefab){
         GameObject goTemp = GameObject.Instantiate(prefab);
         // Do many things
         elements.AddNewElement(goTemp);
         elements[elements.Count - 1].goElement.SetActive(false);
     }
 }

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this Question

Answers Answers and Comments

786 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

"Center On Children" programmatically 1 Answer

Destroying childs and Instantiate [C#] 0 Answers

Instantiated GameObject gets spawned as a child 2 Answers

Can one specify the parent of a gameobject in an array? 2 Answers

Moving a GameObject reffering to the coordinates of the parent Object 1 Answer


Enterprise
Social Q&A

Social
Subscribe on YouTube social-youtube Follow on LinkedIn social-linkedin Follow on Twitter social-twitter Follow on Facebook social-facebook Follow on Instagram social-instagram

Footer

  • Purchase
    • Products
    • Subscription
    • Asset Store
    • Unity Gear
    • Resellers
  • Education
    • Students
    • Educators
    • Certification
    • Learn
    • Center of Excellence
  • Download
    • Unity
    • Beta Program
  • Unity Labs
    • Labs
    • Publications
  • Resources
    • Learn platform
    • Community
    • Documentation
    • Unity QA
    • FAQ
    • Services Status
    • Connect
  • About Unity
    • About Us
    • Blog
    • Events
    • Careers
    • Contact
    • Press
    • Partners
    • Affiliates
    • Security
Copyright © 2020 Unity Technologies
  • Legal
  • Privacy Policy
  • Cookies
  • Do Not Sell My Personal Information
  • Cookies Settings
"Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges