DirectX游戏编程基础教程

出版时间:2010-9  出版社:机械工业出版社  作者:王德才  页数:281  
Tag标签:无  

前言

DirectX最初是微软为了弥补Windows 3.1对图形、声音处理能力不足的缺陷,开发的一个附加工具包,主要用于在Windows平台上开发游戏。自从DirectX 1.0发布以来,DirectX的版本不断升级、功能逐渐完善,很快就成为对多媒体系统各个方面都有决定性影响的开发接口。目前DirectX主要由负责三维图形和动画开发的DirectX Graphics、负责音频开发的DirectX Audio以及支持各种输入设备的DirectX Input三部分组成,这三部分各自又包含众多功能组件。 在DirectX的所有功能组件中,负责3D图形和动画开发的Direct3D是最重要、最复杂、也是更新最快的组件。随着Direct3D版本的不断升级,其功能也越来越强大,图形硬件对Direct3D的支持也越来越好。往往在新版本的Direct3D刚刚发布后,硬件厂商就会生产出支持最新版本Direct3D功能的显卡。 现在DirectX已经不仅仅是一个用于游戏以及高性能多媒体应用程序开发的附加工具包,而是整体Windows系统的图形基础,成为Windows系统自身的重要组成部分。在最新的Windows Vista以及Windows 7操作系统中,使用Direct3D作为底层的图形引擎,而放弃了自从Windows 3.1以来一直使用的GDI/GDI+。甚至最新的图形界面开发技术WPF在底层也是基于Direct3D开发的,Direct3D也逐渐成为用户界面开发技术的底层基础。因此DirectX编程已经不仅仅是游戏以及高性能多媒体应用开发人员所必须具备的技能,而成为所有Windows开发人员需要了解的技术基础。 本书主要面向首次接触DirectX的初级开发人员和在校师生。由于DirectX编程相对比较复杂,为了使本书能够成为一本适合DirectX开发入门的优秀图书,在本书的写作过程中,作者有意突出了以下特点。

内容概要

本书系统全面地介绍了DirectX编程的各个方面,主要内容包括:学习DirectX之前必须掌握的基础知识、DirectX与相关图形技术以及Windows系统本身的关系、Direct3D三维图形和动画开发、DirectX Audio音频开发、DirectInput输入处理以及DXUT程序框架等内容。此外,每章都提供了精心设计的示例程序和课后练习,以及相应的源代码和多媒体课件。本书非常适合作为高等院校相关专业的教材。对于希望进入DirectX游戏开发领域的人员,本书是一本非常好的自学教材。对于希望了解新一代Windows操作系统(Windows Vista和Windows7)图形引擎,以及新一代图形界面开发技术(WPF)底层基础的开发人员,本书也是一本优秀的参考用书。

书籍目录

前言 第1章 DirectX与游戏编程简介  1.1 DirectX介绍  1.2 OpenGL、XNA与WPF  1.2.1 OpenGL   1.2.2 XNA   1.2.3 WPF  1.3 DirectX功能组件   1.3.1 DirectX Graphics   1.3.2 DirectX Audio   1.3.3 DirectX Input   1.3.4 其他组件  1.4 DirectX与游戏开发  1.5 DirectX安装与配置   1.5.1 系统配置要求   1.5.2 DirectX安装   1.5.3 选择调试库和发布库   1.5.4 在Visual Studio IDE中配置 DirectX   1.5.5 浏览DirectX SDK示例程序  1.6 小结  练习 第2章 预备知识  2.1 数学基础   2.1.1 向量   2.1.2 矩阵   2.1.3 平面  2.2 Win32 API编程基础   2.2.1 开发Win32 API程序的基本步骤   2.2.2 Win32 API程序解析  2.3 COM使用基础   2.3.1 COM对象概述   2.3.2 创建COM对象   2.3.3 使用COM接口   2.3.4 管理COM对象的生命期  2.4 小结  练习  ……第3章 Direct3D编程入门 第4章 基本图元和文本绘制 第5章 顶点坐标变换 第6章 光照 第7章 纹理映射 第8章 Direct3D渲染技巧 第9章 网格模型 第10章 点精灵与粒子系统 第11章 基本虚拟场景构造 第12章 HLSL高级着色语言 第13章 着色器和效果 第14章 DirectX Audio音频编程 第15章 DirectInput与场景交互 第16章 DXUT程序框架 附录A Direct3D 10与Direct3D 11介绍 参考文献

章节摘录

插图:地面模拟的一个重要内容是获取高程数据,高程数据通常以文件的形式保存。使用高度图文件保存地形高程数据是一种常见的方法。高度图有多种可能的图形表示形式,其中最常见的有两种。第一种是每个像素只包含亮度值的黑白图像(可以是bmp、jpg、tga等文件格式);第二种是灰度图,这种高度图通常保存为.raw格式的文件,这种文件逐个字节地保存灰度值。为了得到地形的高程数据,首先需要读取高度图文件,将高度图中保存的高程数据读取到相应的内存中,以方便构造地形网格时使用。使用第二种高度图获取高程数据,比第一种高度图要复杂一些,缺点是无法知道图形的二维尺寸。下面重点介绍如何使用第一种高度图获取地形的高程值。第一种高度图是一种二维图像文件,图像中每个像素的位置对应于实际地形上的一个位置。每个像素的值代表对应位置的高程数据:越亮的像素,对应位置的高度越高。因为这种高度图的文件格式可能有多种,需要针对不同的图像格式读取文件内容。然而,除了.bmp文件之外,直接读取图像文件不是一件轻松的事情。为了简化编程工作,可首先利用D3Dx提供的D3DXCreateTextureFromFileEx()函数,根据图形文件创建相应的Direct3D纹理对象,然后从纹理对象中读取每个像素。这样读取不同格式文件的复杂工作实际上就由D3DXcreate-TextureFiomFileEx()函数代劳了,从而可以不用关心文件的具体格式。CFerrain类将读取高度图文件的操作封装到私有成员函数ReadHightDataFrom exFile()中,该函数的实现代码如下。

编辑推荐

《DirectX游戏编程基础教程》:数字媒体专业规划教材

图书封面

图书标签Tags

评论、评分、阅读与下载


    DirectX游戏编程基础教程 PDF格式下载


用户评论 (总计6条)

 
 

  •   这本书不错!值得学习!作为教辅!果断买吧!
  •   学校的课本只有OpenGL,dx必须自己买啊。。。这本书看起来入门还不错,讲的比较细
  •   买了没看纠结啊
  •   根本看不下去,文字不够流畅,前后章节不连贯。看不懂。也许我的水平太差了。
  •   书像一本教材,其余质量还不错,文字讲解得也算清楚,需要有一定的win32基础但是这本书的示例就是一大败笔!!!!!!!!!!!!!!尼玛所谓的示例程序,就给出一个函数的几行代码,这个函数加在程序中什么位置不说,用到的全局变量也不说明;同一地方给出的几行代码,可能是加在不同的位置,但是书上一句不提。所以整个示例程序,真正写出来可能有两三百行,而书上的就几个函数十几行带过,怪不得整本书才不到300页好在可以在网上下源代码,稍稍弥补了这个大BUG,但还是很不爽很不爽!!!!!!!!!!!!!书上就算不给出完整的程序代码,至少也该提一下给出的那部分代码加在哪里吧!!!!!
  •   里面还是有一定的看头
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7