void CreateCanvas(CanvasInfo ci)
        {
            ci.mCanvas           = new GameObject(CanvasName, typeof(RectTransform));
            ci.mCanvas.layer     = gameObject.layer;
            ci.mCanvas.hideFlags = HideFlags.HideAndDontSave;
            ci.mCanvas.transform.SetParent(ci.mCanvasParent.transform);
#if UNITY_EDITOR
            // Workaround for Unity bug case Case 1004117
            CanvasesAndTheirOwners.AddCanvas(ci.mCanvas, this);
#endif

            var c = ci.mCanvasComponent = ci.mCanvas.AddComponent <Canvas>();
            c.renderMode    = (RenderMode)m_RenderMode;
            c.sortingOrder  = m_SortingOrder;
            c.planeDistance = m_PlaneDistance;
            c.worldCamera   = ci.mCanvasParent.OutputCamera;

            var go = new GameObject("Viewport", typeof(RectTransform));
            go.transform.SetParent(ci.mCanvas.transform);
            ci.mViewport = (RectTransform)go.transform;
            go.AddComponent <UnityEngine.UI.RectMask2D>();

            go = new GameObject("RawImage", typeof(RectTransform));
            go.transform.SetParent(ci.mViewport.transform);
            ci.mRawImage = go.AddComponent <UnityEngine.UI.RawImage>();
        }
Ejemplo n.º 2
0
        void CreateCanvas(CanvasInfo ci)
        {
            ci.mCanvas           = new GameObject(CanvasName, typeof(RectTransform));
            ci.mCanvas.layer     = gameObject.layer;
            ci.mCanvas.hideFlags = HideFlags.HideAndDontSave;
            ci.mCanvas.transform.SetParent(ci.mCanvasParent.transform);
#if UNITY_EDITOR
            // Workaround for Unity bug case Case 1004117
            CanvasesAndTheirOwners.AddCanvas(ci.mCanvas, this);
#endif

            var c = ci.mCanvas.AddComponent <Canvas>();
            c.renderMode = RenderMode.ScreenSpaceOverlay;

            var go = new GameObject("Viewport", typeof(RectTransform));
            go.transform.SetParent(ci.mCanvas.transform);
            ci.mViewport = (RectTransform)go.transform;
            go.AddComponent <UnityEngine.UI.RectMask2D>();

            go = new GameObject("RawImage", typeof(RectTransform));
            go.transform.SetParent(ci.mViewport.transform);
            ci.mRawImage = go.AddComponent <UnityEngine.UI.RawImage>();
        }