我正在构建一个使用openGL的iOS应用程序,我遇到了以下问题:
我有一个对象,我想在我的glView上显示。如果我只在视图中绘制一次,它就会工作得很好。但是,如果我将drawView函数添加到runLoop中,它会完美地调用该函数,但它不会绘制任何内容,只会留下一个空白屏幕。
Here is all relevant code.
重绘是指示绘制功能何时再次绘制场景的标志。
我希望下面的代码能在每次绘制对象时旋转它:
static double theta = 0;
theta += 0.03;
glRotatef(theta, 1, 1, 0);如果我不向runLoop添加绘制函数,而是手动绘制它,旋转就会起作用。
谢谢。
发布于 2012-12-18 07:41:03
很可能您的OpenGL代码中的某个地方存在错误。如果在某些情况下一切正常,那么它可能与上下文相关。尝试在每个OpenGL调用之前和之后放置glError调用。这样你就会知道有问题的函数在哪里。
您需要确保将上下文设置为当前活动视图的正确上下文。
发布于 2012-12-18 21:14:46
问题解决了!
我只需要加一句
[self setCurrent];添加到drawView函数中的glView类。
https://stackoverflow.com/questions/13915894
复制相似问题