2using System.Collections;
6 public static class pb_ObjectUtility
11 public static GameObject AddChild(
this GameObject go)
13 GameObject child =
new GameObject();
14 child.transform.SetParent(go.transform);
21 public static Transform AddChild(
this Transform trs)
23 Transform go =
new GameObject().GetComponent<Transform>();
28 public static float CalcMinDistanceToBounds(Camera cam, Bounds bounds,
float scale = 1.0f)
30 float frustumHeight = Mathf.Max(Mathf.Max(bounds.size.x, bounds.size.y), bounds.size.z) * scale;
31 float distance = frustumHeight * .5f / Mathf.Tan(cam.fieldOfView * .5f * Mathf.Deg2Rad);
33 if ( distance < frustumHeight/2)
35 distance = frustumHeight * Mathf.Sqrt(2) / Mathf.Tan(cam.fieldOfView * .5f * Mathf.Deg2Rad);
41 public static void Destroy<T>(T obj) where T :
UnityEngine.Object
43 GameObject.Destroy(obj);
46 public static void Destroy<T>(T[] array) where T :
UnityEngine.Object
48 foreach (var gameObject
in array)