Create GraphicsDevice on RenderWindowBase

This commit is contained in:
Yoshi Askharoun
2021-10-04 01:19:13 -05:00
parent 311ffae287
commit 0940e968a2
8 changed files with 212 additions and 7 deletions
@@ -34,6 +34,7 @@ namespace Microsoft.Iris.Render.Internal
m_localContextId = AllocateContextId();
m_primaryToken = new RenderToken(engineInfo, m_localContextId, m_engineContextId, RENDERGROUP.NULL);
m_messagingSession = new MessagingSession(renderHost, this.m_primaryToken);
m_renderWindow = engineInfo.Window;
this.m_renderSession = new RenderSession(this);
this.m_renderCaps = new RenderCaps(engineInfo.Surface);
this.m_renderCaps.RequestCaps();
@@ -91,6 +92,8 @@ namespace Microsoft.Iris.Render.Internal
m_renderSession.Initialize();
// TODO: Set up input system
//m_inputSystem = new InputSystem(this.m_renderSession, this.m_renderWindow);
m_renderWindow.CreateGraphicsDevice(m_renderSession, m_typeGraphics, renderingQuality);
}
IRenderSession IRenderEngine.Session => m_renderSession;//throw new NotSupportedException("Skia does not use render sessions"); m_renderSession;
@@ -61,7 +61,7 @@ namespace Microsoft.Iris.Render.Internal
}
}
IGraphicsDevice IRenderSession.GraphicsDevice => null;// m_renderEngine.Window.GraphicsDevice;
IGraphicsDevice IRenderSession.GraphicsDevice => m_renderEngine.Window.GraphicsDevice;
ISoundDevice IRenderSession.SoundDevice => m_renderEngine.SoundDevice;
@@ -119,7 +119,7 @@ namespace Microsoft.Iris.Render.Internal
public override void Initialize() => BuildRootContainer();
private GraphicsDevice CreateGraphicsDevice(
internal override GraphicsDevice CreateGraphicsDevice(
RenderSession session,
GraphicsDeviceType graphicsDeviceType,
GraphicsRenderingQuality renderingQuality)