说明如下:
这个书就是著名的opengl蓝宝书,中文第四版,英文已经出到第五版,但是第五版的中文翻译版还没有。
运行环境是Mac系统的10.7,就是狮子版本,Xcode是4.2。
本书的支持网站:http://www.starstonesoftware.com/OpenGL/fourthEdition.htm
在上面的网址下载为Mac准备的源代码。
解开。在目录SB-MacwBin\examples\projects\apple\下面可以看到各个章节的源代码,我们第一个分析的代码是在第二章下面的simple下面。第一章的例子对于刚学的人太深了,不建议先看。
打开simple下面的工程,首先做更改如下:

不然不能编译
然后我们需要分析的代码在simple.cpp中,
代码如下:
///////////////////////////////////////////////////////////
// Called to draw scene
void RenderScene(void)
{
// Clear the window with current clearing color
glClear(GL_COLOR_BUFFER_BIT);
// Flush drawing commands
glFlush();
}
///////////////////////////////////////////////////////////
// Setup the rendering state
void SetupRC(void)
{
glClearColor(0.0f, 0.0f, 1.0f, 1.0f);
}
///////////////////////////////////////////////////////////
// Main program entry point
int main(int argc,
char* argv[])
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE
| GLUT_RGBA);
glutCreateWindow("Simple");
glutDisplayFunc(RenderScene);
SetupRC();
glutMainLoop();
return 0;
}
首先要做的是调用函数glutInit()。
VoidglutInit(int*argc,char**argv);
参数:
Argc:一个指针,指向从main()函数传递过来的没更改的argc变量。
Argv:一个指针,指向从main()函数传递过来的没更改的argv变量。
glut开头的函数是输入和窗口函数,并不是OpenGL核心库一部分,由于OpenGL是跨平台的API,只是图像硬件的软件接口,所以任何系统相关的东西,比如窗口,菜单等等都不是OpenGL的核心部分,它们都被放在OpenGL实用工具集(OpenGl Utility ToolKit,GLUT)中。
glutInit应该在所有glut和OpenGL函数之前调用,进行初始化的工作。
glutInitDisplayMode函数功能:设置初始显示模式。
函数原型:void glutInitDisplayMode(unsigned int mode);
这里对这个不过多分析。
glutCreateWindow创建一个缺省大小的窗口300*300;
glutDisplayFunc是用来注册回调函数的。
glClear(GL_COLOR_BUFFER_BIT);用来设置一种颜色,用来刷新窗口。
glFlush函数用来执行所有已经设定的opengl命令。
glClearColor用来刷新的颜色。
glutMainLoop使程序一直运行,知道进程退出。
分享到:
相关推荐
opengl 超级宝典 第五版 源代码 opengl 超级宝典 第五版 源代码 opengl 超级宝典 第五版 源代码
"OpenGL超级宝典"是一本经典的教程书籍,旨在帮助开发者深入理解和掌握OpenGL技术。这本书的示例代码是你学习OpenGL的基础,通过实际操作和运行代码,你可以更好地理解各种图形渲染原理和技巧。 在压缩包中,我们...
《OpenGL超级宝典(第4版)》开篇详细讲解OpenGL图形编程的核心技术,覆盖了从空间中进行绘制到几何变换,从光照到纹理贴图等内容。书中讲解了新的OpenGL功能,包括OpenGL 2.1的强大可编程管线、定点和片段着色和...
openGL超级宝典(第四版)及代码 电子书
opengl 超级宝典 第二版的 源代码
OpenGL超级宝典第五版的源码。没错是源码啊啊啊啊啊啊啊。
综上所述,《OpenGL超级宝典》第六版不仅是一本全面介绍了OpenGL技术的书籍,也是学习和实践OpenGL的理想指南。无论您是刚接触计算机图形学的新手,还是希望深入了解OpenGL高级特性的资深开发者,本书都能够为您提供...
经典OpenGL图形学入门书籍《OpenGL超级宝典英文第五版》及所附完整源码。物有所指!
《openGL超级宝典(第四版)及代码》(OpenGL SuperBible (4th Edition))
《OpenGL超级宝典第二版》的每个章节都可能包含示例代码和练习,鼓励读者动手实践,以加深理解。 总的来说,这是一本适合初学者和有经验的开发者参考的OpenGL指南,全面覆盖了从基础到高级的OpenGL技术,无论你是...
“OpenGL超级宝典,英文第五版”是一本非常有价值的资源,对于希望深入学习OpenGL技术的人来说,这本书不仅提供了丰富的理论知识,还包含了大量实践指导,非常适合初学者到高级用户的各个层次的学习需求。...
在“OpenGL超级宝典 笔记21 相关代码”中,我们可能看到以下步骤: 1. **创建缓冲区对象**:首先,使用glGenBuffers生成一个或多个缓冲区对象的ID。 2. **绑定缓冲区**:然后,选择GL_UNIFORM_BUFFER作为目标,并...
这个资源在超级宝典源码的的基础上添加了一些中文注释,方便理解每一步的目的与作用
OpenGL超级宝典中文第三版是一本全面介绍OpenGL编程的权威指南。本书内容详实,不仅包含了OpenGL的基础知识,还深入探讨了OpenGL的高级特性和最新版本的新特性。本书共分为三个部分,23个章节,并附有3个附录。 在...
本资源是以压缩包的形式的, 里面是一个 “TXT”的文档, 文档中 有“百度云” 分享的链接, 这本书太大,...原作名: OpenGL SuperBible: Comprehensive Tutorial and Reference (5th Edition) 译者: 付飞 / 李艳辉
OpenGL超级宝典第四版(中文版)是一本深入学习OpenGL编程技术的重要参考资料,尤其适合对图形编程感兴趣的初学者和专业人士。OpenGL是一个开放源代码的跨平台图形库,用于在各种操作系统上创建2D和3D图像。随着技术...
总之,OpenGL超级宝典第四版的源代码和库文件是学习OpenGL不可或缺的资源,它们为理论学习提供了实践基础,让你能够亲手构建出令人惊叹的图形应用程序。在学习过程中,结合书中的解释和示例代码,一步步深入理解并...
《openGL超级宝典(第四版)及代码》 Comprehensive Tutorial and Reference Richard S. Wright, Jr. Benjamin Lipchak Nicholas Haemel
OpenGL超级宝典第五版源代码及开发库是一个珍贵的学习资源,包含了OpenGL编程的详细示例和作者自编的开发库,适用于Linux和Windows操作系统。这个压缩包特别关注了在Windows环境下使用Visual Studio 2013进行配置,...