Commit be638a96 authored by Laszlo Agocs's avatar Laszlo Agocs

mtl: reset ps/srb/other trackers on each pass

As the pass uses a different encoder.
parent 1b17a89b
......@@ -2903,14 +2903,6 @@ void QMetalCommandBuffer::release()
void QMetalCommandBuffer::resetState()
{
currentTarget = nullptr;
currentPipeline = nullptr;
currentPipelineGeneration = 0;
currentSrb = nullptr;
currentSrbGeneration = 0;
currentResSlot = -1;
currentIndexBuffer = nullptr;
d->currentPassEncoder = nil;
d->currentPassRpDesc = nil;
......@@ -2919,6 +2911,14 @@ void QMetalCommandBuffer::resetState()
void QMetalCommandBuffer::resetPerPassState()
{
currentTarget = nullptr;
currentPipeline = nullptr;
currentPipelineGeneration = 0;
currentSrb = nullptr;
currentSrbGeneration = 0;
currentResSlot = -1;
currentIndexBuffer = nullptr;
d->shaderResourceBindingsValid = false;
d->currentFirstVertexBinding = -1;
d->currentVertexInputsBuffers.clear();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment