第一章 第二节 本书游戏引擎工程的不同点

本书游戏引擎工程的不同点

这本书的目的是在示范如何创建一个示例游戏引擎时,讲解游戏引擎所有的基本组成部分。可以扩展示例游戏引擎来建造你的游戏。我使用DirectX 9来渲染。如果你偏好OpenGL,我把它作为编码练习留给你,用OpenGL API替换Direct3D API。两套API都支持相同的渲染能力。

 

本书研究的游戏引擎不专研使用vertexpixel shader可以作出的伟大的事情。(作为主题,DirectX 9里的新的高级着色语言可以充满一整本书。)也不研究如何优化地形渲染和角色动画。

 

在贯穿全书的示例引擎的开发中,我会更多的集中讲一个面向对象、通用的方法来进行游戏引擎的设计。这个游戏引擎不是意味着可以应用在下一代一鸣惊人的游戏中,去冲击市场。相反,我希望提供一个基本的,灵活的游戏引擎,你可以学到用在开发自己的3D游戏引擎的新知识。面向对象方法将会制作出一个模块化的引擎,它可以容易的修改和扩展,当你要把更加高级的游戏引擎组件加入其中时。

 

面向对象方法

为了开发一个清晰的、一般化的设计,我们在这个游戏引擎的设计和开发过程中使用面向对象技术。面向对象的设计和编程(当做的得当时),能得到一个简洁的、易懂的和易于维护的最终系统。我指定C#语言作为开发语言,因为它拥有这个项目所有需要的面向对象特性。

 

为什么是C#

你也许在为我选择C#语言作为开发语言而疑惑。基于性能考虑,近代几乎所有的游戏都是使用C或者C++开发的。Microsoft创造了C#语言,试图带给C++社区类似于Visual Basic的快速开发(RAD)。作为.NET首发阵容的一部分,Microsoft也增加了Visual Basic的性能和面向对象特性。DirectX 9的目标是把运行时间控制在C++的两倍之内。这就使得选择使用RAD语言变得非常有吸引力了。倾情喜爱C#是因为它有自动文档的功能。现在开发一个游戏通常是一个团队的努力。几乎不可能一个人单挑整个游戏。这使得共享清晰的代码和代码文档显得异常重要。C#中清晰的、面向对象的结构,结合良好的注释和文档约定,是你是否赶上时程的区别所在。

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值