Added Backbuffer to Swapchain + RenderCommand API changes

This commit is contained in:
Simon Lübeß
2021-10-15 22:40:42 +02:00
parent 90e654b750
commit ffafa380ea
14 changed files with 228 additions and 129 deletions
+7 -7
View File
@@ -83,20 +83,20 @@ namespace Sandbox
cameraController.Update(gameTime);
RenderCommand.Clear(null, .(0.2f, 0.2f, 0.2f));
RenderCommand.Clear(_depthTarget, 1.0f, 0, .Depth);
RenderCommand.Clear(_depthTarget, .Depth, 1.0f, 0);
// Draw test geometry
_context.SetRenderTarget(null);
_context.SetDepthStencilTarget(_depthTarget);
_context.BindRenderTargets();
RenderCommand.SetRenderTarget(null);
RenderCommand.SetDepthStencilTarget(_depthTarget);
RenderCommand.BindRenderTargets();
_context.SetRasterizerState(_rasterizerState);
RenderCommand.SetRasterizerState(_rasterizerState);
RenderCommand.SetViewport(_context.SwapChain.BackbufferViewport);
Renderer2D.BeginScene(cameraController.Camera, .BackToFront);
_alphaBlendState.Bind();
RenderCommand.SetBlendState(_alphaBlendState);
for(int x < 10)
for(int y < 10)
+8 -8
View File
@@ -346,22 +346,22 @@ namespace Sandbox
_cameraController.Update(gameTime);
RenderCommand.Clear(null, .(0.2f, 0.2f, 0.2f));
RenderCommand.Clear(_depthTarget, 1.0f, 0, .Depth);
RenderCommand.Clear(_depthTarget, .Depth, 1.0f, 0);
// Draw test geometry
_context.SetRenderTarget(null);
_context.SetDepthStencilTarget(_depthTarget);
_context.BindRenderTargets();
RenderCommand.SetRenderTarget(null);
RenderCommand.SetDepthStencilTarget(_depthTarget);
RenderCommand.BindRenderTargets();
RenderCommand.SetViewport(_context.SwapChain.BackbufferViewport);
Renderer.BeginScene(_cameraController.Camera);
_opaqueBlendState.Bind();
RenderCommand.SetBlendState(_opaqueBlendState);
var basicEffect = Application.Get().EffectLibrary.Get("basicShader");
_context.SetRasterizerState(_rasterizerState);
RenderCommand.SetRasterizerState(_rasterizerState);
TransformSystem.Update(_world);
@@ -471,8 +471,8 @@ namespace Sandbox
_checkerMaterial.SetVariable("BaseColor", Color.White);
Renderer.Submit(_quadGeometryBinding, _checkerMaterial, Matrix.RotationZ(f) * .Scaling(1.5f));
_alphaBlendState.Bind();
RenderCommand.SetBlendState(_alphaBlendState);
_logoMaterial.SetVariable("BaseColor", Color.Pink);
+2 -2
View File
@@ -169,8 +169,8 @@ namespace Sandbox
RenderCommand.SetViewport(vp);
// TODO: don't clear pink!
_context.ClearRenderTarget(_target, .Pink);
RenderCommand.Clear(_depth, 1.0f, 0, .Depth);
RenderCommand.Clear(_target, .Pink);
RenderCommand.Clear(_depth, .Depth, 1.0f, 0);
//_target.Bind();
_context.SetRenderTarget(_target);