【发布时间】:2018-06-14 12:08:12
【问题描述】:
我是 openGL 的新手。现在,我想在 3D 中绘制一个填充了不同颜色图案的三角形。但我没有得到具有独特图层的颜色。所有颜色都被插值了。
此外,我还附上了预期输出的图像,并为上述过程获得了输出。
如果我使用glShadeModel (GL_SMOOTH);
根据获得的输出图像对颜色进行插值。
如果glShadeModel (GL_FLAT);
我为最后一个顶点指定的颜色,例如蓝色,整个三角形都被蓝色填充。
谁能帮我解决这个问题。如果我有任何建议,这对我很有帮助。顶点和片段着色器是解决这个问题的更好方法吗?我对顶点和片段着色器没有足够的知识。 这就是我现在用来画那个铃铛的方法。 代码:
glBegin(GL_TRIANGLES);
glColor3f(1.0f, 0.0f, 0.0f);
glVertex3d(a1,b1,c1);
glColor3f(0.0f, 1.0f, 0.0f);
glVertex3d(a2,b2,c2);
glColor3f(0.0f, 0.0f, 1.0f);
glVertex3d(a3,b3,c3);
glEnd();
glFlush();
【问题讨论】:
标签: opengl-es fragment-shader vertex-shader