opengl es 2.0绘图不精确

时间:2013-12-07 04:54:11

标签: opengl-es-2.0

我在opengl中有一个奇怪的问题,它是这样的:我设计一个2d引擎,到目前为止我编写了例程,让你绘制精灵,矩形,盒子,翻译和缩放它们...但是当我运行一个我的引擎的小演示我注意到在动画中逐渐缩放矩形(使用4个顶点和GL_LINE_LOOP绘制)时,矩形edeges似乎在两个相邻像素之间反弹。 我无法确定问题的根源,甚至在google中制定正确的搜索查询,如果有人可以对此事进行阐述。如果我的问题不明白,请告诉我。

1 个答案:

答案 0 :(得分:0)

由于多种原因,在OpenGL ES上构建2D库会出现问题。首先,Khronos规范声明它不打算产生“像素完美”渲染。每个OpenGL ES渲染器都允许渲染结果中的一些变化。这是因为实际渲染是在硬件中实现的,浮点舍入在平台之间可能略有不同。即使是着色器编译器,从一个GPU到下一个GPU也完全不同。

另一个问题是,今天移动设备上的大多数GPU都是基于磁贴的延迟渲染器,它们通常不支持部分屏幕渲染。换句话说,每次更新屏幕都需要更换整个画面。