新書推薦:
《
清华大学藏战国竹简校释(壹):《命训》诸篇
》
售價:NT$
408.0
《
封建社会农民战争问题导论(光启文库)
》
售價:NT$
296.0
《
虚弱的反攻:开禧北伐
》
售價:NT$
429.0
《
泰山:一种中国信仰专论(法国汉学经典译丛)
》
售價:NT$
380.0
《
花外集斠箋
》
售價:NT$
704.0
《
有兽焉.8
》
售價:NT$
305.0
《
大学问·明清经济史讲稿
》
售價:NT$
330.0
《
中国国际法年刊(2023)
》
售價:NT$
539.0
|
編輯推薦: |
1. 本书采用案例教学方式,理论讲解与实践密切结合;2. 本书由浅入深、内容全面,提供框架程序、PPT等
|
內容簡介: |
本书系统介绍了Windows API二维开发和Direct3D三维游戏开发和Unity游戏开发相关概念和实现技术。由浅入深,详细介绍了各部分的环境搭建和开发方法。内容全面,完整详细地讲解了二维游戏、Direct3D游戏和利用Unity开发游戏的相关内容,注重理论与实践的结合,对于每一章讲解的技术环节都有对应的实现示例。本书配套提供PPT、源代码等。
本书在内容安排上很适合本科教学,对游戏开发感兴趣的初学者自学时也推荐使用本书。
|
關於作者: |
扬长强,山东科技大学信息科学与工程学院副教授,主讲游戏程序设计、计算机图形学、Windows程序设计等课程10余年。曾获省教学成果二等奖,主讲的计算机图形学2次获校教学成果奖__eol__
|
目錄:
|
目 录
第1章 游戏程序设计概述1
1.1 计算机游戏的概念1
1.2 计算机游戏的分类2
1.2.1 角色扮演游戏(RPG,Role-Playing Game)2
1.2.2 动作类游戏(ACT, Action Game3
1.2.3 实时策略游戏(RTS,Real-Time Strategy Game )3
1.2.4 第一视觉射击游戏(FPS,First-Person Shooter)3
1.2.5 模拟游戏(Simulation Game)4
1.2.6 体育类游戏(SRT,Sports Game)4
1.3 设计游戏的要素4
1.3.1 策划5
1.3.2 程序5
1.3.3 美术5
1.3.4 音乐6
1.4 计算机游戏的发展趋势6
1.4.1 沉浸感6
1.4.2 交互性6
1.4.3 国际化7
第2章 Win32应用程序8
2.1 VS2010中Win32应用程序创建过程8
2.2 Windows主函数11
2.3 窗口建立过程12
2.4 Windows消息循环14
2.5 窗口过程函数15
2.6 Win32应用程序示例16
2.7 游戏程序框架18
第3章 Windows绘图函数22
3.1 屏幕绘图的相关概念22
3.1.1 窗口和视口22
3.1.2 GDI 坐标系23
3.2 画笔,画刷与文字25
3.2.1 GDI对象的建立25
3.2.2 GDI对象的选用与删除27
3.2.3 GDI示例27
3.3 GDI绘图函数31
3.3.1 点线函数31
3.3.2 形状函数32
3.3.3 填充函数33
第4章 游戏中的角色与场景34
4.1 位图显示34
4.2 镂空贴图37
4.2.1 使用BitBlt中的参数Raster完成镂空贴图38
4.2.2 使用TransparentBlt函数完成镂空贴图39
4.3 地图显示40
4.3.1 平面拼接地图40
4.3.2 斜角拼接地图43
第5章 动画48
5.1 使用定时器完成游戏动画48
5.1.1 建立定时器48
5.1.2 删除定时器49
5.1.3 示例49
5.2 利用消息循环完成游戏动画51
5.2.1 利用消息循环完成动画原理51
5.2.2 示例53
第6章 键盘与鼠标交互55
6.1 Windows键盘消息处理55
6.1.1 Windows键盘概述55
6.1.2 键盘消息处理56
6.1.3 键盘交互程序示例57
6.2 Windows鼠标消息处理61
6.2.1 鼠标消息的处理方式61
6.2.2 示例63
6.2.3 相关函数的讲解69
第7章 运动与碰撞检测71
7.1 运动71
7.1.1 匀速直线运动71
7.1.2 变速运动75
7.2 碰撞检测77
7.2.1 以物体框架来检测碰撞77
7.2.2 用颜色来检测碰撞79
7.3 粒子系统83
第8章 3D游戏概述84
8.1 3D坐标系及转换84
8.2 模型对象的建立85
8.3 视图变换85
8.3.1 平移变换86
8.3.2 旋转变换86
8.3.3 缩放变换87
8.4 投影变换87
8.5 3D游戏的开发手段88
第9章 Direct3D简介90
9.1 Direct3D的体系结构90
9.1.1 Direct3D的绘制流程90
9.1.2 Direct3D绘制程序框架图91
9.2 Direct3D开发环境配置92
9.3 Direct3D初始化94
9.3.1 创建Direct3D接口对象。95
9.3.2 获取设备的硬件信息95
9.3.3 填充D3DPRESENT_PARAMETERS结构体96
9.3.4 IDirect3D设备接口的创建98
9.4 Direct3D渲染99
9.4.1 清屏操作99
9.4.2 绘制100
9.4.3 翻转显示100
9.4.4 Direct3D的渲染过程101
9.5 Direct3D中二维文本的绘制102
9.6 Direct3D框架程序104
第10章 Direct3D图形绘制基础111
10.1 以顶点缓存为数据源的图形绘制112
10.1.1 基础知识112
10.1.2 在Direct3D编程中使用顶点缓存的四个步骤113
10.2 顶点缓存程序示例120
10.3 以索引缓存为数据源的图形绘制123
10.2.1 索引缓存绘图124
10.4 索引缓存程序示例128
10.5 Direct3D内置几何体概述132
10.3.1 立方体的创建132
10.3.2 圆柱体的创建133
10.3.3 2D 多边形的创建134
10.3.4 球体创建134
10.3.5 圆环的创建135
10.3.6 茶壶的创建135
第11章 Direct3D变换137
11.1 视图变换137
11.2 投影变换141
11.3 视口变换142
11.4 Direct3D变换示例143
11.5 Direct3D固定功能渲染流水线概述148
第12章 Direct3D光照与材质150
12.1 光照类型150
12.1.1 环境光150
12.1.2 漫反射光151
12.1.3 镜面反射光151
12.1.4 自发光152
12.2 光源类型。152
12.2.1 点光源154
12.2.2 方向光源154
12.2.3 聚光灯光源155
12.3 材质155
12.4 灯光与材质示例157
第13章 纹理映射163
13.1 纹理映射的概念163
13.2 Direct3D中纹理映射的实现方法163
13.2.1 纹理坐标的定义163
13.2.2 顶点坐标与纹理坐标的对应164
13.2.3 纹理的创建165
13.2.4 纹理的启用166
13.3 纹理绘制示例168
第14章 游戏引擎174
14.1 什么是游戏引擎174
14.2 目前比较流行的几款主流引擎175
14.3 Unity游戏引擎简介176
14.4 Unity下载与安装178
第15章 Unity程序开发框架和编辑器使用181
15.1 Unity程序开发框架、工程和应用以及场景的关系181
15.2 工程的创建和导入182
15.3 Unity编辑器介绍184
15.3.1 官方资源导入方法:184
15.3.2 场景中的6个视图185
15.3.3 编辑器界面设置。186
15.3.1 Unity编辑器——Project(项目视图)186
15.3.2 Unity编辑器——Hierarchy(层次视图)188
15.3.3 Unity编辑器——Inspector(检视视图)190
15.3.4 Unity编辑器——Scene(场景视图)192
15.3.5 Unity编辑器——Game(游戏视图)194
15.3.6 Unity编辑器——Console(控制台视图)195
第16章 资源和游戏对象196
16.1 Unity资源196
16.1.1 场景、资源、游戏对象、组件间的关系196
16.1.2 内部资源创建198
16.1.3 外部资源导入199
16.1.4 Unity中预设的创建200
16.1.5 Unity中图片、模型和音频、视频的支持200
16.2 Unity 常用组件介绍201
16.2.1 Transform(变换组件)202
16.2.2 Camera(摄像机组件)203
16.2.3 Lights(光源)204
16.3 常用物理引擎组件205
16.3.1 Rigidbody(刚体组件)206
16.3.2 Collider(碰撞器组件)207
第17章 Unity脚本程序基础209
17.1 什么是脚本程序209
17.2 Unity脚本编辑器210
17.3 Unity脚本的创建与编辑211
17.3.1 Script(脚本)创建211
17.3.2 编辑脚本程序212
17.3.3 常用事件函数214
17.3.4 游戏对象和组件访问215
第18章 Unity GUI图形用户界面218
18.1 UGUI的基本介绍218
18.2 UGUI的创建和基本操作219
18.3 UGUI实例演示220
18.3.1 GUI之Button和Text221
18.3.2 GUI之Toggle应用222
18.3.3 GUI的Image和Scrollbar应用224
18.3.4 通过Button调用其他场景225
18.3.5 Slider与游戏对象226
18.4 打包与发布227
第19章 Mecanim动画系统229
19.1 Mecanim动画系统及其优势229
19.2 Mecanim工作流程230
19.3 人形角色动画讲解230
第20章 游戏开发实例——奔跑的轮胎239
参考文献261
|
|