用
DirectX 进行游戏程序设计
1.第 1 章:DirectX 简介
1.1 说明
虽然这篇文章中的例子用
Visal C/C++ MFC 开发的,但是我们要注意到
, MFC 掩藏了
许多更好的内容。
1.2 什么是 DirectX?
DirectX 是 MicroSoft 提出的解决游戏开发者如何在 Win95 之下开发最佳游戏的问题解
决方案。游戏通常需要计算机的强大绘图能力,这时候
Windows95 成了个障碍。
DirectX 是在游戏程序设计方面提供大量功能的 API(应用程序编程接口),当然在其它
方面也很有用。
DirectX 主要由五个部分组成,如下所示:
1.2.1.DirectX 组件
DirectDraw
2 维图形处理能力,表面,双缓冲,等等
Direct3D 是相对扩展功能的 3D 图形程序设计 API。
DirectSound 声音;3D 声音
DirectPlay
简化网络游戏的开发
DirectInput
处理各种外围设备输入
1.3.DirectX 性能和硬件加速
尽管
Direct3D 的软件性能并不差
,但是 DirectX 是为硬件加速设计的。这意味着图形卡
商能制造出以硬件支持
DirectDraw 和 Direct3D 的图形卡,并提供有关图形卡的驱动程序。
这将使图形卡执行绘图功能而
CPU 被解放了出来做其它的事情。典型的 Direct3D 加速器需
要至少
2 或 4 兆或者更多的显存来储存位图(计算机图形由象素组成)、纹理、精灵、覆盖图
(
overlay)和其它东西。
DirectDraw 和 Direct3D 在 硬 件 上 建 立 了 一 个 相 对 容 易 访 问 的 层 叫 作
“ 硬 件 抽 象
层
”(HAL)。假如有一个图形卡不提供以上功能。一个相应的软件执行程序将提供“硬件仿真
层
”(HEL)。
2.第 2 章:调色板,编写游戏的概念,双缓冲等
2.1 显示模式
屏幕模式是指用多少位储存屏幕上每像素颜色。自然地,被用于每一个象素的位越多,
同时显示的颜色就越多
;但是也就有更多数据移入显存用来更新屏幕。
1,2,4 和 8 位
“索引”方式(8 位这种称呼更流行,比 256 色模式更为人所知)
16-位(64K 色)高彩色模式
24-位(16.7M 色)真彩色模式
32-位 RGBA 方式。前 3 字节与 24-位方式相同;A 字节用于"阿尔法-通道",提供了象素
不透明性的信息。
这些模式在下列分辨率是典型的,有效的:
320x240
640x400
640x480