1

openGLを使用するiOSアプリケーションを構築していますが、次の問題があります。

glViewに表示したい特定のオブジェクトがあります。ビューに一度だけ描画すると、問題なく動作します。しかし、drawView関数をrunLoopに追加すると、関数は完全に呼び出されますが、何も描画されず、空白の白い画面が表示されます。

関連するすべてのコードは次のとおりです。

redrawは、いつシーンを再描画するかを描画機能で示すフラグです。

次のコードは、オブジェクトが描画されるたびにオブジェクトを回転させることを期待しています。

    static double theta = 0;
    theta += 0.03;
    glRotatef(theta, 1, 1, 0);

runLoopに描画関数を追加せずに手動で描画すると、回転は機能します。

ありがとう。

4

2 に答える 2

0

問題が解決しました!

追加するしかなかった

[self setCurrent];

drawView関数でglViewクラスに。

于 2012-12-18T13:14:46.183 に答える
0

OpenGL コードのどこかにエラーがある可能性があります。一部のシナリオですべてが機能する場合は、コンテキストに関連している可能性があります。すべての OpenGL 呼び出しの前後に glError 呼び出しを配置し​​てみてください。このようにして、問題のある関数がどこにあるかがわかります。

現在アクティブなビューの正しいコンテキストになるようにコンテキストを設定する必要があります。

于 2012-12-17T23:41:03.120 に答える