Var*_*mar 2 opengl opengl-es glsl
我试图在GLSL着色器中实现自定义插值技术.
我使用flat插值说明符为我的纹理坐标关闭了默认的OpenGL双线性滤镜.我遵循以下链接中指定的技术:
在光栅化时,图像现在获得基于图像的图像provoking vertex.
我是否可以引入插值机制来决定三角形顶点之间填充的颜色?或者这是在OpenGL中硬编码的?
我是GLSL世界的新手,因此会要求你提供一个非复杂的答案.
插值被硬编码到OpenGL中.如果要进行自己的插值,则必须提供片段着色器:
vec3(1, 0, 0),vec3(0, 1, 0)和vec3(0, 0, 1).flatFS中的3个输入变量(或3个输入的数组,这是相同的事情).当然,您需要将1, 0, 0三角形与三角形顶点的特定未解释值进行匹配.其他两个指数也是如此.
这基本上需要几何着色器,因为VS很难通过重心坐标或提供正确的非插值数据.但是,通过位置的重心坐标和要插值的值,您应该能够实现您喜欢的任何插值方案.例如,#2可能包含3个以上的值.