forked from MoonsideGames/MoonWorks
Compare commits
4 Commits
d76633bdfc
...
16d2b922ce
Author | SHA1 | Date |
---|---|---|
Caleb Cornett | 16d2b922ce | |
cosmonaut | 1fb3e5adf0 | |
TheSpydog | 6f8858c8b7 | |
TheSpydog | f96298f991 |
|
@ -1 +1 @@
|
||||||
Subproject commit 2880ab39a323a8482331cf76f69d764f13ff2921
|
Subproject commit 9068263afcf5743ac8f2c023eb68610523feb905
|
|
@ -847,6 +847,10 @@ namespace MoonWorks.Graphics
|
||||||
in BufferBinding bufferBinding,
|
in BufferBinding bufferBinding,
|
||||||
uint firstBinding = 0
|
uint firstBinding = 0
|
||||||
) {
|
) {
|
||||||
|
#if DEBUG
|
||||||
|
AssertGraphicsPipelineBound();
|
||||||
|
#endif
|
||||||
|
|
||||||
var bufferPtrs = stackalloc IntPtr[1];
|
var bufferPtrs = stackalloc IntPtr[1];
|
||||||
var offsets = stackalloc ulong[1];
|
var offsets = stackalloc ulong[1];
|
||||||
|
|
||||||
|
@ -874,6 +878,10 @@ namespace MoonWorks.Graphics
|
||||||
in BufferBinding bufferBindingTwo,
|
in BufferBinding bufferBindingTwo,
|
||||||
uint firstBinding = 0
|
uint firstBinding = 0
|
||||||
) {
|
) {
|
||||||
|
#if DEBUG
|
||||||
|
AssertGraphicsPipelineBound();
|
||||||
|
#endif
|
||||||
|
|
||||||
var bufferPtrs = stackalloc IntPtr[2];
|
var bufferPtrs = stackalloc IntPtr[2];
|
||||||
var offsets = stackalloc ulong[2];
|
var offsets = stackalloc ulong[2];
|
||||||
|
|
||||||
|
@ -906,6 +914,10 @@ namespace MoonWorks.Graphics
|
||||||
in BufferBinding bufferBindingThree,
|
in BufferBinding bufferBindingThree,
|
||||||
uint firstBinding = 0
|
uint firstBinding = 0
|
||||||
) {
|
) {
|
||||||
|
#if DEBUG
|
||||||
|
AssertGraphicsPipelineBound();
|
||||||
|
#endif
|
||||||
|
|
||||||
var bufferPtrs = stackalloc IntPtr[3];
|
var bufferPtrs = stackalloc IntPtr[3];
|
||||||
var offsets = stackalloc ulong[3];
|
var offsets = stackalloc ulong[3];
|
||||||
|
|
||||||
|
@ -942,6 +954,10 @@ namespace MoonWorks.Graphics
|
||||||
in BufferBinding bufferBindingFour,
|
in BufferBinding bufferBindingFour,
|
||||||
uint firstBinding = 0
|
uint firstBinding = 0
|
||||||
) {
|
) {
|
||||||
|
#if DEBUG
|
||||||
|
AssertGraphicsPipelineBound();
|
||||||
|
#endif
|
||||||
|
|
||||||
var bufferPtrs = stackalloc IntPtr[4];
|
var bufferPtrs = stackalloc IntPtr[4];
|
||||||
var offsets = stackalloc ulong[4];
|
var offsets = stackalloc ulong[4];
|
||||||
|
|
||||||
|
@ -974,6 +990,10 @@ namespace MoonWorks.Graphics
|
||||||
in Span<BufferBinding> bufferBindings,
|
in Span<BufferBinding> bufferBindings,
|
||||||
uint firstBinding = 0
|
uint firstBinding = 0
|
||||||
) {
|
) {
|
||||||
|
#if DEBUG
|
||||||
|
AssertGraphicsPipelineBound();
|
||||||
|
#endif
|
||||||
|
|
||||||
var bufferPtrs = stackalloc IntPtr[bufferBindings.Length];
|
var bufferPtrs = stackalloc IntPtr[bufferBindings.Length];
|
||||||
var offsets = stackalloc ulong[bufferBindings.Length];
|
var offsets = stackalloc ulong[bufferBindings.Length];
|
||||||
|
|
||||||
|
@ -1623,6 +1643,13 @@ namespace MoonWorks.Graphics
|
||||||
public Texture AcquireSwapchainTexture(
|
public Texture AcquireSwapchainTexture(
|
||||||
Window window
|
Window window
|
||||||
) {
|
) {
|
||||||
|
#if DEBUG
|
||||||
|
if (!window.Claimed)
|
||||||
|
{
|
||||||
|
throw new System.InvalidOperationException("Cannot acquire swapchain texture, window has not been claimed!");
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
var texturePtr = Refresh.Refresh_AcquireSwapchainTexture(
|
var texturePtr = Refresh.Refresh_AcquireSwapchainTexture(
|
||||||
Device.Handle,
|
Device.Handle,
|
||||||
Handle,
|
Handle,
|
||||||
|
|
|
@ -221,11 +221,7 @@ namespace MoonWorks.Graphics
|
||||||
OneMinusDestinationAlpha,
|
OneMinusDestinationAlpha,
|
||||||
ConstantColor,
|
ConstantColor,
|
||||||
OneMinusConstantColor,
|
OneMinusConstantColor,
|
||||||
SourceAlphaSaturate,
|
SourceAlphaSaturate
|
||||||
SourceOneColor,
|
|
||||||
OneMinusSourceOneColor,
|
|
||||||
SourceOneAlpha,
|
|
||||||
OneMinusSourceOneAlpha
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[Flags]
|
[Flags]
|
||||||
|
|
|
@ -364,4 +364,25 @@ namespace MoonWorks.Graphics
|
||||||
BlendState = blendState;
|
BlendState = blendState;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[StructLayout(LayoutKind.Sequential)]
|
||||||
|
public struct IndirectDrawCommand
|
||||||
|
{
|
||||||
|
public uint VertexCount;
|
||||||
|
public uint InstanceCount;
|
||||||
|
public uint FirstVertex;
|
||||||
|
public uint FirstInstance;
|
||||||
|
|
||||||
|
public IndirectDrawCommand(
|
||||||
|
uint vertexCount,
|
||||||
|
uint instanceCount,
|
||||||
|
uint firstVertex,
|
||||||
|
uint firstInstance
|
||||||
|
) {
|
||||||
|
VertexCount = vertexCount;
|
||||||
|
InstanceCount = instanceCount;
|
||||||
|
FirstVertex = firstVertex;
|
||||||
|
FirstInstance = firstInstance;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,7 @@ namespace MoonWorks.Graphics
|
||||||
|
|
||||||
public GraphicsShaderInfo VertexShaderInfo { get; }
|
public GraphicsShaderInfo VertexShaderInfo { get; }
|
||||||
public GraphicsShaderInfo FragmentShaderInfo { get; }
|
public GraphicsShaderInfo FragmentShaderInfo { get; }
|
||||||
public SampleCount SampleCount { get; }
|
public SampleCount SampleCount { get; }
|
||||||
|
|
||||||
#if DEBUG
|
#if DEBUG
|
||||||
internal GraphicsPipelineAttachmentInfo AttachmentInfo { get; }
|
internal GraphicsPipelineAttachmentInfo AttachmentInfo { get; }
|
||||||
|
@ -89,7 +89,6 @@ namespace MoonWorks.Graphics
|
||||||
refreshGraphicsPipelineCreateInfo.rasterizerState.depthBiasConstantFactor = rasterizerState.DepthBiasConstantFactor;
|
refreshGraphicsPipelineCreateInfo.rasterizerState.depthBiasConstantFactor = rasterizerState.DepthBiasConstantFactor;
|
||||||
refreshGraphicsPipelineCreateInfo.rasterizerState.depthBiasEnable = Conversions.BoolToByte(rasterizerState.DepthBiasEnable);
|
refreshGraphicsPipelineCreateInfo.rasterizerState.depthBiasEnable = Conversions.BoolToByte(rasterizerState.DepthBiasEnable);
|
||||||
refreshGraphicsPipelineCreateInfo.rasterizerState.depthBiasSlopeFactor = rasterizerState.DepthBiasSlopeFactor;
|
refreshGraphicsPipelineCreateInfo.rasterizerState.depthBiasSlopeFactor = rasterizerState.DepthBiasSlopeFactor;
|
||||||
refreshGraphicsPipelineCreateInfo.rasterizerState.depthClampEnable = Conversions.BoolToByte(rasterizerState.DepthClampEnable);
|
|
||||||
refreshGraphicsPipelineCreateInfo.rasterizerState.fillMode = (Refresh.FillMode) rasterizerState.FillMode;
|
refreshGraphicsPipelineCreateInfo.rasterizerState.fillMode = (Refresh.FillMode) rasterizerState.FillMode;
|
||||||
refreshGraphicsPipelineCreateInfo.rasterizerState.frontFace = (Refresh.FrontFace) rasterizerState.FrontFace;
|
refreshGraphicsPipelineCreateInfo.rasterizerState.frontFace = (Refresh.FrontFace) rasterizerState.FrontFace;
|
||||||
|
|
||||||
|
|
|
@ -29,7 +29,6 @@
|
||||||
/// Factor applied to a fragment's slope in depth bias calculations. Only applies if depth biasing is enabled.
|
/// Factor applied to a fragment's slope in depth bias calculations. Only applies if depth biasing is enabled.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public float DepthBiasSlopeFactor;
|
public float DepthBiasSlopeFactor;
|
||||||
public bool DepthClampEnable;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Specifies how triangles should be drawn.
|
/// Specifies how triangles should be drawn.
|
||||||
|
|
Loading…
Reference in New Issue