public bool InitSystem(MainWindow window) { window.MainCtrl.PG.Instance = this; EngineNS.ERHIType rhiType = EngineNS.ERHIType.RHT_D3D11;//RHT_OGL;// EngineNS.CIPlatform.Instance.IsEditor = true; var ok = EngineNS.CEngine.Instance.GfxInitEngine(rhiType, 0, window.MainCtrl.VP1.DrawHandle); if (ok == false) { return(false); } var rc = EngineNS.CEngine.Instance.RenderContext; var gameDesc = new EngineNS.Editor.CEditorInstanceDesc(); gameDesc.SceneName = gameDesc.DefaultMapName; InitDefaultResource(gameDesc); var srv = CEngine.Instance.TextureManager.GetShaderRView(rc, RName.GetRName("Texture/noused.png")); ScopeTickRender.Enable = true; ScopeTickLogic.Enable = true; ScopeTickSync.Enable = true; window.MainCtrl.VP1.ViewPortName = "MainEditorView"; if (true) { window.MainCtrl.VP1.OnWindowCreated = delegate(EditorCommon.ViewPort.ViewPortControl vp) { if (EditorInited == true) { return; } EditorInited = true; var editor = this.GameEditorInstance as CEditorInstance; editor?.InitEditor(window, gameDesc); }; } return(true); }
public async System.Threading.Tasks.Task OnMainWindowCreated(EditorCommon.ViewPort.ViewPortControl editViewport) { if (EditorInited == true) { return; } EditorInited = true; var gameDesc = new EngineNS.Editor.CEditorInstanceDesc(); gameDesc.SceneName = gameDesc.DefaultMapName; await InitDefaultResource(gameDesc); EngineNS.Thread.Async.TaskLoader.Release(ref WaitContext, this); var editor = GameEditorInstance as CEditorInstance; await editor?.InitEditor(editViewport, gameDesc); }