使用余弦函数的OpenGL颜色插值?

Posted

技术标签:

【中文标题】使用余弦函数的OpenGL颜色插值?【英文标题】:OpenGL color interpolation using a cosine function? 【发布时间】:2012-05-22 16:13:25 【问题描述】:

我想渲染一个四边形,我希望四边形的一侧为白色,另一侧为黑色。我需要它来模拟余弦函数,而不是对它们之间的像素进行简单的线性颜色插值。

解决这个问题的好方法是什么?

【问题讨论】:

您的 GL 版本是否支持着色器? 是的,有 GLSL 支持,我以前没有使用过自定义着色器。有什么好的 GLSL 教程推荐吗? 这些都是不错的开始。 lighthouse3d.com/opengl/glsl 【参考方案1】:

您可以在片段着色器中执行此操作。即:

gl_FragColor = vec4( vec3( cos( in_TexCoord.x ) ), 1.0 );

您可以根据需要为每个颜色通道调整幅度和相位的精确值。

【讨论】:

以上是关于使用余弦函数的OpenGL颜色插值?的主要内容,如果未能解决你的问题,请参考以下文章

基于顶点的openGL中具有不同颜色的三角形的平面着色

openGL之API学习(二零二)glsl的smooth flat

哪有opengl所有函数的列表?

OpenGL彩色方块

OpenGL 缺陷 - 不需要的插值

openGL 纹理05