don't end render pass when not neccessary
This commit is contained in:
parent
2abadbd649
commit
918e1c16b7
3 changed files with 97 additions and 142 deletions
|
@ -48,15 +48,16 @@ namespace Ryujinx.Graphics.Metal
|
|||
|
||||
public MTLRenderCommandEncoder GetOrCreateRenderEncoder()
|
||||
{
|
||||
if (_currentEncoder != null)
|
||||
if (_currentEncoder == null || _currentEncoderType != EncoderType.Render)
|
||||
{
|
||||
if (_currentEncoderType == EncoderType.Render)
|
||||
{
|
||||
return new MTLRenderCommandEncoder(_currentEncoder.Value);
|
||||
}
|
||||
BeginRenderPass();
|
||||
}
|
||||
|
||||
return BeginRenderPass();
|
||||
var renderCommandEncoder = new MTLRenderCommandEncoder(_currentEncoder.Value);
|
||||
|
||||
_encoderStateManager.RebindState(renderCommandEncoder);
|
||||
|
||||
return renderCommandEncoder;
|
||||
}
|
||||
|
||||
public MTLBlitCommandEncoder GetOrCreateBlitEncoder()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue