Set Depth Attachment Texture
This commit is contained in:
parent
35b0436a2b
commit
4e6abb0191
1 changed files with 10 additions and 0 deletions
|
@ -30,6 +30,7 @@ namespace Ryujinx.Graphics.Metal
|
|||
private MTLCommandEncoder? _currentEncoder;
|
||||
private EncoderType _currentEncoderType = EncoderType.None;
|
||||
private MTLTexture[] _renderTargets = [];
|
||||
private MTLTexture _depthTarget;
|
||||
|
||||
private RenderEncoderState _renderEncoderState;
|
||||
private readonly MTLVertexDescriptor _vertexDescriptor = new();
|
||||
|
@ -136,6 +137,10 @@ namespace Ryujinx.Graphics.Metal
|
|||
}
|
||||
}
|
||||
|
||||
var depthAttachment = descriptor.DepthAttachment;
|
||||
depthAttachment.Texture = _depthTarget;
|
||||
depthAttachment.LoadAction = MTLLoadAction.Load;
|
||||
|
||||
var renderCommandEncoder = _commandBuffer.RenderCommandEncoder(descriptor);
|
||||
_renderEncoderState.SetEncoderState(renderCommandEncoder, descriptor, _vertexDescriptor);
|
||||
|
||||
|
@ -523,6 +528,11 @@ namespace Ryujinx.Graphics.Metal
|
|||
}
|
||||
}
|
||||
|
||||
if (depthStencil is Texture depthTexture)
|
||||
{
|
||||
_depthTarget = depthTexture.MTLTexture;
|
||||
}
|
||||
|
||||
// Recreate Render Command Encoder
|
||||
BeginRenderPass();
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue