public void CollectColliders() { // Build collider lists Collider[] allcol = (Collider[])FindObjectsOfType(typeof(Collider)); allcolliders.Clear(); for (int i = 0; i < allcol.Length; i++) { MegaScatterCollisionObj cobj = new MegaScatterCollisionObj(); cobj.collider = allcol[i]; #if UNITY_3_5 //cobj.active = allcol[i].gameObject.active; cobj.active = allcol[i].enabled; //gameObject.active; //allcol[i].gameObject.SetActiveRecursively(false); allcol[i].enabled = false; #else cobj.active = allcol[i].gameObject.activeInHierarchy; allcol[i].gameObject.SetActive(false); #endif allcolliders.Add(cobj); } for (int i = 0; i < ignoreobjs.Count; i++) { if (ignoreobjs[i].active) { #if UNITY_3_5 if (ignoreobjs[i].collider) { //ignoreobjs[i].collider.gameObject.SetActiveRecursively(GetActive(ignoreobjs[i].collider)); ignoreobjs[i].collider.enabled = GetActive(ignoreobjs[i].collider); } #else if (ignoreobjs[i].collider) { ignoreobjs[i].collider.gameObject.SetActive(GetActive(ignoreobjs[i].collider)); // true } #endif } } for (int i = 0; i < surfaces.Count; i++) { if (surfaces[i].active) { #if UNITY_3_5 if (surfaces[i].collider) { //surfaces[i].collider.gameObject.SetActiveRecursively(GetActive(surfaces[i].collider)); surfaces[i].collider.enabled = GetActive(surfaces[i].collider); } #else if (surfaces[i].collider) { surfaces[i].collider.gameObject.SetActive(GetActive(surfaces[i].collider)); //true); } #endif } } }
public void CollectColliders() { // Build collider lists Collider[] allcol = (Collider[])FindObjectsOfType(typeof(Collider)); allcolliders.Clear(); for (int i = 0; i < allcol.Length; i++) { MegaScatterCollisionObj cobj = new MegaScatterCollisionObj(); cobj.collider = allcol[i]; cobj.active = allcol[i].enabled; allcol[i].enabled = false; allcolliders.Add(cobj); } for (int i = 0; i < ignoreobjs.Count; i++) { if (ignoreobjs[i].active) { if (ignoreobjs[i].collider) { ignoreobjs[i].collider.enabled = GetActive(ignoreobjs[i].collider); } if (ignoreobjs[i].includechildren) { ignoreobjs[i].children = ignoreobjs[i].collider.gameObject.GetComponentsInChildren <Collider>(); for (int c = 0; c < ignoreobjs[i].children.Length; c++) { ignoreobjs[i].children[c].enabled = GetActive(ignoreobjs[i].children[c]); } } else { ignoreobjs[i].children = null; } } } for (int i = 0; i < surfaces.Count; i++) { if (surfaces[i].active) { if (surfaces[i].collider) { surfaces[i].collider.enabled = GetActive(surfaces[i].collider); if (surfaces[i].prebuildenable) { surfaces[i].collider.enabled = true; } } } } }