在学习cocos2dx时,其底层就用到了OpenGL,因此,想要能够精通cocos2dx,还是需要了解OpenGL的。
本着这个目的,开始搭建OpenGL的环境,并进行学习。
OpenGL环境的搭建相对比较简单,这里就简单概述一下。
1. 下载glut库
glut库地址为:http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip
glut全称为:OpenGL Utility Toolkit,也就是OpenGL应用工具包,它建立在OpenGL基础之上,方便开发OpenGL的某些功能,比如我们后面要创建的Windows程序,就可以用glut来方便地构建起一个初始化的Windows程序。
2. 安装glut库
说是安装,其实就是复制。
解压开这个zip包,会发现其中包含如下几个文件:
glut.h:头文件,复制到D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\gl目录下(需要自己来新建gl目录)
glut.lib,glut32.lib:静态链接库,复制到D:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\lib目录下
glut.dll,glut32.dll:动态链接库,复制到C:\Windows\System32目录下,64位操作系统的,还需要复制到C:\Windows\SysWOW64目录下。
至此,opengl初始环境搭建完成。
下面,我们来进行一下测试,看是否能够运行起来我们的第一个应用程序。
1)新建一个项目:已安装-win32控制台应用程序,一路默认直到完成
2)输入以下代码:
#include "stdafx.h" #include<gl/glut.h> void myDisplay(void) { glClear(GL_COLOR_BUFFER_BIT); //清除颜色 glRectf(-0.5f,-0.5f,0.5f,0.5f); //画一个矩形 glFlush(); //让前面的命令立即执行而不是在缓冲区,与fflush(stdout)作用类似 } int _tmain(int argc, _TCHAR* argv[]) { glutInit(&argc,(char**)argv); //初始化glut,必须调用,复制黏贴这句话即可 glutInitDisplayMode(GLUT_RGB | GLUT_SINGLE); //设置显示方式,RGB、单缓冲。当然还有GLUT_INDEX索引颜色 GLUT_DOUBLE双缓冲(Qt中看到过双缓冲) glutInitWindowPosition(100,100); //位置 glutInitWindowSize(400,400);//窗口大小 glutCreateWindow("第一个OpenGL程序"); //创建窗口,设置标题 glutDisplayFunc(&myDisplay); // 当绘制窗口时调用myDisplay,像Cocos2d-x刷帧Draw中的操作 glutMainLoop(); //消息循环 return 0; }
最后,运行一下,看是否能够运行起来,如果运行起来了,则恭喜你,初始环境建立完成。
注意:
1)如果运行后发现界面一片空白,可能是电脑显卡问题
2)如果程序运行退出时发现“无法加载pdb文件”的字样,试着在vs调试区域设置常规处将启动原服务器勾选
学习opengl的网址:http://www.yakergong.net/nehe/
如何用bresemham画圆:http://www.it165.net/pro/html/201110/918.html
http://www.cnblogs.com/wzmmao/archive/2012/07/05/2577383.html
http://blog.csdn.net/bagboy_taobao_com/article/details/5774628