2011-12-20 9 views
0

私は黒い背景に単純なGL_LINE_LOOPを描画しています。 glColorPointerとcolors []配列で何をしても、私は白以外の色を作ることはできません。私は間違って何をしていますか? 私はiPhone用のglを開くのは比較的新しいですが、Google上で、または私の問題で答えが見つからないので、本当に答えがありがとうございます。glColorPointer iOS Open GL ESが機能しません。

//glPushMatrix(); 
glDisable(GL_TEXTURE_2D); 
static const GLubyte colors[] = { 
    255, 0, 255, 255, 
    255, 0, 255, 255, 
    255, 0, 255, 255 
}; 
glEnableClientState(GL_VERTEX_ARRAY); 
glEnableClientState (GL_COLOR_ARRAY); 
glColorPointer(4, GL_UNSIGNED_BYTE, 0, colors); 
glLineWidth(5.0); 
GLfloat vertices[] = { -1.0, -1.0, -1.0, 1.0, 1.0, 1.0, 1.0, -1.0, 1.0 }; 
glVertexPointer(3, GL_FLOAT, 0, vertices); 
glDrawArrays(GL_LINE_LOOP, 0, 3); 
glDisableClientState(GL_VERTEX_ARRAY); 
glDisableClientState(GL_COLOR_ARRAY); 
glEnable(GL_TEXTURE_2D); 
glPopMatrix(); 
+0

2次の行は、色[]配列を定義する前に、今あるが、私はまだ色を取得しておりません。 glDisable(GL_TEXTURE_2D); glBindTexture(GL_TEXTURE_2D、0); – PhilBot

答えて

1

テクスチャリングを無効にしてみてください...

glDisable(GL_TEXTURE_2D); 
glBindTexture(GL_TEXTURE_2D,0); 
+0

私は自分のcolor []配列を宣言する前にそれらの行を追加しましたが、まだ運がない - 行はまだ白です。他のアイデア? - ありがとう – PhilBot

+0

まだ運がない - 私は今、私の色[]宣言の前にこれを持っています:glDisable(GL_TEXTURE_2D); glBindTexture(GL_TEXTURE_2D、0); glDisable(GL_BLEND); glBlendFunc(GL_ONE、GL_ZERO); – PhilBot

+0

私が持っている唯一のアイデアは、テクスチャ座標配列が無効になっていることを確認することです。glDisableClientState(GL_TEXTURE_COORD_ARRAY); glDrawArrays呼び出し後にエラーが発生していませんか? printf( "%d \ n"、glGetError()); –

関連する問題