Example #1
0
int main(int argc, char* argv[])
{
	int nModelMenu;
	int nWireMenu;
	int nMainMenu;
	//初始化glut 
	glutInit(&argc, argv);
	//使用双缓冲区、深度缓冲区、模板缓冲区
	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH | GLUT_STENCIL);
	//获取系统的宽像素
	SCREEN_WIDTH = glutGet(GLUT_SCREEN_WIDTH);
	//获取系统的高像素
	SCREEN_HEIGHT = glutGet(GLUT_SCREEN_HEIGHT);
	//创建窗口,窗口名字为OpenGL Glut Demo
	glutCreateWindow("OpenGL Glut Demo");
	//设置窗口大小
	glutReshapeWindow(windowWidth, windowHeight);
	//窗口居中显示
	glutPositionWindow((SCREEN_WIDTH - windowWidth) / 2, (SCREEN_HEIGHT - windowHeight) / 2);
	//创建二级菜单
	nModelMenu = glutCreateMenu(processMenu);
	glutAddMenuEntry("Sphere", 1);
	glutAddMenuEntry("Cone", 2);
	glutAddMenuEntry("Cube", 3);
	glutAddMenuEntry("Torus", 4);
	glutAddMenuEntry("Dodecahedron", 5);
	glutAddMenuEntry("Teapot", 6);
	glutAddMenuEntry("Octahedron", 7);
	glutAddMenuEntry("Tetrahedron", 8);
	glutAddMenuEntry("Icosahedron", 9);
	nWireMenu = glutCreateMenu(processMenu);
	glutAddMenuEntry("Wire", 10);
	glutAddMenuEntry("Solid", 11);
	nMainMenu = glutCreateMenu(processMenu);
	glutAddSubMenu("Model", nModelMenu);
	glutAddSubMenu("WireOrSolid", nWireMenu);
	//将菜单榜定到鼠标右键上
	glutAttachMenu(GLUT_RIGHT_BUTTON);
	//窗口大小变化时的处理函数
	glutReshapeFunc(changSize);
	//设置显示回调函数 
	glutDisplayFunc(renderScreen);
	//设置按键输入处理回调函数
	glutSpecialFunc(specialKey);
	//设置全局渲染参数
	setupRederingState();
	glutMainLoop();

	return 0;
}
Example #2
0
int main(int argc, char* argv[])
{
	
	//初始化游戏数据
	bblock.SetSize(4);
	bblock.AddNumber();

	//初始化glut   
	glutInit(&argc, argv);
	//使用双缓冲区、深度缓冲区、模板缓冲区  
	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH | GLUT_STENCIL);
	//获取系统的宽像素  
	SCREEN_WIDTH = glutGet(GLUT_SCREEN_WIDTH);
	//获取系统的高像素  
	SCREEN_HEIGHT = glutGet(GLUT_SCREEN_HEIGHT);
	//创建窗口,窗口名字为OpenGL Glut Demo  
	glutCreateWindow("2048");
	//设置窗口大小  
	glutReshapeWindow(windowWidth, windowHeight);
	//窗口居中显示  
	glutPositionWindow((SCREEN_WIDTH - windowWidth) / 2, (SCREEN_HEIGHT - windowHeight) / 2);
	//窗口大小变化时的处理函数  
	glutReshapeFunc(changSize);
	//设置显示回调函数   
	glutDisplayFunc(renderScreen);
	//设置按键输入处理回调函数  
	glutSpecialFunc(specialKey);
	//键盘输入
	glutKeyboardFunc(keyboard);
	//处理鼠标
	glutMouseFunc(mouse);
	//滑轮
	glutMouseWheelFunc(wheel);
	//设置全局渲染参数  
	setupRederingState();
	glutMainLoop();
	


	return 0;
}
Example #3
0
int main(int argc, char* argv[]){
	glutInit(&argc, argv);
	glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA | GLUT_DEPTH);
	SCREEN_WIDTH = glutGet(GLUT_SCREEN_WIDTH); 
	SCREEN_HEIGHT = glutGet(GLUT_SCREEN_HEIGHT);
	glutCreateWindow("OpenGL QuadStrip Demo");  
	glutCreateMenu(processMenu);
	glutAddMenuEntry("Toggle depth test", 1);
	glutAddMenuEntry("Toggle cull face", 2);
	glutAddMenuEntry("Toggle back outline", 3);
	glutAttachMenu(GLUT_RIGHT_BUTTON); 
	glutReshapeWindow(windowWidth, windowHeight);
	glutPositionWindow((SCREEN_WIDTH - windowWidth) / 2, (SCREEN_HEIGHT - windowHeight) / 2);
	glutReshapeFunc(changSize);  
	glutDisplayFunc(renderScreen);
	glutIdleFunc(idle);  
	glutSpecialFunc(specialKey);
	setupRederingState();
	glutMainLoop();
	return 0;
}