确定距glsl片段着色器中每个顶点的距离

问题描述 投票:0回答:1

说我有一个简单的OpenGL三角形,如下所示:

//1
glColor3f(1, 0, 0);
glVertex3f(0.5, 0, 0);
//2
glColor3f(0, 1, 0);
glVertex3f(0, 1, 0);
//3
glColor3f(0, 0, 1);
glVertex3f(1, 1, 0);

enter image description here

在glsl片段着色器中,我可以使用插值的片段颜色来确定距每个顶点的距离。在此示例中,颜色的红色分量确定到第一个顶点的距离,绿色确定到第二个顶点的距离,蓝色确定从第三个顶点的距离。]

是否可以在不传递顶点数据(例如纹理坐标或颜色)的情况下确定着色器中的这些距离?

说我有一个简单的OpenGL三角形,像这样:// 1 glColor3f(1,0,0); glVertex3f(0.5,0,0); // 2 glColor3f(0,1,0); glVertex3f(0,1,0); // 3 glColor3f(0,0,1); glVertex3f(1,1,0);一目了然...

opengl glsl fragment-shader
1个回答
0
投票

不是在标准OpenGL中。有两个特定于供应商的扩展:

© www.soinside.com 2019 - 2024. All rights reserved.