isAllRigidbodySleepingInTag(string Tag_) { foreach (GameObject GameObject_ in GameObject.FindGameObjectsWithTag(Tag_)) { foreach (Rigidbody Rigidbody_ in GameObject_.GetComponentsInChildren <Rigidbody>()) { if (!Rigidbody_.IsSleeping()) { return(false); } } } return(true); }
private static void WriteToTextFile() { string path = "Assets/Resources/" + Selection.activeObject.name.ToString() + ".json"; StreamWriter writer = new StreamWriter(path, true); GameObject[] ObjArray = UnityEngine.Object.FindObjectsOfType <GameObject>(); //GameObject[] ObjArray = GameObject.FindGameObjectsWithTag("level1"); int selfIndexIndex = 1; string data = "["; print(ObjArray.Length); for (int i = 0; i < ObjArray.Length; i++, selfIndexIndex++) { Transform_ objTransform = new Transform_(); //objTransform.position = ObjArray[i].transform.localPosition; //objTransform.rotation = ObjArray[i].transform.localRotation; //objTransform.scale = ObjArray[i].transform.localScale; objTransform.position = ObjArray[i].transform.position; objTransform.rotation = ObjArray[i].transform.rotation; objTransform.scale = ObjArray[i].transform.lossyScale; ObjArray[i].GetComponent <ParentData>().selfIndex = selfIndexIndex; ObjArray[i].GetComponent <ParentData>().parentIndex = 0; GameObject_ myObject = new GameObject_(); if (ObjArray[i].GetComponent <BoxCollider>() != null) { BoxCollider m_Collider; m_Collider = ObjArray[i].GetComponent <BoxCollider>(); myObject.boxColliderSize = m_Collider.size; myObject.colliderCenter = m_Collider.center; } myObject.transform = objTransform; myObject.name = ObjArray[i].gameObject.name; if (ObjArray[i].GetComponent <MeshFilter>() != null) { //myObject.meshString = ObjArray[i].GetComponent<MeshFilter>().sharedMesh.name; myObject.meshString = AssetDatabase.GetAssetPath(ObjArray[i].GetComponent <MeshFilter>().sharedMesh); } if (ObjArray[i].GetComponent <Light>() != null) { myObject.lightType = 1; myObject.lightIntencity = ObjArray[i].GetComponent <Light>().intensity; myObject.lightColor = new Vector4(ObjArray[i].GetComponent <Light>().color.r, ObjArray[i].GetComponent <Light>().color.g, ObjArray[i].GetComponent <Light>().color.b, ObjArray[i].GetComponent <Light>().color.a); } if (ObjArray[i].transform.parent != null) { ObjArray[i].GetComponent <ParentData>().parentIndex = ObjArray[i].transform.parent.GetComponent <ParentData>().selfIndex; } myObject.parentID = ObjArray[i].GetComponent <ParentData>().parentIndex; myObject.selfID = ObjArray[i].GetComponent <ParentData>().selfIndex; if (i < ObjArray.Length - 1) { data += "{\"GameObject\":" + JsonUtility.ToJson(myObject) + "},\n"; } else { data += "{\"GameObject\":" + JsonUtility.ToJson(myObject) + "}\n"; } } data += ']'; writer.Write(data); writer.Close(); }