2010-11-18 45 views
0

这很容易吗?我不想使用纹理图像。我想创建一个矩形,可能是两个多边形,然后在其上设置一个颜色。一位声称自己知道OpenGL的朋友说,我必须总是使用三角形,并且当我需要彩色时,我必须使用纹理来处理所有事情。无法想象这是真的。如何在OpenGL ES中绘制彩色矩形?

回答

4

您可以设置每个顶点的颜色(可以全部相同)并绘制四边形。关于OpenGL ES的棘手部分是它们不支持即时模式,因此与OpenGL相比,初始学习曲线更加陡峭。

这个问题涵盖了OpenGL和ES之间的区别:

OpenGL vs OpenGL ES 2.0 - Can an OpenGL Application Be Easily Ported?

+0

谢谢,本。当为四方设置不同的顶点颜色时会发生什么?这会产生一个渐变?没有即时模式意味着它不快? – 2010-11-18 22:30:25

+0

实际上即时模式是*慢*,这只是容易开始。使用固定功能管线,设置不同的顶点颜色将产生一个渐变。 – 2010-11-18 22:37:46

+0

听起来不错。你知道任何代码示例,它显示了这是怎么回事? – 2010-11-18 22:44:00

1

随着OpenGL ES 2.0的,你必须使用着色器,其中(除其他事项外)通常设置颜色。只要你想要一个纯色,就可以在顶点着色器中完成。

+0

顶点着色器会影响场景中的所有几何?或者我可以只在顶点着色器中为这个矩形应用颜色吗? – 2010-11-18 22:28:32

+0

应该说“使用OpenGL ES 2.0 ...” – 2010-11-18 22:38:32

+0

@BugAlert:处理它的最简单方法可能是根据需要从一个着色器切换到另一个着色器。 @Ben:哎呀,很对。 – 2010-11-18 23:32:17