旧的Open GL ES 1绘图不会在iPhone 6设备上呈现,但适用于其他设备和模拟器

时间:2015-05-08 13:53:31

标签: ios opengl-es

我正在尝试升级具有小型Open GL功能(滚动骰子)的旧应用。它适用于较旧的iPad,较新的iPad和所有模拟器。但是,在实际的iPhone 6设备上,它是空白的。

我已经删除了代码,使得它只绘制一条简单的水平线,但它仍然会在iPhone设备上呈现。

我几乎不了解Open GL,但事实上它在任何地方呈现但在实际的iPhone 6上实际上是令人困惑的。

这是精简的渲染代码。

glLoadIdentity();
glTranslatef(0.0f,0.0f,-12.0f);

glClearColor(1, 1, 1, 1.0);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

glColor4f(1.0f, 0.0f, 0.0f, 1.0f); // opaque red
const GLfloat line[] = {
    -0.5f, -0.5f, //point A
    0.5f, -0.5f, //point B
};

glVertexPointer(2, GL_FLOAT, 0, line);
glEnableClientState(GL_VERTEX_ARRAY);
glDrawArrays(GL_LINES, 0, 2);

请注意,如果我更改glClearColor的值,它确实会更改背景颜色,因此基本渲染过程似乎正常。但是,任何绘制都不可见。

关于可能出现什么问题的任何建议或想法?

[更新] 似乎可能与iOS版本有关。 iOS 8.2不起作用,8.3确实如此。

0 个答案:

没有答案