我使用如下polygonmode繪製三角形:OpenGL的:如何繪製三角形或多邊形平滑
drawScene(void)
{
glPopMatrix();
glEnable(GL_POLYGON_SMOOTH);
glHint(GL_POLYGON_SMOOTH_HINT, GL_NICEST);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
glShadeModel(GL_POLYGON_SMOOTH);
glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
glBegin(GL_POLYGON);
glVertex3f(x,y,z);
glVertex3f(x1,y1,z1);
glVertex3f(x2,y2,z2);
glEnd();
glPopMatrix();
}
頂點(X,Y,Z,X1,Y1,Z1,X2,Y2,Z2 )使用sin()和cos()進行計算,並將im傳遞給drawScene()方法。基於sin()和cos()值旋轉三角形。我的問題是,三角形繪製時不光滑。也就是說,三角形的外圍部分沒有光滑的線條。在上面的代碼中,如果我使用GL_LINE三角形看起來很平滑,而不是GL_FILL。但是,我需要一個實心的三角形。
它看起來像一個別名問題。您能否上傳問題的截圖,以便我們更好地理解? – 2012-01-13 07:37:07
請更改問題的標題,以表明您指的是繪製一個平滑的三角形而不是三角形的運動。或澄清,如果我誤解了 – dirk 2012-01-13 07:45:21
@dirk使用sin()和Cos()im的計算值傳遞循環中的頂點值並旋轉三角形。基於此,我繪製了三角形。繪製之後,三角形沒有合適的邊框。對不起,如果問題仍然令人困惑。非常感謝 – 2012-01-13 08:48:24