mirror of
https://github.com/aharabada/glitchy-engine-beef.git
synced 2026-09-05 13:01:52 +00:00
Added pixelformat parameter to DepthStencilTarget-constructor
This commit is contained in:
@@ -3,6 +3,24 @@ using internal GlitchyEngine.Renderer;
|
|||||||
|
|
||||||
namespace GlitchyEngine.Renderer
|
namespace GlitchyEngine.Renderer
|
||||||
{
|
{
|
||||||
|
extension DepthStencilFormat
|
||||||
|
{
|
||||||
|
public static explicit operator Format(Self self)
|
||||||
|
{
|
||||||
|
switch(self)
|
||||||
|
{
|
||||||
|
case .D16_UNorm:
|
||||||
|
return .D16_UNorm;
|
||||||
|
case .D24_UNorm_S8_UInt:
|
||||||
|
return .D24_UNorm_S8_UInt;
|
||||||
|
case .D32_Float:
|
||||||
|
return .D32_Float;
|
||||||
|
case .D32_Float_S8X24_UInt:
|
||||||
|
return .D32_Float_S8X24_UInt;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
extension DepthStencilTarget
|
extension DepthStencilTarget
|
||||||
{
|
{
|
||||||
internal ID3D11DepthStencilView* nativeView ~ _?.Release();
|
internal ID3D11DepthStencilView* nativeView ~ _?.Release();
|
||||||
@@ -10,7 +28,7 @@ namespace GlitchyEngine.Renderer
|
|||||||
protected override void PlatformCreate()
|
protected override void PlatformCreate()
|
||||||
{
|
{
|
||||||
Texture2DDescription desc = .();
|
Texture2DDescription desc = .();
|
||||||
desc.Format = .D32_Float;
|
desc.Format = (.)_format;
|
||||||
desc.ArraySize = 1;
|
desc.ArraySize = 1;
|
||||||
desc.BindFlags = .DepthStencil;
|
desc.BindFlags = .DepthStencil;
|
||||||
desc.Width = _width;
|
desc.Width = _width;
|
||||||
|
|||||||
@@ -1,21 +1,32 @@
|
|||||||
using System;
|
using System;
|
||||||
namespace GlitchyEngine.Renderer
|
namespace GlitchyEngine.Renderer
|
||||||
{
|
{
|
||||||
|
public enum DepthStencilFormat
|
||||||
|
{
|
||||||
|
D16_UNorm,
|
||||||
|
D24_UNorm_S8_UInt,
|
||||||
|
D32_Float,
|
||||||
|
D32_Float_S8X24_UInt
|
||||||
|
}
|
||||||
|
|
||||||
// TODO: add all features.
|
// TODO: add all features.
|
||||||
public class DepthStencilTarget : RefCounted
|
public class DepthStencilTarget : RefCounted
|
||||||
{
|
{
|
||||||
protected internal GraphicsContext _context ~ _?.ReleaseRef();
|
protected internal GraphicsContext _context ~ _?.ReleaseRef();
|
||||||
|
|
||||||
protected uint32 _width, _height;
|
protected uint32 _width, _height;
|
||||||
|
protected DepthStencilFormat _format;
|
||||||
|
|
||||||
public uint32 Width => _width;
|
public uint32 Width => _width;
|
||||||
public uint32 Height => _height;
|
public uint32 Height => _height;
|
||||||
|
public DepthStencilFormat Format => _format;
|
||||||
|
|
||||||
public this(GraphicsContext context, uint32 width, uint32 height)
|
public this(GraphicsContext context, uint32 width, uint32 height, DepthStencilFormat format = .D32_Float)
|
||||||
{
|
{
|
||||||
_context = context..AddRef();
|
_context = context..AddRef();
|
||||||
_width = width;
|
_width = width;
|
||||||
_height = height;
|
_height = height;
|
||||||
|
_format = format;
|
||||||
|
|
||||||
PlatformCreate();
|
PlatformCreate();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user