在金属片段着色器中一次渲染成 2 个离屏纹理

问题描述 投票:0回答:1

金属片段着色器通过显式返回

float4
值渲染到其渲染目标中。这是否意味着片段着色器一次只能渲染一张纹理?我想一次渲染成 2 个纹理,两者都在相同的坐标,但现在我必须诉诸
texture2d.write
函数来处理其中一个,这对我来说似乎不太自然。有没有办法让两个纹理同时成为渲染目标?

ios shader metal fragment-shader metalkit
1个回答
0
投票

您可以从片段着色器返回

struct
,其中每个变量都有您想要输出的类型(如
float4
)和类似
[[color(i)]]
的属性,其中
i
是来自
 的颜色附件的索引MTLRenderPassDescriptpr

© www.soinside.com 2019 - 2024. All rights reserved.