开发游戏什么东西一定要托运学DX 和 OPENGL这类东西吗

查看: 22386|回复: 30
学习游戏开发,先学OpenGL再学Direct3D还是直接学习Direct3D?
学习游戏开发,先学OpenGL再学Direct3D还是直接学习Direct3D?
本人为在校大学生,刚刚开始学习Direct3D,但是发现Direct3D网上的教程远没有OpenGL多(主要现在学习遇到瓶颈,周围没人帮解答),然而从事游戏开发方面,在游戏上又是Direct3D的天下,想请教下各位大大们。是先学OpenGL再学Direct3D还是直接学习Direct3D。
如果是先学OpenGL再学Direct3D,那opengl学到什么程度再学Direct3D?
对了现在学习Direct3D正在看《DirectX 9.0 3D游戏开发编程基础》...
先读好书,同学。。。
opengl和Directx学一个就可以了,DX的资料还是很多的啊。但是现在在游戏公司直接使用DX的机会很少,感觉CODING能力才是关键。
本帖最后由 goteet 于
15:25 编辑
使用dx 写起程序来,只要看完sdk的文档,基本都能写出来。
使用gl 你对着wiki一模一样的代码你都不一定能出效果。
包括一些比较基础的变换,管线的内容,dx的文档都有介绍,不用单独去找,我觉得直接看dx会比较好。
如果使用网教程的话-&&-我什么建议也没有,你当我“就看看,不说话。”。
我现在在读硕,研究方向是布料模拟,以后也准备投身游戏行业。我首先学了opengl 红宝书、蓝宝书。现在在看橙宝书(OpenGL Shading Language),感觉是和红宝书类似的手册,比较难读,于是转看OpenGL 4.0 Shading Language Cookbook。现在才刚开头。偏学术的工作还是用opengl的多一点,所以我先学的 GL。我觉得学OpenGL不妨碍学DX,反而可以有所促进。
我看完红蓝宝书之后看了楼主正在看的龙书(龙书还有DX10 HLLSL等版本,官网上有)。由于前面的opegl经验,龙书很快看完了(过了一遍,例子没动手敲)。感觉有GL基础看DX会快很多。DX几乎就是为做游戏而生的,很多方便的API是OpenGL没有,不说别的在OpenGL里显示几个字母、加载几张纹理图片、加载几何模型就比在DX里麻烦许多。不过这些麻烦也促使我去自己动手实现这些个“方便”的API,其中可以学到不少好东西。NEHE的网站当然是不错的参考资料。
关于OpenGL游戏编程书籍
NEHE网站上有本推荐的Beginning OpenGL Game Programming.(封面一个红的龙头张着大嘴),楼主不妨看看。现在又有一本More OpenGL Game Programming.
另外我还有一本停止印刷的OpenGL游戏编程(徐明亮),虽然其中部分代码明晃晃地抄了NEHE等其它网上的资料,虽然书里面主要是代码,但也能从这本不怎么地的书中学到了粒子系统、场景漫游等等技术细节。
还有一些不错的网站和个人博客,我权限不够,没法粘URL。Sorry。
坚持OpenGL!!
个人感觉学一个就可以了,另外一个就很快通了,毕业原理差不多。就像语言一样,你学会了C++,难道还要从头学什delphi,JAVA吗?不用了,一个星期搞定。
cybercser 发表于
我现在在读硕,研究方向是布料模拟,以后也准备投身游戏行业。我首先学了opengl 红宝书、蓝宝书。现在在看 ...
感谢回复~&&如果学了opengl再学DX,opengl要学到什么程度才行?
我现在龙书才看了一半,主要是他的主要流程还是没有搞明白。知识点很乱,不知道从何下手,离开书本就什么也弄不出来0.0
臨風輕嘆 发表于
感谢回复~&&如果学了opengl再学DX,opengl要学到什么程度才行?
我现在龙书才看了一半,主要是他的主要流 ...
我也不是什么大牛,说的不一定对。楼主择其善者而从之。红宝书蓝宝书目前涵盖了OpenGL2.1之前的内容,老式渲染管线+GLSL皮毛。如果通读过这两本(红宝书乃手册比较枯燥,需要耐心),加之3D图形学的基础(至少懂得几何变换、光照模型之类的基础知识),看龙书应该没什么障碍,甚至会有似曾相识的感觉。从体例来说,我感觉红蓝宝书和龙书讲的都差不多,无非是流水线、基本图元画法、颜色、光照、纹理、缓冲器等等(基本原理都是一样的嘛)。如果有“乱”的感觉,说明3D图形学的基础还不大牢吧,冒犯了,见谅。
我的基本观点是:做游戏,最靠谱的还是DX。学OpenGL不妨碍你理解DX。3D基础是王道,学好了基础,DX、OpenGL任选一样、或者钗黛双收都行。
cybercser 发表于
我也不是什么大牛,说的不一定对。楼主择其善者而从之。红宝书蓝宝书目前涵盖了OpenGL2.1之前的内容,老 ...
3D图形学?我没看过哎0.0还要先看看图形学的?悲剧,我本来打算看完龙书再看图形学的...看来是我本末倒置了
本人也是新手,就是不知道学opengl应该看什么书
英语学好吧……
本帖最后由 elanchao 于
21:16 编辑
我就稍微感慨下,搞3D和图形都成大坑了,还有那么多人投进来。
关于Direct3D和OpenGL到底学那个,我的观点就是学Direct3D要比OpenGL轻松多了,现在你看关于OpenGL的书很多,好像Direct3D的书很少?事实上Direct3D都不需要书了,人家自己有详细的SDK文档,写的密密麻麻的(你在市面上买的某些书就是抄SDK文档的,一模一样);另外Direct3D的SDK做了很多其他的工作,让程序员专心图形,而OpenGL只管渲染,程序员要做的工作非常的多(亲身体会),另外市面上的书还有网络上的很多关于OpenGL的内容都是老旧的Compatibility profile的内容(比如立即模式这些老掉牙的API)。
不过到后来上面的都是废话,简单通俗的说Direct3D和OpenGL都是***为显卡跑腿的,能有什么太大的区别,有很多地方非常的相似。Coding能力和图形算法知识我觉得才是本质要掌握的吧。
ps:同上面,大学生还是好好读书吧,高数、线代英语别又挂科了。
游戏开发啊,opengl和D3D都可以不学,那是用来做游戏引擎开发的。你还不如直接学习某些成熟的引擎呢。
国内目前学学unity和csharp应该好进圈
Baesky 发表于
国内目前学学unity和csharp应该好进圈
那玩意不是给美术用的么...
要说新人我还是推荐DX学起..经典的龙书 + DXSDK安装包里面的例子..妥妥的
新人很少有机会去编引擎,所以DX和OPENGL先任学一个。如果接触不到项目的话,先不用很深入得学,学了也白学。跟着项目学是最快的。
Code能力很重要,Code思想也很重要。
再来罗嗦几句。
我也算从学GL和DX开始的过来人,真心觉得,学GL适合入门图形学,为什么?简单清晰明了,搞个glut的小程序就可以开始学用GL的API了,迅速理解实时渲染,然后就可以照着一些方法开始实现一些图形效果了。
其实到这里,和游戏本身还有十万八千里,因为游戏本身比GL或者DX这些API范围更加广泛,所以如果想要真正的搞游戏,不如从某个游戏引擎,比如火热的Unity开始学,理解各个系统模块的交互和组成,先形成一种大局观。单一的学GL或者DX真心不够,除非你的工作只是和图形学相关的,或者以后决定只搞游戏渲染这个一块,可以理解,这样对于自身也是个巨大的局限,说真话,如今搞渲染的真心没啥出路。
到了最后就是两个问题,就是1)英语能力2)足够的体力和耐心,只要有2个,基本上就可以了,学啥干啥都一样了,殊途同归。
Jedimaster 发表于
再来罗嗦几句。
我也算从学GL和DX开始的过来人,真心觉得,学GL适合入门图形学,为什么?简单清晰明了,搞 ...
顺便再加一条,抽象思维(高数,线代)能力。
学游戏不一定一上来就学DX和OPENGL,可以自己试着用GDI实现一套流水线。
waynewying 发表于
学游戏不一定一上来就学DX和OPENGL,可以自己试着用GDI实现一套流水线。
你这哪是学“游戏”,明明是学“图形”的路子。。
keyring 发表于
你这哪是学“游戏”,明明是学“图形”的路子。。
呵呵,是的,我的确有些偏图形了。不
个人觉得就绘图而言,OpenGL的API比DirectX要好用一些……
其实国内游戏开发相关的话,DirectX的资料应该是比OpenGL多的。用OpenGL的大部分都是搞图像处理之类的吧……
然后我想说其实这两者都是同一个层面上的东西。举个不恰当的例子,比如说你用windows sdk写2D游戏比较熟练,你改用SDL,甚至是跑到linux里用SDL写游戏也能很快上手。逻辑基本就是一样的,就是绘图函数不同而已。
_(:3」∠)_其实我也是菜鸟
个人觉得DX的书籍在国内太底端(一大堆)和太高端(GPU系列等),很难找到一本适应面广的。
keyring 发表于
游戏开发啊,opengl和D3D都可以不学,那是用来做游戏引擎开发的。你还不如直接学习某些成熟的引擎呢。 ...
有道理。我们的引擎不是商业的,不友好和完善,程序员们倒是比较多机会用到,对于那些商业的,可能就像同事说的只要会“调用”就可以了。
本帖最后由 时光先生 于
15:49 编辑
directx的思维方式和c++较为接近,opengl和c一样。directx比较容易学。
本人的学习过程是先directx,然后opengl,opengl的固定函数逻辑基本没学(相对于dx,个人觉得比较繁琐),直接学了gpu流水线的那套。然后接着学了opengles2.0(相对于opengl不少细节又不一样)。
游戏越来越跨平台化,dx和ogl最终都需要学。先学dx更容易。
我觉得opengl和diect都是相通的,学完一个,另一个也会了
我认识的平朋友从这两个方向入门的都有,只要坚持,应该都能成功的哈
zhanxiaojian 发表于
我觉得opengl和diect都是相通的,学完一个,另一个也会了
有道理。请问您是学生呢?还是工作中哈
游戏开发这两个基本都用不到。。。。。。
2D游戏我见过直接用DX甚至是GDI开发的,但3D游戏就真的很少很少了
用DX和OPENGL感觉就是用来学图形学的
如果以后想做游戏还不如多看看游戏人工智能和软件工程方面的书,做网游还要再加上一个TCP/IP
Powered byOpenGL游戏程序设计(盘)--详细介绍
图书书名 图书作者
图书书号发行号系列名
&当前位置:
OpenGL游戏程序设计(盘)
OpenGL游戏程序设计(盘)
作者:(美)Kevin Hawkins
Dave Astle 著
书名:OpenGL游戏程序设计(盘)
定价:¥59 元
丛书名: &
免费资源下载:
配套光盘提供相关资料/课件/素材等
本书PPT下载:
目录和样章下载:
模拟试题库下载:附带光盘
教学资料包下载:附带光盘
实例素材下载:附带光盘
标准书号:&7-03-
字数(千):&741
出版日期:&
发行号:&TP-3152
点击热度:&18650
习题答案下载:附带光盘
教学视频下载:附带光盘
电子教案下载:附带光盘
.........................................................................................
.........................................................................................
.........................................................................................
&&&&本书重点介绍了如何使用高性能的OpenGL图形与游戏函数库来开发游戏的视频部分。为了让读者了解创建一个游戏的全部过程,本书还包含了DirectX的内容。本书是涵盖这两方面内容的极少书籍之一。&&&&在本书中,首先介绍了OpenGL和DirectX的产生背景,对它们的工作机理给出一个总体的描述。然后着重介绍了OpenGL最有可能应用于游戏开发的技术。再后,介绍了如何把所有的技术结合在一起,搭建一个自己的游戏框架,用OpenGL做图形系统部分,用DirectSound和DirectInput做声音和设备输入系统部分。最后,本书将介绍如何利用这个游戏框架和本书所涵盖的各种技术来创建一个完整3D游戏。&&&&本书是学习使用OpenGL进行3D游戏设计的一个很实用的资料,非常适合打算进行游戏开发的程序员使用,也适合其他3D应用程序开发的程序员使用。
.........................................................................................
&&&&3D视频游戏是很有趣的。这些游戏所创造的具有沉浸感的虚拟世界对于人类的感知是一个挑战,而对这些游戏的开发也同样是一个具有挑战性的工作。在此,我要告诉你,现在是学习3D游戏编程的最佳时机。如果你想要开发PC游戏,或者仅仅是想了解一下游戏开发,那么现在正是时候,这本书就可以满足你。&&&&以我的观点来看,如今的游戏开发最令人难以置信的是在拥有最新的图形卡计算机上的那些众多的3D图形功能和性能。在过去,游戏图形硬件经常是在走两个极端。一方面是来自于一些专业公司,如Silicon&Graphics(我的前任雇主)的UNIX工作站所提供的图形功能,它们的价格只有在大的组织机构中的科学家、工程师和艺术家才能够承受。尽管这些工作站中存在着一些很酷的游戏,但是没有人会仅仅为了玩其中的游戏而购买它!另一方面,游戏控制平台以游戏玩家们可以接受的价格提供图形硬件,但是控制平台编程却不是一个开放的技术,只有专业的游戏开发人员才能接触到所需的开发环境。&&&&与经济的游戏控制平台不同,高端的图形工作站非常的昂贵,因此就需要它们的3D编程接口必须非常的高效和简单。Silicon&Graphics开发了一种高性能的,简单的编程接口,叫作IRIS&GL,其中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的&GeForce图形芯片,能够在硬件中直接执行OpenGL命令。半导体技术的持续发展以及图形芯片设计人员的聪明才智,使得现在的PC图形芯片的速度已经是几年前最好的Silicon&Graphics系统的好几倍了(更别提相比而言非常便宜的价格了!)。随着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样例实现版本提供了对Linux&PC的OpenGL支持。如果游戏控制平台也接受OpenGL的话,我是不会感到奇怪的。&&&&如果你很熟悉最新的3D&PC游戏,我敢确信你一定听说过,并且很可能玩过以OpenGL为基础的游戏。其中比较著名的包括:id&Software出品的所有的Quake系列游戏和即将推出的Doom&3;Valve公司的Half&Life;来自Raven&Software的Soldier&of&Fortune和Star&Trek的Voyager―Elite&Force;Dynamix的Tribes&2,以及Croteam的Serious&Sam。所有这些游戏背后的开发人员一度都是编程新手,但是它们拥有学习3D游戏编程的满腔热情,并实现了他们的游戏。也许你也会将你的游戏添加到上面的名单中,谁知道呢?&&&&本书介绍了如何用高性能的图形和游戏函数库来开发游戏。本书是作者多年工作的积累,它是一个丰富的资料库,能很好地引导读者去创作精彩的游戏。&&&&本书展示如何使用OpenGL开发游戏的图形系统部分。由于OpenGL只是图形函数库,而游戏还需要声音、音乐以及输入设备等其他要素,我们就把DirectX也涵盖进了本书。对于期望成为游戏开发者的人来说,本书会填补相关资料中的一些空白。基于DirectX的游戏编程的书籍已有很多,同样基于OpenGL的图形学的书籍也不少,但到目前为止,还没有一本书同时涵盖了这两方面内容。&&&&本书涵盖了创建一个游戏的全部工作。当然,图形是任何3D游戏的基石,因此我们将对OpenGL的一个实用的介绍作为了本书的开始。此外,本书还涉及了建立一个PC游戏所需的其他关键技术:使用Direct&X&Input获取用户的输入、处理声音和音乐、载入纹理和3D角色模型文件、处理真实的物体碰撞和相互作用的基本物理学概念及其实现,以及整体游戏体系结构的设计。&&&&虽然我们会在本书中同时涵盖OpenGL和DirectX的内容,但并不打算把本书写成它们的完全参考手册。在本书中只会论述那些游戏开发和本书演示程序所需的部分。在书的末尾,将列出一些资料,通过它们能更全面深入地学习这些功能强大的函数库。本书分为三篇。&&&&在第一篇中,我们先为后面所讲述的内容打好基础。回顾了OpenGL和DirectX的产生背景和历史,对它们的工作机理给出了一个总体的描述。因为我们把Windows作为开发平台,所以在这一部分简述了Windows编程的要点。同时为了使读者做好与3D图形打交道的准备,我们还讲述了3D的理论基础。&&&&第二篇,介绍OpenGL,着重于那些最有可能应用于游戏的技术。这一部分的所有章节都有演示程序,它们向你展示OpenGL是如何工作的,同时也给读者提供了自己体验和创新的机会。&&&&第三篇,我们介绍如何把所有的技术结合在一起来搭建一个你自己的游戏框架,用OpenGL做图形系统部分,用DirectSound和DirectInput做声音和设备输入系统部分。最后,我们将会向你展示如何利用这个游戏框架和本书所涵盖的各种技术来创建一个3D游&戏。&&&&除了你将从本书看到的内容外,我们还随书赠送一些资料,其中包括了大量的演示程序、游戏和指南,它是本书的一个很好的补充。随书资料可在www.sciencep.com上免费下载。&&&&作为作者,本书的出版令我非常激动。本书是学习使用OpenGL来进行3D游戏设计的一个很实用的资料,这对于那些有此打算的PC程序员正合适。&&&&即使读者不是以开发游戏为生的,对于OpenGL和游戏开发的学习也将会有助于你鉴赏所玩游戏背后的技术,对于计算机编程技术也是一个充实。OpenGL不仅仅是针对于游戏的,这一事实使得它同时也是开发其他的3D应用程序软件的非常有价值的编程接口。那么就让我们开始吧!
.........................................................................................
第1篇&&OpenGL和DirectX的介绍第1章&&而今迈步从头跃――OpenGL和DirectX1.1&&开发游戏需要理由吗1.2&&3D游戏世界1.3&&游戏的元素1.4&&开发工具1.5&&什么是OpenGL1.5.1&&OpenGL的历史1.5.2&&OpenGL的体系结构1.5.3&&OpenGL实用库1.5.4&&什么是GLUT1.5.5&&轻松一瞥1.6&&什么是DirectX1.6.1&&DirectX的历史1.6.2&&DirectX体系结构1.7&&OpenGL与DirectX本章小结第2章&&Windows操作系统平台上的&OpenGL编程2.1&&Windows编程介绍2.1.1&&Windows应用程序基础2.1.2&&从WinMain()开始2.1.3&&Windows&Procedure2.1.4&&窗口类2.1.5&&窗口类的注册2.1.6&&窗口的创建2.1.7&&消息循环2.1.8&&一个完整的Windows应用程序2.2&&WGL介绍2.2.1&&绘制环境2.2.2&&WGL的使用2.3&&像素格式2.3.1&&nSize2.3.2&&dwFlags2.3.3&&iPixelType2.3.4&&cColorBits2.4&&OpenGL&Windows应用程序2.5&&全屏OpenGL本章小结第3章&&3D图形学理论概览3.1&&标量、点和矢量3.1.1&&矢量的大小3.1.2&&矢量的归一化3.1.3&&矢量加法运算3.1.4&&矢量与标量的乘法运算3.1.5&&点积运算3.1.6&&叉积运算3.2&&矩阵3.2.1&&单位矩阵3.2.2&&零矩阵3.2.3&&矩阵加法和减法运算3.2.4&&矩阵乘法运算3.2.5&&矩阵的总体实现3.3&&变换3.3.1&&平移变换3.3.2&&旋转变换3.3.3&&缩放变换3.4&&投影3.4.1&&平行投影3.4.2&&透视投影3.5&&3D剪裁3.6&&光照3.6.1&&环境光3.6.2&&散射光3.6.3&&镜面反射光3.7&&纹理映射本章小结第2篇&&使用OpenGL第4章&&OpenGL状态和图元4.1&&状态函数4.2&&图元的处理4.2.1&&3D空间中点的绘制4.2.2&&3D空间中线的绘制4.2.3&&3D空间中的多边形的绘制4.2.4&&图元的使用本章小结第5章&&坐标变换和OpenGL矩阵5.1&&理解坐标变换5.1.1&&视点和眼坐标5.1.2&&视图变换5.1.3&&模型变换5.1.4&&投影变换5.1.5&&视区变换5.2&&OpenGL和矩阵5.2.1&&模型视图矩阵5.2.2&&平移变换5.2.3&&旋转变换5.2.4&&缩放变换5.2.5&&矩阵堆栈5.2.6&&机器人例程5.3&&投影变换5.3.1&&正交投影变换5.3.2&&透视投影变换5.3.3&&视区的设置5.3.4&&投影变换实例5.4&&自定义矩阵的使用5.4.1&&自定义矩阵的载入5.4.2&&矩阵的乘法运算5.4.3&&自定义矩阵的实例本章小结第6章&&添加颜色、混合与光照6.1&&颜色是如何工作的6.2&&在OpenGL中使用颜色6.2.1&&颜色深度6.2.2&&颜色立方体模型6.2.3&&OpenGL中的RGBA模式6.2.4&&OpenGL中的颜色索引模式6.3&&明暗处理6.4&&OpenGL中的光照6.4.1&&OpenGL光照和现实世界6.4.2&&材质6.4.3&&法线6.4.4&&OpenGL光照的使用6.5&&颜色混合透明度本章小结第7章&&位图、图像与OpenGL7.1&&OpenGL位图7.1.1&&位图的定位7.1.2&&位图的绘制7.1.3&&一个OpenGL位图例程7.2&&图像的使用7.2.1&&图像数据的绘制7.2.2&&屏幕的读取7.2.3&&屏幕数据的复制7.2.4&&放大、缩小和翻转7.3&&像素存储的管理7.4&&Windows位图7.4.1&&BMP文件格式7.4.2&&BMP文件的载入7.4.3&&BMP文件的输出7.5&&Targa图像文件7.5.1&&Targa文件格式7.5.2&&Targa文件的载入7.5.3&&Targa文件的输出本章小结第8章&&纹理映射8.1&&纹理映射的概览8.2&&纹理图的应用8.2.1&&2D纹理8.2.2&&1D纹理8.2.3&&3D纹理8.3&&纹理对象8.3.1&&纹理名字的生成8.3.2&&纹理对象的创建和使用8.4&&纹理的过滤处理8.5&&纹理模式8.6&&纹理坐标8.6.1&&重复和夹持纹理8.6.2&&mipmap和细节层次8.6.3&&mipmap的自动生成8.6.2&&例程――飘动的旗帜8.7.1&&例程的解释说明8.7.2&&例程的实现8.8&&例程――高程纹理地形8.8.1&&例程的解释说明8.8.2&&例程的实现本章小结第9章&&高级纹理映射9.1&&多纹理映射9.1.1&&多纹理支持的验证9.1.2&&扩展函数的访问9.1.3&&纹理单元的建立9.1.4&&纹理坐标的设置(指定)9.1.5&&综合应用9.2&&环境映射9.3&&纹理矩阵9.4&&光照映射9.5&&多通道多纹理映射本章小结第10章&&显示列表与顶点数组10.1&&显示列表10.1.1&&显示列表的创建10.1.2&&向显示列表中填充命令10.1.3&&显示列表的执行10.1.4&&显示列表的注意事项10.1.5&&显示列表的销毁10.1.6&&显示列表与纹理10.1.7&&例程:使用显示列表的机器人演示程序10.2&&顶点数组10.2.1&&顶点数组的启用10.2.2&&数组的使用10.2.3&&顶点数组与多纹理映射10.2.4&&数组的锁定10.2.5&&例程:再建地形演示程序本章小结第11章&&文本的显示11.1&&位图字体11.2&&轮廓字体11.3&&纹理映射字体本章小结第12章&&OpenGL缓存12.1&&什么是OpenGL缓存12.1.1&&像素格式的设置12.1.2&&缓存的清理12.2&&颜色缓存12.2.1&&双缓存系统12.2.2&&立体缓存12.3&&深度缓存12.3.1&&深度比较程序12.3.2&&深度缓存的使用12.4&&模板缓存12.5&&累积缓存本章小结第13章&&OpenGL二次曲面13.1&&OpenGL二次曲面的基础13.1.1&&绘制风格13.1.2&&法线13.1.3&&指向13.1.4&&纹理坐标13.1.5&&清理13.2&&圆盘13.3&&圆柱13.4&&球13.5&&例程:飞掠一个二次世界本章小结第14章&&曲线与曲面14.1&&曲线与曲面的描述14.1.1&&参数方程14.1.2&&控制点与连续性14.2&&求值程序14.3&&曲面14.4&&NURBS本章小结第15章&&特殊效果15.1&&标志板15.2&&粒子系统的使用15.2.1&&粒子15.2.2&&粒子系统15.2.3&&粒子系统管理器15.2.4&&实例15.2.5&&粒子系统的效果15.2.6&&例程:暴风雪15.3&&雾15.3.1&&OpenGL的雾15.3.2&&体积雾15.4&&镜像15.4.1&&光照的镜像15.4.2&&深度缓存的处理15.4.3&&使用模板缓存来处理有限的平面15.4.4&&对于非常规镜像表面的处理15.4.5&&对任意指向的平面的处理15.5&&阴影15.5.1&&静态阴影15.5.2&&投射阴影15.5.3&&模板阴影体15.5.4&&其他的方法15.5.5&&例程:镜像与阴影本章小结第3篇&&建立一个游戏第16章&&DirectX的使用:DirectInput16.1&&为什么要使用DirectInput16.1.1&&Windows消息16.1.2&&Win&3216.1.3&&DirectInput16.2&&DirectInput的初始化16.3&&DirectInput的使用16.3.1&&设备的添加16.3.2&&输入的获取16.3.3&&关闭16.4&&动作映射16.5&&输入子系统的建立16.6&&输入系统例程本章小结第17章&&DirectX&Audio的使用17.1&&声音的基础17.2&&什么是DirectX&Audio17.2.1&&DirectX&Audio的功能部件17.2.2&&音频数据流17.3&&使用DirectMusic加载和演奏音频17.3.1&&初始化COM17.3.2&&创建与初始化演奏对象17.3.3&&创建loader对象17.3.4&&载入一个segment对象17.3.5&&下载波段17.3.6&&演奏segment17.3.7&&停止一个segment的播放17.3.8&&segment是否正在播放17.3.9&&segment循环的控制17.3.10&&清理17.4&&一个简单的例程17.5&&Audiopath的使用17.5.1&&默认的Audiopath17.5.2&&标准Audiopath17.5.3&&在Audiopath上播放声音17.5.4&&从Audiopath获取对象17.6&&3D声音17.6.1&&3D声音坐标17.6.2&&感知17.6.3&&DirectSound&3D缓存17.6.4&&3D参数的设置17.6.5&&DirectSound&3D&听者17.6.6&&3D音效文本例程本章小结第18章&&3D模型的处理18.1&&3D模型文件格式18.2&&MD2文件格式18.2.1&&MD2的实现18.2.2&&MD2的载入18.2.3&&MD2的显示18.2.4&&添加纹理18.2.5&&模型的动画18.2.6&&开发一个CMD2Model类18.2.7&&模型动画的控制18.3&&最后的一点小资料本章小结第19章&&OpenGL物理建模19.1&&物理学的回顾19.1.1&&时间19.1.2&&距离、位移和位置19.1.3&&速度19.1.4&&加速度19.1.5&&作用力19.1.6&&动量19.1.7&&摩擦力19.2&&真实世界的模拟19.2.1&&任务的分解19.2.2&&定时19.2.3&&矢量19.2.4&&平面19.2.5&&物体19.2.6&&物体碰撞的处理19.2.7&&一个例程:空中曲棍球本章小结第20章&&建立一个游戏引擎20.1&&SimpEngine的设计20.1.1&&利用CNode管理数据20.1.2&&对象的处理:CObject20.2&&引擎核20.2.1&&输入系统20.2.2&&CEngine类20.2.3&&游戏循环20.2.4&&输入的处理20.2.5&&SimpEngine20.3&&视点20.4&&场景20.5&&模型的添加20.6&&音频系统20.7&&粒子系统本章小结第21章&&创建一个游戏:杀戮时刻21.1&&初始设计21.2&&游戏场景21.3&&敌人21.4&&火箭与爆炸21.5&&用户的交互21.6&&运行游戏21.7&&建立EXE可执行文件本章小结第4篇&&附&&录附录A&&在线资源A.1&&游戏开发A.2&&OpenGLA.3&&DirectXA.4&&其他的资源附录B&&随书所附资料的使用B.1&&用户界面B.2&&文件结构B.3&&系统要求B.4&&安装B.5&&其他相关问题与疑难解答信息B.6&&是否仍旧需要帮助
All Rights Reserved
地址:北京市海淀区北三环西路43号青云当代大厦21层2109&& 邮编:100086
站长QQ: Email: 电话:010-
版权所有:科学出版社 职教技术出版中心}

我要回帖

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信