用Delphi + DirectX开发简单RPG游戏

2016-01-29 14:12 66 1 收藏

用Delphi + DirectX开发简单RPG游戏,用Delphi + DirectX开发简单RPG游戏

【 tulaoshi.com - Delphi 】

 
提到 RPG (角色扮演游戏,Role Play Game),在座各位恐怕没有不熟悉的。从古老经典的 DOS 版《仙剑奇侠传》到新潮花哨的《轩辕剑》系列,无不以曲折优美的故事情节,美丽可人的主角,悦耳动情的背景音乐,震撼了每一个玩家的心灵。而说到 RPG,就不能不提 DirectX,因为 PC 上大部分的 RPG 都是用这个冬冬开发的。早在《轩辕剑叁外传——天之痕》推出的时候,我就曾想过用 DirectX 写一个自己的 RPG,自己来安排故事情节的发展,却总是因为这样或那样的事情,一直没有能够实现这个心愿。在耗费了宝贵的几年青春,搞定了诸如考试、恋爱、出国等琐碎杂事之后,我终于可以在这个 SARS 肆虐的时代,坐在陪伴了我整个大学生涯的电脑前,听着颓废而又声嘶力竭的不知名歌曲,写一些一直想写却没有写的东西。

  DirectX 简介

  DirectX 对于大多数游戏爱好者来说都不陌生(当然,那些只在DOS下艰苦作战的朋友例外),在安装一个游戏前,系统总是会提示你是否需要同时升级 DirectX。简单地说,DirectX 就是一系列的 DLL (动态连接库),通过这些 DLL,开发者可以在无视于设备差异的情况下访问底层的硬件。DirectX 封装了一些 COM(Component Object Model)对象,这些 COM 对象为访问系统硬件提供了一个主要的接口。首先,我们先来看一下 DirectX 的结构:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/delphi/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/delphi/)



  图1:DirectX 基本结构

  DirectX 目前主要由以下七个主要部分组成:

  DirectDraw – 为程序直接访问显存提供接口,同时和其它的Windows应用程序保持兼容。
  Direct3D – 为访问3D加速设备提供接口。
  DirectInput – 为各种输入设备提供接口,比如鼠标,键盘,力反馈游戏手柄和操纵杆等。
  DirectPlay – 为游戏提供网络功能接口,比如支持通过 TCP/I、IPX 等协议进行游戏中的数据传输。 
  DirectSound – 为访问声卡提供接口,支持WAV、MIDI 等文件的直接播放。 
  DirectSound3D –通过此接口,可以模拟出某一个声音在三维空间中任何一个位置的播放所产生的效果,从而达到逼真的环绕立体声。 
  DirectMusic – 此接口主要是生成一系列的原始声音采样反馈给相应的用户事件。 

  开发工具(Delphi & DelphiX)

  下一步,我们来介绍开发工具。我们通常所安装的其实只有 DirectX 的运行库(一系列封装好的DLL文件),其内部函数结构非常复杂,所以我们还需要 DirectX 的开发工具。所谓工欲善其事,必先利其器,虽然微软公布了 DirectX SDK,但是由于所有的头文件都是用 C/C++ 写成的,作为 Delphi 的热情拥护者,我们还是无从下手。把 C/C++ 写成的代码转换成 Pascal 可不是一件容易的事,但是不必担心,这项工作已经有人做好了。日本人 Hiroyuki Hori 为 Delphi 写了一个免费的组件包,称作 DelphiX。这些组件可以使得开发者可以轻松地访问 DirectX 的 DirectDraw、Direct3D、DirectSound、DirectInput(支持力反馈手柄)和 DirectPlay 对象。目前的 DelphiX 包支持 Borland Delphi 3/4/5/6/7 和 DirectX 7.0 以上版本(见图2)。安装了 DelphiX 之后,我们将不需要再安装微软的 DirectX SDK。在这篇文章里我们将使用的就是 DelphiX。

提到 RPG (角色扮演游戏,Role Play Game),在座各位恐怕没有不熟悉的。从古老经典的 DOS 版《仙剑奇侠传》到新潮花哨的《轩辕剑》系列,无不以曲折优美的故事情节,美丽可人的主角,悦耳动情的背景音乐,震撼了每一个玩家的心灵。而说到 RPG,就不能不提 DirectX,因为 PC 上大部分的 RPG 都是用这个冬冬开发的。早在《轩辕剑叁外传——天之痕》推出的时候,我就曾想过用 DirectX 写一个自己的 RPG,自己来安排故事情节的发展,却总是因为这样或那样的事情,一直没有能够实现这个心愿。在耗费了宝贵的几年青春,搞定了诸如考试、恋爱、出国等琐碎杂事之后,我终于可以在这个 SARS 肆虐的时代,坐在陪伴了我整个大学生涯的电脑前,听着颓废而又声嘶力竭的不知名歌曲,写一些一直想写却没有写的东西。

  DirectX 简介

  DirectX 对于大多数游戏爱好者来说都不陌生(当然,那些只在DOS下艰苦作战的朋友例外),在安装一个游戏前,系统总是会提示你是否需要同时升级 DirectX。简单地说,DirectX 就是一系列的 DLL (动态连接库),通过这些 DLL,开发者可以在无视于设备差异的情况下访问底层的硬件。DirectX 封装了一些 COM(Component Object Model)对象,这些 COM 对象为访问系统硬件提供了一个主要的接口。首先,我们先来看一下 DirectX 的结构:

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/delphi/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/delphi/)<

来源:http://www.tulaoshi.com/n/20160129/1492737.html

延伸阅读
标签: Delphi
  1.建立临时表 数据输入是开发数据库程序的必然环节。在Client/Server结构中,客户端可能要输入一批数据后,再向服务器的后台数据库提交,这就需要在本地(客户端)建立临时数据表来存储用户输入的数据,待提交后,清除本地表数据。这种方法的好处是:提高输入效率,减小网络负担。 由于用户一次输入的数据量一般...
  关键词: Delphi;Word;Excel;报表;?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /> 1.引言 在利用Delphi开发应用程序的时候,通常我们要设计出很多各种格式的文档、报表,经常要进行文件的创建、编辑及修改,虽然Delphi本身提供了很多设计报表的控件或方法,但是存在明显的不足,比如中文...
OpenGL最初是由Silicon图形公司开发的底层图形库规范。你的系统中准确实现这个规范的部分,通常...
方案- Midas DCOM COM+ ASTA RemoteObject .NET 提供者 Borland微软微软http://www.astatech.comhttp://www.remobjects.com微软 核心技术 COMCOMCOMASTA自己的,类同Midas, 但ߎ...
多和宝宝说话 开启宝宝语言能力   5个月后, 宝宝 对声音非常敏感,妈妈重复过几次的话语,宝宝能在较大程度上了解其中的意思,并储备在大脑里,为他的语言能力打基础,宝宝听的越多,将来的语言能力越强,所以要多跟宝宝说话,让他多听。 如何和宝宝说话开启宝宝语言能力呢?以下是方法和注意事项: ...

经验教程

657

收藏

91
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部