2012-01-09 18 views
1

ここでは円を画面に表示するコードの一部ですが、不幸な円は画面に表示されません。openglesで円を描く方法

glClearColor(0, 0, 0, 0); 
glClear(GL_COLOR_BUFFER_BIT); 
glPushMatrix(); 
glLoadIdentity(); 
glColor3f(0.0f,1.0f,0.0f); 
glBegin(GL_LINE_LOOP); 

const float DEG2RAD = 3.14159/180; 

for (int i=0; i < 360; i++) 
{ 
    float degInRad = i*DEG2RAD; 
    glVertex2f(cos(degInRad)*8,sin(degInRad)*8); 
} 

glEnd(); 
glFlush(); 

コードはわかりにくいようですが、サークルは画面に表示されません。

+0

こんにちはAjay、このリンクをお試しください - あなたの質問にお答えします:) http://iphonedevelopment.blogspot.com/2008/10/circles-and-ellipses-in-opengl-es.html –

+1

サイドノート:毎回電話'glPushMatrix()'への呼び出しは、 'glPopMatrix()'への呼び出しによって一致しなければなりません。 –

答えて

1

サークルが大きすぎます。デフォルトのビューポートは[(-1 -1)、(1 1)]の範囲です。

ところで、360セグメントは必要ありません。どの程度滑らかにしたいかによって、通常は約30で十分です。

+0

私はESを初めて使用していますが、30までのセグメントを編集しましたが、まだ表示されていません。 –

+0

サークルを縮小しましたか? –

+0

あなたはどこで修正すると言ったのですか?ループスルー? –