OpenGL游戏程序设计(含1CD)
基本信息
- 原书名: OpenGL Game Programming
- 原出版社: Course Technology PTR
推荐阅读
内容简介回到顶部↑
本书重点介绍了如何使用高性能的opengl图形与游戏函数库来开发游戏的视频部分。为了让读者了解创建一个游戏的全部过程,书中还包含了directx的内容。本书是涵盖这两方面内容的极少书籍之一。.
在本书中,首先介绍了opengl和directx的产生背景,对它们的工作机理给出一个总体的描述,然后着重介绍了opengl最有可能应用于游戏开发的技术。再后,介绍了如何把所有的技术结合在一起,搭建一个自己的游戏框架,用opengl做图形系统部分,用directsound和irectlnout做声音和设备输入系统部分。最后,本书将介绍如何利用这个游戏框架和本书所涵盖的各种技术来创建一个完整的3d游戏。..
本书是学习使用opengl进行3d游戏设计的一个很实用的资料,非常适合打算进行游戏开发的程序员使用,也适合其他3d应用程序开发的程序员使用。...
在本书中,首先介绍了opengl和directx的产生背景,对它们的工作机理给出一个总体的描述,然后着重介绍了opengl最有可能应用于游戏开发的技术。再后,介绍了如何把所有的技术结合在一起,搭建一个自己的游戏框架,用opengl做图形系统部分,用directsound和irectlnout做声音和设备输入系统部分。最后,本书将介绍如何利用这个游戏框架和本书所涵盖的各种技术来创建一个完整的3d游戏。..
本书是学习使用opengl进行3d游戏设计的一个很实用的资料,非常适合打算进行游戏开发的程序员使用,也适合其他3d应用程序开发的程序员使用。...
目录回到顶部↑
第1篇 opengl和directx的介绍.
第1章 而今迈步从头越--opengl和directx
1.1 开发游戏需要理由吗
1.2 3d游戏世界
1.3 游戏的元素
1.4 开发工具
1.5 什么是opengl
1.5.1 opengl的历史
1.5.2 opengl的体系结构
1.5.3 opengl实用库
1.5.4 什么是glut
1.5.5 轻松一瞥
1.6 什么是directx
1.6.1 directx的历史
1.6.2 directx体系结构
1.7 0pengl与directx
本章小结
第2章 windows操作系统平台上的opengl编程
2.1 windows编程介绍
2.1.1 windows应用程序基础
第1章 而今迈步从头越--opengl和directx
1.1 开发游戏需要理由吗
1.2 3d游戏世界
1.3 游戏的元素
1.4 开发工具
1.5 什么是opengl
1.5.1 opengl的历史
1.5.2 opengl的体系结构
1.5.3 opengl实用库
1.5.4 什么是glut
1.5.5 轻松一瞥
1.6 什么是directx
1.6.1 directx的历史
1.6.2 directx体系结构
1.7 0pengl与directx
本章小结
第2章 windows操作系统平台上的opengl编程
2.1 windows编程介绍
2.1.1 windows应用程序基础
前言回到顶部↑
3D视频游戏是很有趣的。这些游戏所创造的具有沉浸感的虚拟世界对于人类的感知是一个挑战,而对这些游戏的开发也同样是一个具有挑战性的工作。在此,我要告诉你,现在是学习3D游戏编程的最佳时机。如果你想要开发PC游戏,或者仅仅是想了解一下游戏开发,那么现在正是时候,这本书就可以满足你。.
以我的观点来看,如今的游戏开发最令人难以置信的是在拥有最新的图形卡计算机上的那些众多的3D图形功能和性能。在过去,游戏图形硬件经常是在走两个极端。一方面是来自于一些专业公司,如SiliconGraphics(我的前任雇主)的UNIX工作站所提供的图形功能,它们的价格只有在大的组织机构中的科学家、工程师和艺术家才能够承受。尽管这些工作站中存在着一些裉酷的游戏,但是没有人会仅仅为了玩其中的游戏而购买它!另一方面,游戏控制平台以游戏玩家们可以接受的价格提供图形硬件,;但是控制平台编程却不是一个开放的技术,只有专业的游戏开发人员才能接触到所需的开发环境。
与经济的游戏控制平台不同,高端的图形工作站非常昂贵,因此就需要它们的3D编程接口必须非常的高效和简单。Silicon Graphics开发了一种高性能的,简单的编程接口,称为IRISGL,其中GL是graphics library的缩写。以此为基础,IRIS GL逐渐改善发展成为一个3D编程接口——OpenGL,UNIX工作站厂商都以此为标准。有成千上万的3D工程、科学、医学和动画应用程序使用OpenGL。微软公司也在它的NT工作站操作系统中将OpenGL作为标准:后来,微软公司在Windows 95以及其后的操作系统中都添加了对OpenGL的支持。
OpenGL最根本的目的是为硬件加速的3D绘制而设计的。在高端的Silicon Graphics工作站上,每一个OpenGL调用都是直接依赖于其执行的图形硬件。在OpenGL最初被移植到PC机上的时候,OpenGL命令必须依靠CPU来处理,‘因此OpenGL并没有展现出它应有的速度优势。幸运的是,很快PC机的图形硬件也能够实现OpenGL了。如今,PC机的图形硬件,诸如NVIDIA的GeForee图形芯片,能够在硬件中直接执行OpenGL命令。半导体技术的持续发展以及图形芯片设计人员的聪明才智,使得现在的PC图形芯片的速度已经是几年前最好的SiliconGraphics系统的好几倍了(更别提相比而言非常便宜的价格了!)。随着PC图形硬件的发展,OpenGL已经集成了大量的诸如多纹理映射这样的针对游戏的扩展功能。
这样就产生了一个令人惊奇的结合体,专业3D应用程序的最好的3D编程接口,同时也是游戏的最佳3D编程接口。而且OpenGL不仅仅适用于Windows PC,它现在还是Mac的标准3D编程接口,包括了Apple的OS X版本。OpenGL还可用于所有的UNIX工作站,包括Sun、HP和IBM,当然还有Silicon Graphics。OpenGL同时还是开放源代码软件运动的主力;Mesa和原来的Silicon Graphics OpenGL样例实现版本提供了对LinuxPC的OpenGL支持。如果游戏控制平台也接受OpenGL的话,我是不会感到奇怪的。
如果你很熟悉最新的3D PC游戏,我敢确信你一定听说过,并且很可能玩过以OpenGL为基础的游戏。其中比较著名的包括:id Software出品的所有的Quake系列游戏和即将推出的Doom 3;Valve公司的HalfLife;来自Raven Software的Soldier of Fortune和Star Trek的Voyager-Elite Force;Dynamix的Tribes 2,以及Croteam的SeriousSam。所有这些游戏背后的开发人员一度都是编程新手,但是他们拥有学习3D游戏编程的满腔热情,并实现了他们的游戏。也许你也会将你的游戏添加到上面的名单中,谁知道呢?
本书介绍了如何用高性能的图形和游戏函数库来开发游戏。本书是作者多年工作的积累,它是一个丰富的资料库,能很好地引导读者去创作精彩的游戏。
本书展示如何使用OpenGL开发游戏的图形系统部分。由于OpenGL只是图形函数库,而游戏还需要声音、音乐以及输入设备等其他要素,我们就把DirectX也涵盖进了本书。
对于期望成为游戏开发者的人来说,本书会填补相关资料中的一些空白。基于DirectX的游戏编程的书籍已有很多,同样基于OpenGL的图形学的书籍也不少,但到目前为止,还没有一本书同时涵盖了这两方面内容。..
本书涵盖了创建一个游戏的全部工作。当然,图形是任何3D游戏的基石,因此我们在本书的开始对OpenGL的应用做了介绍。此外,本书还涉及了建立一个PC游戏所需的其他关键技术:使用DirectX Input获取用户的输入、用DirectX Audio处理声音和音乐、载入纹理和3D角色模型文件、处理真实物体碰撞和相互作用的基本物理概念,以及整体游戏体系结构设计。
虽然我们会在本书中同时涵盖OpenGL和DirectX的内容;但并不打算把本书写成它们的完全参考手册。拄本书中只会论述那些游戏开发和本书演示程序所需的部分。在书的末尾,将列出一些资料,通过它们能更全面深入地学习这些功能强大的函数库。
本书分为三篇。
在第一篇中,我们先为后面所讲述的内容打好基础。回顾了OpenGL和DirectX的产生背景和历史,对它们的工作机理给出了一个总体的描述。因为我们把Windows作为开发平台,所以在这一部分简述了Windows编程的要点。同时为了使读者做好与3D图形打交道的准备,我们还讲述了3D的理论基础。
第二篇,介绍OpenGL,着重于那些最有可能应用于游戏的技术。这一部分的所有章节都有演示程序,它们向你展示OpenGL是如何工作的,同时也给读者提供了自己体验和创新的机会。
第三篇,我们介绍如何把所有的技术结合在一起来搭建一个你自己的游戏框架,用OpenGL做图形系统部分,用DirectSound和Directlnput做声音和设备输入系统部分。最后,我们将会向你展示如何利用这个游戏框架和本书所涵盖的各种技术来创建一个3D游戏。
除了你将从本书看到的内容外,我们还随书赠送一些资料,其中包括了大量的演示程序、游戏和指南,它是本书的一个很好的补充。
作为作者,本书的出版令我非常激动。本书是学习使用OpenGL来进行3D游戏设计的一个很实用的资料,这对于那些有此打算的PC程序员正合适。
即使读者不是以开发游戏为生的,对于OpenGL和游戏开发的学习也将会有助于你鉴赏所玩游戏背后的技术,对于计算机编程技术也是一个充实。OpenGL不仅仅是针对于游戏的,这一事实使得它同时也是开发其他的3D应用程序软件的非常有价值的编程接口。那么就让我们开始吧!...
Mark J.Kilgard
NVIDA公司图形软件工程师
以我的观点来看,如今的游戏开发最令人难以置信的是在拥有最新的图形卡计算机上的那些众多的3D图形功能和性能。在过去,游戏图形硬件经常是在走两个极端。一方面是来自于一些专业公司,如SiliconGraphics(我的前任雇主)的UNIX工作站所提供的图形功能,它们的价格只有在大的组织机构中的科学家、工程师和艺术家才能够承受。尽管这些工作站中存在着一些裉酷的游戏,但是没有人会仅仅为了玩其中的游戏而购买它!另一方面,游戏控制平台以游戏玩家们可以接受的价格提供图形硬件,;但是控制平台编程却不是一个开放的技术,只有专业的游戏开发人员才能接触到所需的开发环境。
与经济的游戏控制平台不同,高端的图形工作站非常昂贵,因此就需要它们的3D编程接口必须非常的高效和简单。Silicon Graphics开发了一种高性能的,简单的编程接口,称为IRISGL,其中GL是graphics library的缩写。以此为基础,IRIS GL逐渐改善发展成为一个3D编程接口——OpenGL,UNIX工作站厂商都以此为标准。有成千上万的3D工程、科学、医学和动画应用程序使用OpenGL。微软公司也在它的NT工作站操作系统中将OpenGL作为标准:后来,微软公司在Windows 95以及其后的操作系统中都添加了对OpenGL的支持。
OpenGL最根本的目的是为硬件加速的3D绘制而设计的。在高端的Silicon Graphics工作站上,每一个OpenGL调用都是直接依赖于其执行的图形硬件。在OpenGL最初被移植到PC机上的时候,OpenGL命令必须依靠CPU来处理,‘因此OpenGL并没有展现出它应有的速度优势。幸运的是,很快PC机的图形硬件也能够实现OpenGL了。如今,PC机的图形硬件,诸如NVIDIA的GeForee图形芯片,能够在硬件中直接执行OpenGL命令。半导体技术的持续发展以及图形芯片设计人员的聪明才智,使得现在的PC图形芯片的速度已经是几年前最好的SiliconGraphics系统的好几倍了(更别提相比而言非常便宜的价格了!)。随着PC图形硬件的发展,OpenGL已经集成了大量的诸如多纹理映射这样的针对游戏的扩展功能。
这样就产生了一个令人惊奇的结合体,专业3D应用程序的最好的3D编程接口,同时也是游戏的最佳3D编程接口。而且OpenGL不仅仅适用于Windows PC,它现在还是Mac的标准3D编程接口,包括了Apple的OS X版本。OpenGL还可用于所有的UNIX工作站,包括Sun、HP和IBM,当然还有Silicon Graphics。OpenGL同时还是开放源代码软件运动的主力;Mesa和原来的Silicon Graphics OpenGL样例实现版本提供了对LinuxPC的OpenGL支持。如果游戏控制平台也接受OpenGL的话,我是不会感到奇怪的。
如果你很熟悉最新的3D PC游戏,我敢确信你一定听说过,并且很可能玩过以OpenGL为基础的游戏。其中比较著名的包括:id Software出品的所有的Quake系列游戏和即将推出的Doom 3;Valve公司的HalfLife;来自Raven Software的Soldier of Fortune和Star Trek的Voyager-Elite Force;Dynamix的Tribes 2,以及Croteam的SeriousSam。所有这些游戏背后的开发人员一度都是编程新手,但是他们拥有学习3D游戏编程的满腔热情,并实现了他们的游戏。也许你也会将你的游戏添加到上面的名单中,谁知道呢?
本书介绍了如何用高性能的图形和游戏函数库来开发游戏。本书是作者多年工作的积累,它是一个丰富的资料库,能很好地引导读者去创作精彩的游戏。
本书展示如何使用OpenGL开发游戏的图形系统部分。由于OpenGL只是图形函数库,而游戏还需要声音、音乐以及输入设备等其他要素,我们就把DirectX也涵盖进了本书。
对于期望成为游戏开发者的人来说,本书会填补相关资料中的一些空白。基于DirectX的游戏编程的书籍已有很多,同样基于OpenGL的图形学的书籍也不少,但到目前为止,还没有一本书同时涵盖了这两方面内容。..
本书涵盖了创建一个游戏的全部工作。当然,图形是任何3D游戏的基石,因此我们在本书的开始对OpenGL的应用做了介绍。此外,本书还涉及了建立一个PC游戏所需的其他关键技术:使用DirectX Input获取用户的输入、用DirectX Audio处理声音和音乐、载入纹理和3D角色模型文件、处理真实物体碰撞和相互作用的基本物理概念,以及整体游戏体系结构设计。
虽然我们会在本书中同时涵盖OpenGL和DirectX的内容;但并不打算把本书写成它们的完全参考手册。拄本书中只会论述那些游戏开发和本书演示程序所需的部分。在书的末尾,将列出一些资料,通过它们能更全面深入地学习这些功能强大的函数库。
本书分为三篇。
在第一篇中,我们先为后面所讲述的内容打好基础。回顾了OpenGL和DirectX的产生背景和历史,对它们的工作机理给出了一个总体的描述。因为我们把Windows作为开发平台,所以在这一部分简述了Windows编程的要点。同时为了使读者做好与3D图形打交道的准备,我们还讲述了3D的理论基础。
第二篇,介绍OpenGL,着重于那些最有可能应用于游戏的技术。这一部分的所有章节都有演示程序,它们向你展示OpenGL是如何工作的,同时也给读者提供了自己体验和创新的机会。
第三篇,我们介绍如何把所有的技术结合在一起来搭建一个你自己的游戏框架,用OpenGL做图形系统部分,用DirectSound和Directlnput做声音和设备输入系统部分。最后,我们将会向你展示如何利用这个游戏框架和本书所涵盖的各种技术来创建一个3D游戏。
除了你将从本书看到的内容外,我们还随书赠送一些资料,其中包括了大量的演示程序、游戏和指南,它是本书的一个很好的补充。
作为作者,本书的出版令我非常激动。本书是学习使用OpenGL来进行3D游戏设计的一个很实用的资料,这对于那些有此打算的PC程序员正合适。
即使读者不是以开发游戏为生的,对于OpenGL和游戏开发的学习也将会有助于你鉴赏所玩游戏背后的技术,对于计算机编程技术也是一个充实。OpenGL不仅仅是针对于游戏的,这一事实使得它同时也是开发其他的3D应用程序软件的非常有价值的编程接口。那么就让我们开始吧!...
Mark J.Kilgard
NVIDA公司图形软件工程师








点击看大图






加载中...

