如果我使用带有兼容性上下文的 opengl 3.2+ 并且有片段着色器,是否需要有顶点着色器?我想知道每个顶点照明计算和其他每个顶点计算是否可以通过固定函数管道完成,我可以只使用片段着色器。
这对每个顶点属性绑定位置有什么影响?
如果每个顶点光照计算和其他每个顶点计算可以通过固定函数管道完成
如果您使用固定的管道灯,它们可以完成。否则,它的一部分(如转换的法线、uv 和位置)必须在传递给片段着色器之前在其他地方计算。这个“其他地方”称为顶点着色器。所以是的,如果你不使用固定的管道闪电系统,你必须使用顶点和片段着色器来处理它。
此外,如果您使用固定的管道闪电,您仍然可以使用着色器来访问固定的灯光和材质属性。但我认为这样做没有意义,除非您希望打破默认行为。