新書推薦:
《
汉娜·阿伦特与以赛亚·伯林 : 自由、政治与人性
》
售價:HK$
109.8
《
女性与疯狂(女性主义里程碑式著作,全球售出300万册)
》
售價:HK$
109.8
《
药食同源中药鉴别图典
》
售價:HK$
67.0
《
设计中的比例密码:建筑与室内设计
》
售價:HK$
87.4
《
冯友兰和青年谈心系列:看似平淡的坚持
》
售價:HK$
55.8
《
汉字理论与汉字阐释概要 《说解汉字一百五十讲》作者李守奎新作
》
售價:HK$
76.2
《
汗青堂丛书144·决战地中海
》
售價:HK$
168.0
《
逝去的武林(十周年纪念版 武学宗师 口述亲历 李仲轩亲历一九三零年代武人言行录)
》
售價:HK$
54.9
|
內容簡介: |
《DirectX 9.0 3D游戏开发编程基础》主要介绍如何使用DirectX9.0开发交互式3D图形程序,重点是游戏开发。
《DirectX 9.0 3D游戏开发编程基础》首先介绍了必要的数学工具,然后讲解了相关的3D概念。其他主题几乎涵盖了Direct3D中的所有基本运算,例如图元的绘制、光照、纹理、Alpha融合、模板,以及如何使用Direct3D实现游戏中所需的技术。介绍顶定点着色器和像素着色器的章节(包含了效果框架和新的高级着色语言的内容)对这些关键运算进行了较为集中的讨论。
《DirectX 9.0 3D游戏开发编程基础》内容深入浅出,内容广泛,可供从事3D游戏程序设计、可视化系统设计或其他图形应用程序开发的开发人员和大中专院校学生参考,也极适合各种游戏开发培训机构作为Direct3D编程的培训教程。
《DirectX 9.0 3D游戏开发编程基础》从游戏开发的角度介绍如何使用DirectX9.0开发交互式3D图形程序。
《DirectX 9.0 3D游戏开发编程基础》从介绍必要的数学工具过渡到一些相关的3D概念,然后讨论了Direct3D的所有基本运算(例如图元的绘制、光照、纹理、Alpha融合、模板)以及如何使用Direct3D实现游戏中所需的技术。《DirectX 9.0 3D游戏开发编程基础》主要介绍如何使用DirectX9.0开发交互式3D图形程序,重点是游戏开发。
《DirectX 9.0 3D游戏开发编程基础》首先介绍了必要的数学工具,然后讲解了相关的3D概念。其他主题几乎涵盖了Direct3D中的所有基本运算,例如图元的绘制、光照、纹理、Alpha融合、模板,以及如何使用Direct3D实现游戏中所需的技术。介绍顶定点着色器和像素着色器的章节(包含了效果框架和新的高级着色语言的内容)对这些关键运算进行了较为集中的讨论。
《DirectX 9.0 3D游戏开发编程基础》内容深入浅出,内容广泛,可供从事3D游戏程序设计、可视化系统设计或其他图形应用程序开发的开发人员和大中专院校学生参考,也极适合各种游戏开发培训机构作为Direct3D编程的培训教程。
《DirectX 9.0 3D游戏开发编程基础》从游戏开发的角度介绍如何使用DirectX9.0开发交互式3D图形程序。
《DirectX 9.0 3D游戏开发编程基础》从介绍必要的数学工具过渡到一些相关的3D概念,然后讨论了Direct3D的所有基本运算(例如图元的绘制、光照、纹理、Alpha融合、模板)以及如何使用Direct3D实现游戏中所需的技术。
在介绍顶点着色器和像素着色器的章节中(包含效果框架和新的高级着色语言的内容)对这些运算进行了较为集中的讨论。
《DirectX 9.0 3D游戏开发编程基础》旨在帮助读者:
理解基本的数学和3D概念。
了解如何使用Direct3D9.0API描述和绘制交互式3D场景。
使用Direct3D和D3DX实用工具库实现各种技术和应用程序,例如透明度、阴影、字体、网格、X文件的使用、渐进网格、地形绘制、粒子系统、拾取、卡通绘制以及多重纹理等。
了解如何使用高级着色语言编写顶点着色器和像素着色器程序。
了解如何使用Direct3D效果框架编写和运用效果文件。
|
關於作者: |
Frank D.Luna,Hero Interactive的程序员,从事交互式3D图形编程已有八年多。他很早接触DirectX可以追溯到DirectX 5发布之时,目前居住在加州的洛杉矶市。
|
目錄:
|
第Ⅰ部分 基础知识
必备的数学知识
3D空间中的向量
向量相等
计算向量的长度
向量的规范化
向量加法
向量减法
数乘
点积
叉积
矩阵
矩阵相等、矩阵数乘和矩阵加法
矩阵乘法
单位矩阵
逆矩阵
矩阵的转置
D3DX矩阵
基本变换
平移矩阵
旋转矩阵
比例变换矩阵
几何变换的组合
向量变换的一些函数
平面(选读)
D3DXPLANE
点和平面的空间关系
平面的创建
平面的规范化
平面的变换
平面中到某一点的最近点
射线(选读)
射线
射线与平面的相交
小结
第Ⅱ部分 Direct3D基础
第1章 初始化Direct3D
1.1 Direct3D概述
1.1.1 REF设备
1.1.2 D3DDEVTYPE
1.2 COM(组件对象模型)
1.3 预备知识
1.3.1 表面
1.3.2 多重采样
1.3.3 像素格式
1.3.4 内存池
1.3.5 交换链和页面置换
1.3.6 深度缓存
1.3.7 顶点运算
1.3.8 设备性能
1.4 Direct3D的初始化
1.4.1 获取接口IDirect3D9的指针
1.4.2 校验硬件顶点运算
1.4.3 填充D3DPRESENT_PARAMETER结构
1.4.4.创建IDirect3DDevice9接口
1.5 例程:Direct3D的初始化
1.5.1 d3dUtility.hcpp
1.5.2 例程框架
1.5.3 例程:D3D初始化
1.6 小结
第2章 绘制流水线
2.1 模型表示
2.1.1 顶点格式
2.1.2 三角形单元
2.1.3 索引
2.2 虚拟摄像机
2.3 绘制流水线
2.3.1 局部坐标系
2.3.2 世界坐标系
2.3.3 观察坐标系
2.3.4 背面消隐
2.3.5 光照
2.3.6 裁剪
2.3.7 投影
2.3.8 视口变换
2.3.9 光栅化
2.4 小结
第3章 Direct3D中的绘制
第Ⅲ部分 Direct3D的应用
第Ⅳ部分 着色器和效果
附录 Windows编程入门
参考文献
|
內容試閱:
|
DirectX是微软公司开发的一套功能丰富的底层API,其功能涵盖了对2D3D图形加速的支持、对各种输入设备的控制,以及对声音和音乐输出的混音和采样、对多玩家网络游戏的控制、对各种多媒体流模式的控制等。DirectX设计者的初衷是让Windows成为理想的游戏开发平台,如今他们正逐步实现这一理想。实际上,虽然不断遭遇同样出色的竞争对手(如OpenGL)的挑战,但目前的形势是DirectX在游戏开发领域已经无可争议地占据王者地位,而且这种趋势极有可能保持下去。当然,这并不是说DirectX能够完全取代其他API,只是术业有专攻,各自有不同的擅长领域罢了。
DirectX在体系结构上很突出的优点是它使用了两层驱动HAL和REF,那些为硬件所支持的特定功能可由HAL来控制(即可以充分地发挥硬件的加速功能),从而可以获得理想的运行速度。而对于那些不为硬件所支持的功能,借助REF,程序能够以软件方式来模拟相应的运算或处理过程,从而使得无论硬件配置是否高端,开发人员都可以完整地体验和测试DirectX所提供的全部功能。
关于DirectX原理及编程的书籍,目前国内还很少,能体现出DirectX9.0版本新特性的书籍更是少之又少。这本《DirectX9.03D游戏开发编程基础》可以说从一定程度上弥补了国内图书市场的缺憾。这本书专注于讲解DirectX与图形绘制及渲染相关的一个核心子集Direct3D,是DirectX3D图形编程领域的一本经典著作,在国外自出版以来,就一直雄踞此类书的销量榜首。该书有一些很鲜明的特点:
(1)授人鱼,更授人与渔
本书在注重讲解原理和方法的同时,也注重引导读者如何获取知识,如何利用DirectXSDK帮助文档,非常有利于提高读者的学习能力。尤其需要指出的是,作者专门为本书维护了一个网站www.moon-labs.com,该网站上不但有全书所有例程的源代码,还在此提供了与之相关但由于篇幅所限而略去的重要主题文档。同时,作者设立了一个DirectX技术的讨论区,并时常亲自出面答疑。这些资源对于读者的作用无疑是不可估量的。
(2)内容全面,由浅入深
本书根据由易到难的顺序合理安排各章,刚入门的读者只需按书中的章节顺序安排学习,即可顺利掌握各章内容。本书虽属导论性质的著作,但是内容的跨度相当大,从基础的数学原理讲起,涵盖了Direct3D初始化、绘制流水线、颜色、光照、纹理、融合、模板、字体、网格、地形绘制、粒子系统、拾取技术直到高级着色语言和效果框架,基本上涵盖了Direct3D常用的方方面面。书中某些章节的实例虽然算法比较简单,甚至不够实用,但从理解原理的角度来看还是很适宜的,而且这样可以为读者提供更多的思考空间。
|
|