OpenGL游戏编程
基本信息
- 作者: (美)Dave Astle Kevin Hawkins [作译者介绍]
- 译者: 刘刚 王新云
- 丛书名: Premier游戏开发丛书
- 出版社:重庆大学出版社
- ISBN:7562436142
- 上架时间:2006-8-17
- 出版日期:2006 年4月
- 开本:16开
- 页码:297
- 版次:1-1
- 所属分类:
计算机 > 数码/设计 > OpenGL
教材 > 征订教材 > 高等理工
教材 > 研究生/本科/专科教材 > 工学 > 计算机
内容简介回到顶部↑
《opengl游戏编程》一书分为两部分,首先是opengl的基础知识,内容包括opengl库函数,wgl简介,图元处理,变换和矩阵,颜色和灯光的渲染以及纹理映射;第二部分内容包括一些opengl的高级功能特性,内容涉及opengl的功能扩展,高级纹理映射,如何提高性能以及0pengl缓冲区的知识。最后,在本书第十三章和配套光盘中,提供了两个游戏的完整源代码,以供读者参考和学习。
本书是针对那些准备用opengl进行游戏编程,但是以前从没接触过opengl 的人编写.通过这本书,读者可以学到所有的基础知识,包括纹理贴图和顶点数组等一些非常重要的内容.完成了对本书的学习,你应该可以制作一些稍微复杂的游戏了。
本书是针对那些准备用opengl进行游戏编程,但是以前从没接触过opengl 的人编写.通过这本书,读者可以学到所有的基础知识,包括纹理贴图和顶点数组等一些非常重要的内容.完成了对本书的学习,你应该可以制作一些稍微复杂的游戏了。
作译者回到顶部↑
本书提供作译者介绍
戴维从事专业的游戏开发已经有很多年了,他在各种各样的游戏设备如X-Box,PlayStation 2,GameCube,PC甚至是无线设备上都进行过开发。目前,他是Qualcomm公司游戏和图形工作组的首席工程师。他是GameDev.net网站的创始人之一,该网站是游戏开发者们最主要的在线论坛。他编写过多本关于游戏开发的著作,并在很多业界知名的会议上发言,其中包括游戏开发者会议。他曾在犹他州大学计算机科学与技术专业就读并获得学士学位,主修图形学、人工智能、网络、软件工程、编译原理与设计。.
凯文是Raydon公司.. << 查看详细
凯文是Raydon公司.. << 查看详细
目录回到顶部↑
第1篇 opengl的基础知识
第1章 探险再一次开始了
1.1 为什么要制作游戏
1.2 opengl是什么
1.3 一个示范程序
小结
复习题
自测题
第2章 创建一个简单的opengl程序
2.1 wgl的简介
2.2 像素格式
2.3 一个opengl程序
2.4 全屏模式的opengl
小结
复习题
自测题
第3章 opengl的状态和图元
3.1 状态功能函数
3.2 图元的处理
3.3 属性
第1章 探险再一次开始了
1.1 为什么要制作游戏
1.2 opengl是什么
1.3 一个示范程序
小结
复习题
自测题
第2章 创建一个简单的opengl程序
2.1 wgl的简介
2.2 像素格式
2.3 一个opengl程序
2.4 全屏模式的opengl
小结
复习题
自测题
第3章 opengl的状态和图元
3.1 状态功能函数
3.2 图元的处理
3.3 属性
译者序回到顶部↑
图形图像处理是游戏引擎中一个非常重要的环节,它直接影响到游戏本身的观赏性、可玩性。OpenGL,正如它的名字所言,是一个“开放式的图形编程接口”,是广大游戏编程人员不可或缺的强大工具。.
《OpenGL游戏编程》一书分为两部分,首先是OpenGL的基础知识,内容包括OpenGL库函数,WGL简介,图元处理,变换和矩阵,颜色和灯光的渲染以及纹理映射;第二部分内容包括一些OpenGL的高级功能特性,内容涉及OpenGL的功能扩展,高级纹理映射,如何提高性能以及OpenGL缓冲区的知识。最后,在本书第十三章和配套光盘中,提供了两个游戏的完整源代码,以供读者参考和学习。
在本书的翻译过程中,有喜悦也有遗憾。喜悦的是能够有机会研读到这本不可多得的好书;遗憾的是每每从头阅读译稿时,总能发现可以改进的地方。由于时间仓促,能力有限,翻译不当之处敬请广大读者批评指教。..
最后,特别感谢重庆大学出版社副总编陈晓阳老师,国际合作部的袁江老师和王斌老师,感谢他们在本书翻译过程中给予的支持和鼓励。同时,还要感谢与我一起合作翻译的好朋友王新云,是我们共同的努力才得以使此书与广大读者见面。...
刘刚
2006年于重庆大学
《OpenGL游戏编程》一书分为两部分,首先是OpenGL的基础知识,内容包括OpenGL库函数,WGL简介,图元处理,变换和矩阵,颜色和灯光的渲染以及纹理映射;第二部分内容包括一些OpenGL的高级功能特性,内容涉及OpenGL的功能扩展,高级纹理映射,如何提高性能以及OpenGL缓冲区的知识。最后,在本书第十三章和配套光盘中,提供了两个游戏的完整源代码,以供读者参考和学习。
在本书的翻译过程中,有喜悦也有遗憾。喜悦的是能够有机会研读到这本不可多得的好书;遗憾的是每每从头阅读译稿时,总能发现可以改进的地方。由于时间仓促,能力有限,翻译不当之处敬请广大读者批评指教。..
最后,特别感谢重庆大学出版社副总编陈晓阳老师,国际合作部的袁江老师和王斌老师,感谢他们在本书翻译过程中给予的支持和鼓励。同时,还要感谢与我一起合作翻译的好朋友王新云,是我们共同的努力才得以使此书与广大读者见面。...
刘刚
2006年于重庆大学
序言回到顶部↑
2001年春,我们完成了《OpenGL游戏编程》(本书的前一版)。尽管那本书并没有覆盖我们最初想要包含的所有内容,但是我们仍然希望那本书能对读者学习OpenGL游戏编程有所帮助。在随后的日子里,我们通过电子邮件和互联网的形式与那些已经开始尝试三维游戏开发的读者进行了交流,并且非常高兴地发现,我们最初的愿望实现了。.
我们投入了极大的精力在那本书的写作上,在完成时,感觉就像那是我们的第一本书也是最后一本了。然而,自那以后,随着经验的积累,我们开始觉得有必要重新写一本书。我们发现了一些不足的地方,一些需要更新以便符合OpenGL新标准的地方,一些需要添加以便使得内容更完善的地方。另外,我们很想探索一些更为高级的主题。于是,我们在重写原版书,或者推出一本全新的讲述高级内容的书之间做了艰难的抉择。经过讨论,我们决定还是在原版书的核心内容的基础上修订一些已经过时的内容,删除一些与游戏开发关系不大的章节,并将内容补充得更加完整。这样,读者可以通过对本书的学习获得更加坚实的基础,同时我们也希望能够在不久的将来推出一本探讨高级主题的书。
在本书中,你将学习如何使用高性能的图形和游戏库来开发游戏,即如何使用功能强大的OPenGL 1.5开发真正实时的图形游戏。
谁应该读这本书
本书是为刚刚开始三维游戏编程的开发人员而准备的。我们假定你已经熟悉C++编程,并且具备了基础的有关三维的数学和图形知识。在阅读完本书之后,你应该理解OpenGL的所有基础知识,并且能将这些知识运用到游戏中。
如果你已经拥有OPenGL编程经验,你仍然可以从本书中找到一些有用的信息,但是我们推荐你等待我们的下一本书。
本书包含什么内容,不包含什么内容
如果想让一本或两本书包含游戏开发的所有内容,那么这本书将会非常巨大,可能比词典还要厚。为了不让书的厚度和价格吓倒初学者,我们仅仅从游戏开发这个巨大的课程中精心挑选了一部分。为了精简内容,并使读者的阅读更加容易,我们做了如下假定:
第一个假定是读者已经掌握了C++编程。如果有读者还没有掌握的话,可能需要阅读一些C++编程方面的书籍。事实上市面上已经有很多非常好的关于这方面的书,其中一些书的名录已在附录B“推荐阅读”中列出。读者可以从中选取一些来学习,然后再来阅读本书。
第二个假定是读者已经熟悉了他所选择的平台的编程。OpenGL是跨平台的通用图形标准,在许多平台中都可以使用,因此我们无法确定读者使用的是哪种平台,也没办法覆盖所有可能存在的平台。尽管我们选择了目前比较流行的Windows平台,但是仍然不能满足所有读者的需要,如果我们多花一页在与平台相关的编程上,就会少了一页在OpenGL和游戏编程上的讨论。所以,如果有些读者还不能在自己选择的平台上建立简单的程序,那么他们可能需要花一些时间学习相关的书籍和教程。当然,在本书中我们包含了一些Win32编程的基础知识,因为大部分读者可能使用的都是这个平台。为了方便读者,这部分内容可以在本书的配套光盘中找到,它们以PDF文档的形式出现。..
尽管在一般情况下我们不会覆盖与平台相关的编程,但是还是会涉及一部分Windows平台的问题,因为OpenGL的设置和初始化在不同的系统中有所不同。
第三个假定是假设读者已经熟悉了与三维有关的数学知识。很多介绍游戏编程的书(包括我们的上一本)都提供了一些相关的基础知识,但是这是一个非常大的主题,以至于根本无法包含所有的内容。与其为读者提供一些不完整的介绍,还不如读者自己从附录B中选择一些书籍进行专门的学习。因为OpenGL包含了很多数学内容,这样你可能会被很多问题所迷惑,比如点积和矩阵相乘。但是如果你希望成为图形编程的高手,就应该尽可能多地学习与三维相关的数学知识,并且,如果你在阅读本书或者与本书相似的书籍之前,已经掌握了很多这方面的数学知识,那么你阅读这类书籍时就会比较容易。
因为在前一本书中介绍了一些数学基础知识,所以在本书中我们同样将这些内容包含在随书的配套光盘中,如果你只是希望学习一些基本知识的话,这些内容会对你很有益处。
最后要说的是,本书并不包括那些游戏开发所涉及的,但是与图形或者OpenGL编程没有直接联系的其他内容。比如游戏情节设计、人工智能、网络、音频、物理模拟等主题,它们对于游戏开发都是非常重要的,但是需要很多章节来讲述,甚至某些主题需要整本书才能讲得清楚。
现在你应该很清楚本书没有包含的内容了,那么它又包含了些什么内容呢?正如它的题目所言,这是一本为那些准备用OpenGL进行游戏编程,但是以前从没接触过OpenGL的人准备的书。所以,如果你对OpenGL已经非常熟悉,那么本书的内容对你的帮助将是有限的,请关注我们的下一本书。同时,尽管不是所有内容都对游戏开发大有帮助,但是通过这本书,你可以学到所有的基础知识,包括纹理贴图和顶点数组等一些非常重要的内容。完成了对本书的学习之后,你应该可以制作出一些稍微复杂的游戏了。
我们的观点就是要专注于一件事情,并把这件事情做到最好,而不是做很多事情,那样一件事也做不好。...
我们投入了极大的精力在那本书的写作上,在完成时,感觉就像那是我们的第一本书也是最后一本了。然而,自那以后,随着经验的积累,我们开始觉得有必要重新写一本书。我们发现了一些不足的地方,一些需要更新以便符合OpenGL新标准的地方,一些需要添加以便使得内容更完善的地方。另外,我们很想探索一些更为高级的主题。于是,我们在重写原版书,或者推出一本全新的讲述高级内容的书之间做了艰难的抉择。经过讨论,我们决定还是在原版书的核心内容的基础上修订一些已经过时的内容,删除一些与游戏开发关系不大的章节,并将内容补充得更加完整。这样,读者可以通过对本书的学习获得更加坚实的基础,同时我们也希望能够在不久的将来推出一本探讨高级主题的书。
在本书中,你将学习如何使用高性能的图形和游戏库来开发游戏,即如何使用功能强大的OPenGL 1.5开发真正实时的图形游戏。
谁应该读这本书
本书是为刚刚开始三维游戏编程的开发人员而准备的。我们假定你已经熟悉C++编程,并且具备了基础的有关三维的数学和图形知识。在阅读完本书之后,你应该理解OpenGL的所有基础知识,并且能将这些知识运用到游戏中。
如果你已经拥有OPenGL编程经验,你仍然可以从本书中找到一些有用的信息,但是我们推荐你等待我们的下一本书。
本书包含什么内容,不包含什么内容
如果想让一本或两本书包含游戏开发的所有内容,那么这本书将会非常巨大,可能比词典还要厚。为了不让书的厚度和价格吓倒初学者,我们仅仅从游戏开发这个巨大的课程中精心挑选了一部分。为了精简内容,并使读者的阅读更加容易,我们做了如下假定:
第一个假定是读者已经掌握了C++编程。如果有读者还没有掌握的话,可能需要阅读一些C++编程方面的书籍。事实上市面上已经有很多非常好的关于这方面的书,其中一些书的名录已在附录B“推荐阅读”中列出。读者可以从中选取一些来学习,然后再来阅读本书。
第二个假定是读者已经熟悉了他所选择的平台的编程。OpenGL是跨平台的通用图形标准,在许多平台中都可以使用,因此我们无法确定读者使用的是哪种平台,也没办法覆盖所有可能存在的平台。尽管我们选择了目前比较流行的Windows平台,但是仍然不能满足所有读者的需要,如果我们多花一页在与平台相关的编程上,就会少了一页在OpenGL和游戏编程上的讨论。所以,如果有些读者还不能在自己选择的平台上建立简单的程序,那么他们可能需要花一些时间学习相关的书籍和教程。当然,在本书中我们包含了一些Win32编程的基础知识,因为大部分读者可能使用的都是这个平台。为了方便读者,这部分内容可以在本书的配套光盘中找到,它们以PDF文档的形式出现。..
尽管在一般情况下我们不会覆盖与平台相关的编程,但是还是会涉及一部分Windows平台的问题,因为OpenGL的设置和初始化在不同的系统中有所不同。
第三个假定是假设读者已经熟悉了与三维有关的数学知识。很多介绍游戏编程的书(包括我们的上一本)都提供了一些相关的基础知识,但是这是一个非常大的主题,以至于根本无法包含所有的内容。与其为读者提供一些不完整的介绍,还不如读者自己从附录B中选择一些书籍进行专门的学习。因为OpenGL包含了很多数学内容,这样你可能会被很多问题所迷惑,比如点积和矩阵相乘。但是如果你希望成为图形编程的高手,就应该尽可能多地学习与三维相关的数学知识,并且,如果你在阅读本书或者与本书相似的书籍之前,已经掌握了很多这方面的数学知识,那么你阅读这类书籍时就会比较容易。
因为在前一本书中介绍了一些数学基础知识,所以在本书中我们同样将这些内容包含在随书的配套光盘中,如果你只是希望学习一些基本知识的话,这些内容会对你很有益处。
最后要说的是,本书并不包括那些游戏开发所涉及的,但是与图形或者OpenGL编程没有直接联系的其他内容。比如游戏情节设计、人工智能、网络、音频、物理模拟等主题,它们对于游戏开发都是非常重要的,但是需要很多章节来讲述,甚至某些主题需要整本书才能讲得清楚。
现在你应该很清楚本书没有包含的内容了,那么它又包含了些什么内容呢?正如它的题目所言,这是一本为那些准备用OpenGL进行游戏编程,但是以前从没接触过OpenGL的人准备的书。所以,如果你对OpenGL已经非常熟悉,那么本书的内容对你的帮助将是有限的,请关注我们的下一本书。同时,尽管不是所有内容都对游戏开发大有帮助,但是通过这本书,你可以学到所有的基础知识,包括纹理贴图和顶点数组等一些非常重要的内容。完成了对本书的学习之后,你应该可以制作出一些稍微复杂的游戏了。
我们的观点就是要专注于一件事情,并把这件事情做到最好,而不是做很多事情,那样一件事也做不好。...







点击看大图
加载中...

