我正在为 C# 使用 OpenTK。我对图形编程有点陌生。
有没有办法将属性直接传递给片段着色器并跳过顶点着色器?
它在处理 uv 时很有用。我想将 uv 传递给片段着色器,因为我在顶点着色器中没有做任何更改。
最佳答案
你不能。 vertex shader每个顶点坐标执行一次,fragment shader每个片段执行(对于多重采样甚至更多)。顶点着色器的输出被插值到由 primitive 覆盖的片段。 .插值(坐标)是片段着色器的输入(如果片段着色器阶段直接跟在顶点着色器之后)。
您需要指定哪个属性是顶点着色器的输出,最终是片段着色器的输入。这是通过顶点着色器中的赋值完成的。
关于c# - 如何将属性直接传递给 OpenGL 中的片段着色器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58007053/