我正在尝试使用GL_POINT为每个棋子编码(在c中,使用opengl)一块棋盘游戏。 我有以下代码:
glEnable(GL_POINT_SMOOTH);
glHint(GL_POINT_SMOOTH_HINT, GL_NICEST);
glPointSize(20.0f);
glBegin(GL_POINTS);
glVertex2d(200, 200);
glEnd();
由于某些原因,这个点总是显示为正方形而不是圆形......
有谁知道为什么?
答案 0 :(得分:6)
实际上,要使平滑工作,您可能只需要启用混合。 尝试添加:
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
我知道这对于线条平滑来说是必要的,而且我很确定它对于点来说也是一样的。
干杯, -matt
答案 1 :(得分:4)