提问人:omniyo 提问时间:11/6/2023 最后编辑:Ken Whiteomniyo 更新时间:11/6/2023 访问量:57
在几何着色器中写入纹理,在片段着色器中写入样本
Write to texture in geometry shader and sample in fragment shader
问:
是否可以在几何着色器中写入纹理并在片段着色器中对此纹理进行采样?如果是这样,描述符的设置将如何完成?如何在几何着色器中VK_DESCRIPTOR_TYPE_STORAGE_IMAGE图像,而在片段着色器中VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER图像?
答:
0赞
Nicol Bolas
11/6/2023
#1
是否可以在几何着色器中写入纹理并在片段着色器中对此纹理进行采样?
不作为采样图像。
可以写入限定的存储映像,并将其作为限定的存储映像进行读取...只要您遵守可见性和可用性规则。coherent
coherent
GS 调用写入一个或多个基元。这些基元生成片段。这些片段的片段着色器只能读取由编写其基元的 GS 调用写入的数据(即使如此,也只能执行这些 GS 调用,直到它们调用自己的基元为止)。即使是理论上应该在提交顺序中更早发生的 GS 调用也无法访问。EmitPrimitive
评论
0赞
omniyo
11/6/2023
我不能在不调用 EmitVertex 的情况下在 GS 中使用“imageStore”生成法线纹理吗?并在片段着色器中读取当前片段及其相邻片段的纹理,以获取检测边缘的法线变化程度?我知道有更好的方法来做大纲,但只是想练习一些不同的东西。
评论