private void FittedBoxCollider()
{
Transform transform = this.gameObject.transform;
Quaternion rotation = transform.rotation;
transform.rotation = Quaternion.identity;
boxCollider = transform.GetComponent<BoxCollider> ();
if (boxCollider == null) {
transform.gameObject.AddComponent<BoxCollider> ();
boxCollider = transform.GetComponent<BoxCollider> ();
}
Bounds bounds = new Bounds (transform.position, Vector3.zero);
ExtendBounds (transform, ref bounds);
boxCollider.center = new Vector3((bounds.center.x - transform.position.x) / transform.localScale.x, (bounds.center.y - transform.position.y) / transform.localScale.y, (bounds.center.z - transform.position.z) / transform.localScale.z);
boxCollider.size = new Vector3(bounds.size.x / transform.localScale.x, bounds.size.y / transform.localScale.y, bounds.size.z / transform.localScale.z);
transform.rotation = rotation;
}