[MenuItem("MyMenu/Do Test")]
staticvoidTest()
{
Transform parent=Selection.activeGameObject.transform;
Vector3 postion=parent.position;
Quaternion rotation=parent.rotation;
Vector3 scale=parent.localScale;
parent.position=Vector3.zero;
parent.rotation=Quaternion.Euler(Vector3.zero);
parent.localScale=Vector3.one;
Collider[]colliders=parent.GetComponentsInChildren<Collider>();
foreach(Collider child incolliders){
DestroyImmediate(child);
}
Vector3 center=Vector3.zero;
Renderer[]renders =parent.GetComponentsInChildren<Renderer>();
foreach(Renderer child inrenders){
center+=child.bounds.center;
}
center/=parent.GetComponentsInChildren().Length;
Bounds bounds=newBounds(center,Vector3.zero);
foreach(Renderer child inrenders){
bounds.Encapsulate(child.bounds);
}
BoxCollider boxCollider=parent.gameObject.AddComponent<BoxCollider>();
boxCollider.center=bounds.center-parent.position;
boxCollider.size=bounds.size;
parent.position=postion;
parent.rotation=rotation;
parent.localScale=scale;
}