我的CAMetalLayer
背景颜色为黑色,即使我将新颜色指定为backgroundColor
属性。
我错过了什么吗?谢谢!
链接到原始项目:
答案 0 :(得分:1)
这个项目采用了一种非常规的方法来清除每个帧的drawable纹理:它用一个与纹理大小相同的零数组(width * height * 4)替换纹理内容。随后,它编码实际绘制粒子的一些计算工作。这几乎肯定不是实现此效果的最有效方法,但如果您想进行可能有效的最小更改(而不是尝试尽可能提高代码效率),请填写[]
具有所需清晰颜色的数组(接近ParticleLab.swift的第82行)。
答案 1 :(得分:0)
我已经查看了您的代码,看不到您正在设置背景颜色的地方。
金属层作为子图层添加到其中,因此您必须明确设置它。
在ParticialLab
类的init方法末尾添加此行,看看它是否有效。
self.backgroundColor = UIColor.redColor().CGColor