我正在尝试像在 Photoshop 中那样实现简单的线性渐变。顶点之间的颜色插值似乎是(加法?)数值,而不是您在“油漆混合”中所期望的。这是一个带有绿色和红色的视觉示例:
左边那个大概是我得到的,我想实现右边那个。
有没有简单的方法来实现这一点?
我正在尝试像在 Photoshop 中那样实现简单的线性渐变。顶点之间的颜色插值似乎是(加法?)数值,而不是您在“油漆混合”中所期望的。这是一个带有绿色和红色的视觉示例:
左边那个大概是我得到的,我想实现右边那个。
有没有简单的方法来实现这一点?
正如@Andon 评论的那样,使用纹理系统是做到这一点的好方法。这是您需要的:
此时,您有两个选择:
texture2D
着色器函数和您获得的不同纹理坐标查找它。这将获取相应的纹素颜色,以便您可以将其输出到gl_FragColor
.