新書推薦:
《
甲骨文丛书·中华早期帝国:秦汉史的重估
》
售價:HK$
300.2
《
欲望与家庭小说
》
售價:HK$
98.6
《
惜华年(全两册)
》
售價:HK$
70.3
《
甲骨文丛书·古代中国的军事文化
》
售價:HK$
99.7
《
中国王朝内争实录(套装全4册):从未见过的王朝内争编著史
》
售價:HK$
244.2
《
半导体纳米器件:物理、技术和应用
》
售價:HK$
177.0
《
创客精选项目设计与制作 第2版 刘笑笑 颜志勇 严国陶
》
售價:HK$
61.6
《
佛山华家班粤菜传承 华家班59位大厨 102道粤菜 图文并茂 菜式制作视频 粤菜故事技法 佛山传统文化 广东科技
》
售價:HK$
221.8
|
內容簡介: |
本书严谨翔实地阐述了DirectX的工作机制,详尽地探讨了三维游戏的开发过程,并用图示的方法介绍了如何使用D3D
SDK。同时通过典型案例分析大部分三维编程的思路与问题,将D3D与3dsMax联系起来,让独立的美工与程序在游戏应用上得到完美的结合。
本书可作为高等院校数字媒体技术专业课教材,也可作为应用型本科院校计算机、信息管理与信息系统、电子商务等相关专业的实验教学用书,还可作为高职院校及企业工程人员的参考用书和对计算机图形学感兴趣的读者的参考资料。
|
目錄:
|
第1章 面向对象的游戏编程原理 1
1.1 面向对象的游戏设计思想 1
1.1.1 游戏开发基本流程 1
1.1.2 简单的游戏过程模拟程序 1
1.2 面向对象程序设计 4
1.2.1 从C语言到C 4
1.2.2 C?的类与对象 11
1.2.3 构造函数和析构函数 12
1.2.4 派生方法 13
1.3 STL标准模板库 14
1.3.1 vector容器 14
1.3.2 iterator迭代器 15
第2章 Windows编程基础 17
2.1 基于事件和消息的Windows操作系统 17
2.1.1 Win32消息机制 17
2.1.2 创建Win32项目 18
2.2 Win32应用程序 19
2.2.1 WinMain函数 19
2.2.2 设计与注册窗口类 20
2.2.3 创建窗口 23
2.2.4 显示和更新窗口 25
2.2.5 消息循环 25
2.2.6 注销窗口类 28
2.3 窗口过程 28
2.3.1 窗口过程函数 28
2.3.2 键盘消息 29
2.3.3 鼠标消息 31
2.3.4 时间消息 32
第3章 DirectX简介 35
3.1 启动Direct3D 35
3.1.1 Direct3D工作原理 35
3.1.2 Direct3D开发环境配置 36
3.1.3 Direct3D初始化 39
3.1.4 系统响应时间间隔 42
3.2 绘制流水线 43
3.2.1 局部坐标系 44
3.2.2 世界坐标系 44
3.2.3 观察坐标系 46
3.2.4 背面消隐 47
3.2.5 光照 48
3.2.6 裁剪 48
3.2.7 投影 48
3.2.8 视口变换 49
3.2.9 光栅化 50
3.3 代码封装 51
3.3.1 D3DUT模块 51
3.3.2 MyD3D模块 55
3.3.3 主文件 59
第4章 基本空间变换 62
4.1 三维向量 62
4.1.1 三维向量的定义 62
4.1.2 D3DXVECTOR3类 63
4.1.3 点积 65
4.1.4 叉积 66
4.2 矩阵变换 67
4.2.1 基于三维坐标的三维空间变化 67
4.2.2 齐次坐标的引入 68
4.2.3 基于齐次坐标的矩阵变换 69
第5章 Direct 3D的绘制方法 75
5.1 三维图形绘制 75
5.1.1 基于顶点缓存的图形绘制 75
5.1.2 基于顶点索引缓存的图形绘制 89
5.2 自由顶点格式 97
5.3 基于颜色顶点的图形绘制 98
5.3.1 D3D颜色表达 99
5.3.2 颜色顶点的绘制方法 101
5.4 基于纹理顶点的图形绘制 107
5.4.1 纹理映射原理 108
5.4.2 纹理顶点缓存的创建 108
5.4.3 纹理缓存的创建 109
5.4.4 纹理顶点的绘制 111
5.4.5 纹理过滤器 111
5.4.6 纹理顶点绘制的案例分析 113
第6章 Alpha融合 118
6.1 基于Alpha通道的像素融合 118
6.1.1 Alpha融合原理 118
6.1.2 设置Alpha融合渲染状态 119
6.1.3 颜色顶点几何体的透明渲染案例 120
6.1.4 纹理顶点几何体的透明渲染案例 124
6.2 纹理内存的访问 128
第7章 光照与材质 131
7.1 光照与光源 131
7.1.1 光照模型 131
7.1.2 常用的光源 132
7.1.3 常用光源案例分析 133
7.2 材质 139
7.3 顶点法向量 140
7.4 Direct3D的光照渲染案例分析 141
7.4.1 自发光立方体类设计 143
7.4.2 材质平面类设计 146
7.4.3 纹理材质平面类设计 149
7.4.4 多光源初始化及渲染 152
第8章 三维网格模型 157
8.1 XFile文件 157
8.1.1 三维网格ID3DXMESH接口 157
8.1.2 网格子集 158
8.1.3 3dsMax的XFile导出 159
8.1.4 XFile加载与渲染 160
8.1.5 三维网格类D3DXFile设计 162
8.2 XFile的边界体 166
8.2.1 边界体计算方法 166
8.2.2 子集边界体 168
8.2.3 边界体类封装 171
8.3 碰撞检测 176
8.3.1 边界球的碰撞检测 176
8.3.2 边界盒的碰撞检测 179
8.3.3 基于边界体碰撞检测的案例分析 181
第9章 动画网格模型 187
9.1 骨骼动画相关技术原理 187
9.2 带动画的XFile文件导出 189
9.3 骨骼动画类 191
9.3.1 骨骼动画数据结构 191
9.3.2 分层结构接口 192
9.3.3 骨骼动画类D3DXAnimation 197
9.3.4 骨骼动画实例 203
|
內容試閱:
|
本书为北方工业大学2015年教育教学改革课题成果,书中涉及的三维游戏设计内容,可以作为数字媒体技术专业游戏开发方向的必修课教材内容。本书在教授图形学理论的同时,强化三维编程环节,并为爱好网络游戏开发的IT工作者提供网络层面的技术指导。本书是将图形图像学与三维美工制作课程衔接起来的桥梁,让三维编程更实用,使读者在学习三维图形API并了解计算机图形学知识的基础上,还间接学习了以面向对象为思想编写程序的方法和相对复杂的程序的编写方法。
本书第1章为面向对象的游戏编程原理,介绍了游戏开发中常用的面向对象设计思想和简单的游戏过程原理;第2章为Windows编程基础,介绍了Win32的消息机制和窗口应用程序;第3章为DirectX简介,介绍了如何配置Direct3D开发环境和三维场景绘制的实现过程,并通过案例讲述基于面向对象思想的Direct3D开发过程模块封装方法;第4章为基本空间变换,介绍了计算机图形学的空间变换原理和算法;第5章为Direct3D的绘制方法,介绍了利用三维顶点、颜色、纹理等元素创建三维模型并绘制的方法;第6章为Alpha融合,介绍了利用Alpha通道的透明渲染方法;第7章为光照与材质,介绍了Direct3D的光照原理和物体材质创建和使用的方法;第8 章为三维网格模型,介绍了从3dsMax的模型导出XFile文件的方法,以及如何通过程序将其载入Direct3D环境并进行渲染,还讲解了通过三维模型的边界检测原理实现物体碰撞的过程;第9章为动画网格模型,介绍了蒙皮动画的原理,并讲解如何将骨骼动画数据从3dsMax导出为XFile文件,并实现其在Direct3D环境中的加载和渲染。
本书由北方工业大学计算机学院宋伟编写而成,北方工业大学计算机学院的本科生和研究生,包括于少波、武冬、郝书嘉、文明云、张伟强、黎佳雪、黄凯斯、郭海涛、廖金巧、田逸非等同学也参与了本书的编写工作。
限于编者水平,书中难免存在不足之处,殷切希望广大读者批评指正。联系邮箱:swneu@126.com。
|
|