setDepthBias not working on Apple Silicon?

Hi folks - I'm an amateur working on a for-fun project, and don't really know what I'm doing. My app runs correctly on Big Sur on my old MacBook Pro, but I just received an M1 Mac Mini and it appears as though setDepthBias is no longer working (co-planar polygons are rendering as though no depth bias was set). I'm not getting any warnings and can see the depth bias commands in the captured frame, but the effect doesn't seem to be there. I haven't been able to google up any reference to this; does anyone have any ideas? Thanks!
Hmm, I can see that it is working in the Apple "Deferred Lighting" project, but it's not doing anything in my project, so I assume it's specific to my implementation, although my implementation works on my Intel Mac.

Code Block
renderEncoder.setVertexBuffer(planeVerticesBuffer, offset: 0, index: Int(BufferIndexVertices.rawValue))
renderEncoder.executeCommandsInBuffer(icbPlane, range: 0..<scene.planeMatrices.count)
renderEncoder.setRenderPipelineState(renderGroupPipelineState)
renderEncoder.setDepthBias(-1.0, slopeScale: -1.0, clamp: 0)
renderEncoder.setVertexBuffer(s0VerticesBuffer, offset: 0, index: Int(BufferIndexVertices.rawValue))
renderEncoder.executeCommandsInBuffer(icbS0, range: 0..<scene.planeMatrices.count)


The above would work on my Intel Mac to insure that polygons drawn in the second .executeCommandsInBuffer() appear in front of polygons drawn in the earlier one. I repeated the process successfully three more times, incrementing both bias and slopeScale amounts for each subsequent .executeCommandsInBuffer(), and producing the equivalent of five predictably ordered layers.

On the M1, setDepthBias() appears to be doing nothing (i.e. negative and positive values appear identical, and I've also tried values at different scales, more in line with those I'm seeing in "Deferred Lighting".) Any ideas?

I'm sure there are other ways of producing five predictably ordered layers of co-planar polygons (blending, I presume), but being a beginner who has a hard time reading Objective C, I'd kind of need it spelled out for me...
Interesting! This sounds like a bug in the M1 driver given that it works for you on your Intel Mac. My guess is that the ICB isn't inheriting the depth bias state correctly on M1.

Please create a request with Feedback Assistant and post the number you get here.
Thanks! Submitted: FB8964687
setDepthBias not working on Apple Silicon?
 
 
Q