AssetManager.InstantiateObject C# (CSharp) Метод

InstantiateObject() публичный Метод

public InstantiateObject ( string objName ) : void
objName string
Результат void
    public void InstantiateObject(string objName)
    {
        Debug.Log ("Instantiate " + objName);
        GameObject go = (GameObject)GameObject.Instantiate (prefabs [objName]);
        go.transform.position = Vector3.zero;
        go.SetActive (true);
        go.name = go.name.Replace ("(Clone)", "");

        targets.Add (go);

        foreach (Transform child in go.GetComponentsInChildren<Transform>()) {
            if (child.gameObject.GetComponent<MeshFilter> () != null) {
                //Debug.Log (child.name);
                BoxCollider collider = child.gameObject.AddComponent<BoxCollider> ();
                Bounds bounds = Helper.Helper.GetObjectBounds (child.gameObject);
                //Debug.Log (bounds.size);
                collider.center = bounds.center;
                collider.size = bounds.size;

                //Calculates total bounds using targets list aka all gameobjects added
                bool isReset = false;
                foreach (GameObject gameObject in targets) {
                    if (isReset == false) {
                        totalBounds = new Bounds(gameObject.transform.position, new Vector3(3,3,3));
                        isReset = true;
                    }
                    totalBounds.Encapsulate(gameObject.transform.position);
                    totalBounds.Encapsulate(bounds);
                }

                //variables needed to calculate distance of camera from bounds center
                Vector3 max = totalBounds.size;
                float radius = Mathf.Max(max.x, Mathf.Max(max.y, max.z));
                float distance = radius / (Mathf.Sin(Camera.main.fieldOfView * Mathf.Deg2Rad / 2f));

                //points camera at center of total bounds
                Camera.main.transform.position = totalBounds.center;
                Camera.main.transform.Translate (0 ,0, -distance);
            }
        }

        go.AddComponent<ComposerEntity> ();

        MeshRenderer[] renderers = go.GetComponentsInChildren<MeshRenderer> ();
        foreach (MeshRenderer renderer in renderers) {
            renderer.gameObject.AddComponent<Outliner> ();
        }
        objSelector.selectedObjects.Clear ();
        objSelector.selectedObjects.Add (go);
    }