一般来说非常陌生,从Metal开始直接需要,很快就会试用OpenGL.
想知道问题在外行人的意义上是什么意思.另外,'n'的范围是多少,我刚刚在我制作的2D三角形中将其用作0.
通常,颜色附件是在渲染过程中(至少暂时地)存储渲染图像的位置.通常只在索引0处使用一个颜色附件,所以你正在做的很好.也可以同时渲染多个颜色附件,这就是为什么有一个数组.这是一种先进的技术,在您看到需要之前不必担心,此时应该如何直截了当.
colorAttachments[n]Metal 有两个地方出现.首先是在MTLRenderPipelineDescriptor.另一个在MTLRenderPassDescriptor.
在这两种情况下,范围都在" 实现限制"表中的"渲染目标"部分中,标记为"每个渲染过程描述符的最大渲染目标数"行中给出.
因为MTLRenderPipelineDescriptor,colorAttachments[n]是对a的引用MTLRenderPipelineColorAttachmentDescriptor.在这里,您可以配置像素格式,写入掩码和颜色混合操作.
因为MTLRenderPassDescriptor,colorAttachments[n]是对a的引用MTLRenderPassColorAttachmentDescriptor.这是它的子类MTLRenderPassAttachmentDescriptor,它定义了大多数属性.在这里,您可以配置要渲染到哪个纹理的哪个部分,当渲染过程开始和结束时该纹理的数据应该发生什么,以及如果要清除它,应该清除哪个颜色.
有关颜色附件的信息根据更改的成本分为两个对象.从管道描述符创建渲染管道状态对象相当昂贵.您通常会在运行中创建所有管道状态对象,并在应用程序的剩余生命周期内重复使用它们.
相比之下,您将经常从渲染通道描述符创建渲染命令编码器; 每帧至少一次.它们的创建成本相对较低,因此您可以更改描述符并创建一个新的描述符以在其他地方呈现.
渲染管道状态的颜色附件像素格式必须与渲染命令编码器的颜色附件纹理的纹理的像素格式匹配.
| 归档时间: |
|
| 查看次数: |
858 次 |
| 最近记录: |