感谢
特别感谢Emi Smith和Karen Gill 能如此耐心的和我一起完成这本书,也感谢Joseph Hall对于本书的技术校订,他对代码所做的注解完整了我的书。
同样感谢PTR的教程给了我这样一个机会去阐述象DirectX 这么美妙的主题。
最后,最衷心的感谢 Albert James,我的良师益友,正是他教会了我去爱这个工作。
关于作者
那是Wendy Jones还在初中的时候,从她第一眼看到Apple II电脑起,她就沉醉于其中再也走不出来了。之后,她就把她的大部分时间花费在了学习 BASIC 和图形编程上面,并学着用语言将脑海中的图像呈现在纸张上。之后,她又研习了其他各种语言,Pascal ,C,Java,还有 C++.
在那之后,她已经远远不满足于在DOS系统下所得到的一切,开始转向了windows ,不久之后,又投奔了.COM。但是互联网公司的发展远远没有他们鼓吹的那么好,于是Wendy开始将她的热情投入到了游戏开发方面。
但是让她真正对此行业产生浓厚的兴趣的,是她在Atari Humongous Entertainment担任游戏开发工程师的经历。在那个时候,她兼任PC平台和控制台下的开发,那些工作给她带来了巨大的挑战。
目前,她正在从事着PocketPc以及手掌游戏机的开发工作。
如果你对这本书有着任何的建议或者疑问,可以给她发email :gadget2032@yahoo.com
序论
游戏开发无疑是计算机世界中最美妙的一项工作了。还有什么比创造一个完全虚拟的世界更令人感觉到刺激的?那里的一切都曾经仅仅是在你的梦里出现过。你可以给玩家们一个虚拟的社会让他们去扮演他们梦想中的角色,创造他们的新生活。
游戏产业正在飞速发展中,其相关的科技也在随之进步。仅仅是在几年以前,消费市场上还未曾出现支持3D的硬件设备。只有昂贵的SGI工作站可以有能力实时显示3D效果,OpenGl技术还在萌芽状态。随着PC设备的平民化 ,OpenGl也开始向公众展示了它的能力。
在Microsoft推出DirectX之前,Windows平台被认为是很不适合游戏的。DirectX的推出,以及微软的不断努力,终于使其超越了OpenGL,并取而代之,逐渐成为了Windows下进行图像处理的新标准。在今天,绝大部分的PC游戏都是基于DirectX技术的,这样,才能让玩家们感受最先进的技术,体会到最真实的游戏世界。
必备知识:
熟悉C++语言,以及少许的面向对象编程经验,会让你对本书所提供的例子有着更深层次的理解。虽然文中所出现的大部分数学概念都解释的很详细,但能有些基本的数学常识当然是最好的。如果你有在Visual Studio .Net 2003或者其他的Visual Studio平台工作的经验,那就更好了。在下一节,会告诉你如何开始的。
如何使用这本书
本书分为三个部分。第一部分简单的介绍了DirectX,告诉你如何去开始你的第一个DirectX 程序。第二部分从3D以及D3D的概念着手,告诉你去建造一个3D世界所需要的基本知识。最后一个部分将扩展你对于D3D的应用,告诉你如何使用DirectSound去处理游戏中的音效,以及使用DirectInput来进行人机交互。在最后一个实例中,我们将会把书中所提到的所有技术融合起来,告诉你如何去运用你所学到的知识。
如果你已经有了DirectX的经验,或者已经写过那么些个3D小程序,你可以跳过第一章,直接从第二章开始。对于那些刚刚准备投入游戏开发事业的人们 ――― 还是从头到尾的把这本书认真看一遍吧,它会告诉你DirectX可以做些什么的。