mirror of
https://github.com/aharabada/glitchy-engine-beef.git
synced 2026-09-05 21:01:52 +00:00
Added SetViewport to GraphicsContext, removed Dx11Cheater, cleanup
This commit is contained in:
@@ -7,19 +7,13 @@ using DirectX.DXGI.DXGI1_2;
|
||||
using GlitchyEngine.Renderer;
|
||||
using GlitchyEngine.Math;
|
||||
|
||||
using GlitchyEngine.Platform.DX11;
|
||||
|
||||
using internal GlitchyEngine.Renderer;
|
||||
//using internal GlitchyEngine.Platform.DX11.Renderer;
|
||||
|
||||
namespace GlitchyEngine.Renderer
|
||||
//namespace GlitchyEngine.Platform.DX11.Renderer
|
||||
{
|
||||
/// DirectX 11 specific implementation of the GraphicsContext
|
||||
extension GraphicsContext
|
||||
//public class Dx11Context : GraphicsContext
|
||||
{
|
||||
//private Dx11SwapChain _swapChain;
|
||||
private SwapChain _swapChain;
|
||||
|
||||
internal Windows.HWnd nativeWindowHandle;
|
||||
@@ -40,7 +34,6 @@ namespace GlitchyEngine.Renderer
|
||||
nativeWindowHandle = windowHandle;
|
||||
|
||||
_swapChain = new SwapChain(this);
|
||||
//_swapChain = new Dx11SwapChain(this);
|
||||
}
|
||||
|
||||
public ~this()
|
||||
@@ -94,9 +87,6 @@ namespace GlitchyEngine.Renderer
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
Dx11Cheater.Device = nativeDevice;
|
||||
Dx11Cheater.ImmediateContext = nativeContext;
|
||||
|
||||
Log.EngineLogger.Trace("D3D11 Device and Context created (Feature level: {})", deviceLevel);
|
||||
}
|
||||
@@ -110,7 +100,6 @@ namespace GlitchyEngine.Renderer
|
||||
if(renderTarget == null)
|
||||
{
|
||||
_renderTargets[slot] = _swapChain.nativeBackBufferTarget;
|
||||
//_immediateContext.OutputMerger.SetRenderTargets(1, &_swapChain._backBufferTarget, null);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -161,5 +150,10 @@ namespace GlitchyEngine.Renderer
|
||||
{
|
||||
nativeContext.Rasterizer.SetState(_currentRasterizerState.nativeRasterizerState);
|
||||
}
|
||||
|
||||
public override void SetViewports(uint32 viewportsCount, GlitchyEngine.Renderer.Viewport* viewports)
|
||||
{
|
||||
nativeContext.Rasterizer.SetViewports(viewportsCount, (.)viewports);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
using DirectX.D3D11;
|
||||
using DirectX.DXGI.DXGI1_2;
|
||||
using GlitchyEngine.Platform.DX11;
|
||||
using System.Diagnostics;
|
||||
|
||||
using internal GlitchyEngine.Renderer;
|
||||
@@ -19,7 +18,6 @@ namespace GlitchyEngine.Renderer
|
||||
internal IDXGISwapChain1* nativeSwapChain;
|
||||
|
||||
internal ID3D11RenderTargetView* nativeBackBufferTarget;
|
||||
private DirectX.D3D11.Viewport _backBufferViewport;
|
||||
|
||||
public override uint32 Width
|
||||
{
|
||||
@@ -51,7 +49,6 @@ namespace GlitchyEngine.Renderer
|
||||
|
||||
public override GraphicsContext Context => _context;
|
||||
|
||||
//public this(Dx11Context context)
|
||||
public this(GraphicsContext context)
|
||||
{
|
||||
_context = context;
|
||||
@@ -129,8 +126,6 @@ namespace GlitchyEngine.Renderer
|
||||
Debug.Assert(createResult.Succeeded, scope $"Failed to create swap chain. Message({(int32)createResult}):{createResult}");
|
||||
|
||||
factory.Release();
|
||||
|
||||
Dx11Cheater.SwapChain = nativeSwapChain;
|
||||
}
|
||||
|
||||
nativeSwapChain.GetBuffer<ID3D11Texture2D>(0, let backBuffer);
|
||||
@@ -138,11 +133,7 @@ namespace GlitchyEngine.Renderer
|
||||
RenderTargetViewDescription rtvDesc = .(backBuffer, .Texture2D, backBufferViewFormat);
|
||||
_context.nativeDevice.CreateRenderTargetView(backBuffer, &rtvDesc, &nativeBackBufferTarget);
|
||||
|
||||
Dx11Cheater.BackbufferTarget = nativeBackBufferTarget;
|
||||
|
||||
_backBufferViewport = DirectX.D3D11.Viewport(0, 0, _width, _height, 0.0f, 1.0f);
|
||||
|
||||
Dx11Cheater.BackbufferViewport = _backBufferViewport;
|
||||
_backBufferViewport = GlitchyEngine.Renderer.Viewport(0, 0, _width, _height, 0.0f, 1.0f);
|
||||
|
||||
backBuffer.Release();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user