Ejemplo n.º 1
0
        public void OnEditorGuiRender(IntPtr sceneRenderTexture)
        {
            EngineUtils.TryExecute(() =>
            {
                if (editorRenderer == null)
                {
                    editorRenderer = new EditorRenderer(sceneRenderTexture);
                }

                editorRenderer.Render();
            });
        }
Ejemplo n.º 2
0
    public void RenderOneFrame()
    {
        if (isClosed)
        {
            Close();
            return;
        }

        if (rootCtrl == null)
        {
            return;
        }

        //若当前窗口不是当前窗口,则不更新此
        //窗口的输入信息
        if (this == EditorWindow.focusedWindow)
        {
            InputInfo.Update(this);
        }

        FrameInputInfo.SetCurrInputInfo(InputInfo);

        _PrepareDrawGUI();

        geometryTool.DrawBegin();

        renderer.Render(rootCtrl, position);

        //广播本帧产生的所有消息
        NotifyMessages();

        if (onGUI != null)
        {
            onGUI(this);
        }

        geometryTool.DrawEnd();

        if (renderer.IsRepaintRequested())
        {
            Repaint();
        }
    }