我测试了一下opengl的抗锯齿功能, 但是发现开启抗锯齿功能前后锯齿还是很重,没有变化,请高手指点. (开发平台win8 64bit, 开发工具vs2012)
下面是代码, 只是画了一条线.
#include "stdafx.h"
#include <GL/glut.h>
void myDisplay(void)
{
glEnable(GL_DEPTH_TEST);
glEnable(GL_LINE_SMOOTH);
glHint(GL_LINE_SMOOTH_HINT,GL_NICEST);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLineWidth(2);
glColor3d(0,1,0);
glBegin(GL_LINES);
glVertex2d(0.0,0.0);
glVertex2d(0.4,0.05);
glEnd();
glFlush();
glutSwapBuffers();
}
void myReshape(int w, int h){
glViewport(0, 0, w, h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
if (w>h)
glOrtho(-0.5*(float)w/h,0.5*(float)w/h,-0.5,0.5,100,-100);
else
glOrtho(-0.5,0.5,-0.5*(float)h/w,0.5*(float)h/w,100,-100);
glMatrixMode(GL_MODELVIEW);
}
int main(int argc, char *argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE);
glutInitWindowPosition(100, 100);
glutInitWindowSize(500, 500);
glutCreateWindow("锯齿测试");
glutDisplayFunc(&myDisplay);
glutReshapeFunc(&myReshape);
glutMainLoop();
return 0;
}