如何在 macOS 上渲染半透明的 MTKView?
Posted
技术标签:
【中文标题】如何在 macOS 上渲染半透明的 MTKView?【英文标题】:How to render a semi transparant MTKView on macOS? 【发布时间】:2018-11-15 15:04:58 【问题描述】:我有一个输出为 alpha 0.5 的 Metal 着色器在 iOS 上运行良好,显示了底层视图。 macOS 上的 Tho 不工作。有一个黑色的背景,即使 MTKView 的图层的背景设置为清除..
我注意到 MTKView 的 .isOpaque
属性在 macOS 上不可设置,但不确定这是否是问题,因为它已经设置为 false
。
还有其他方法可以实现透明吗?
【问题讨论】:
【参考方案1】:您需要将CAMetalLayer
的isOpaque
属性设置为false。 CAMetalLayer.h 头文件(Objective-C)中有一条注释说:
/* Note: The default value of the `opaque' property for CAMetalLayer * instances is true. */
【讨论】:
成功了!我正在将 ios 框架移植到 macOS(Mac 上的 UIKit 之前),不习惯通过图层而不是视图访问这些属性。谢谢以上是关于如何在 macOS 上渲染半透明的 MTKView?的主要内容,如果未能解决你的问题,请参考以下文章