// main.cpp #include <GLUT/glut.h> void display(); int main(int argc, char * argv[]) { glutInit(&argc, argv); glutCreateWindow(""); glutDisplayFunc(display); glClearColor(0.f, 0.f, 1.f, 1.f); glutMainLoop(); return 0; } void display() { glClear(GL_COLOR_BUFFER_BIT); // 点を描画 glBegin(GL_POINTS); { glVertex2f(0.f, 0.f); } glEnd(); glFlush(); }
glBegin(描画方法)からglEnd()の間に点を描画したい座標をglVertex2f()で指定してやると,点が描画される.この場合,中心に白い点が描画される.ただし,凄く小さくて分かりづらい.
そこで,少しサイズを大きくしてみる.サイズの指定は,glPointSize();
// main.cpp #include <GLUT/glut.h> void display(); int main(int argc, char * argv[]) { glutInit(&argc, argv); glutCreateWindow(""); glutDisplayFunc(display); glClearColor(0.f, 0.f, 1.f, 1.f); glutMainLoop(); return 0; } void display() { glClear(GL_COLOR_BUFFER_BIT); // 点のサイズを指定 glPointSize(32.f); glBegin(GL_POINTS); { glVertex2f(0.f, 0.f); } glEnd(); glFlush(); }
四角くでかい点が出る.ちなみに,このglPointSizeの位置をBeginとEndの間に持ってきても上手く動かない.更に点に丸みを付けてみる.glEnableにGL_POINT_SMOOTHという引数を渡すだけ.
// main.cpp #include <GLUT/glut.h> void display(); int main(int argc, char * argv[]) { glutInit(&argc, argv); glutCreateWindow(""); glutDisplayFunc(display); glClearColor(0.f, 0.f, 1.f, 1.f); glutMainLoop(); return 0; } void display() { glClear(GL_COLOR_BUFFER_BIT); glEnable(GL_POINT_SMOOTH); glPointSize(32.f); glBegin(GL_POINTS); { glVertex2f(0.f, 0.f); } glEnd(); glFlush(); }
0 件のコメント:
コメントを投稿