0
私はアルファチャンネルで透明な色を返すMetalフラグメントシェーダーを持っています.MTKViewの下にUIViewを表示したいのですが、背景色は黒で「エラーノイズ」です。アルファ/透明度&MTKView?
MTLRenderPipelineDescriptor:
pipelineStateDescriptor.isAlphaToCoverageEnabled = true
pipelineStateDescriptor.colorAttachments[0].pixelFormat = .bgra8Unorm
pipelineStateDescriptor.colorAttachments[0].isBlendingEnabled = true
pipelineStateDescriptor.colorAttachments[0].destinationRGBBlendFactor = .oneMinusSourceAlpha
pipelineStateDescriptor.colorAttachments[0].destinationAlphaBlendFactor = .oneMinusSourceAlpha
MTLRenderPassDescriptor:私は明確な色を変更すると、私は明確な色をスキップする場合、私は、「エラー音」を参照してくださいカントー
renderPassDescriptor.colorAttachments[0].loadAction = .clear
renderPassDescriptor.colorAttachments[0].clearColor = MTLClearColor(red: 0, green: 0, blue: 0, alpha: 0)
は、私は、透明色の下でそれを見ることができます。クリアカラーのアルファチャンネルは実際に何かをしますか?
誰かがMTKViewを透明にする方法を知っていますか?
更新:
はここMTKViewを透明にする魔法の財産です:
self.isOpaque = false
falseを返すために 'opaque'プロパティをオーバーライドする' MTKView'のサブクラスを使用していますか? –
isOpaqueプロパティがそれを行いました!ありがとう – Hexagons