书籍详情

精通XNA图形与游戏程序设计

精通XNA图形与游戏程序设计

作者:杨关胜,栗俊霞 著

出版社:人民邮电出版社

出版时间:2012-06-08

ISBN:9787115280848

定价:¥69.00

购买这本书可以去
内容简介
  《精通XNA图形与游戏程序设计》系统全面地介绍了XNA游戏程序设计的相关内容。全书共分5部分。第一部分从安装XNA Game Studio,创建最简单的XNA程序开始,介绍了XNA游戏程序设计的基础。第二部分从介绍网格模型文件的格式、剖析三维网格模型的层层架构开始,由浅入深、详细地介绍了XNA加载不同类型网格模型,播放模型动画的方法以及交互技术。第三部分介绍了使用XNA进行游戏程序设计的3项非图形类关键技术:声音与视频、网络、游戏数据的存储与加载。第四部分介绍了其他图形类或与图形相关的关键技术,包括粒子系统、地形、碰撞探测、后处理、广告板、环境映射、雾化、光晕等。第五部分通过将三维地形、网格模型、骨骼动画、地形匹配、第一人称取景变换、鼠标/键盘交互、粒子系统、碰撞探测、二维字体等多项技术统筹起来,实现了一个完整的山地防御战斗小游戏,通过该游戏介绍了使用XNA开发游戏的全过程。《精通XNA图形与游戏程序设计》配套光盘提供了书中所有示例程序的可执行文件、工程文件和完整源代码,以方便读者编译、调试示例程序。《精通XNA图形与游戏程序设计》主要面向XNA游戏程序开发人员、图形程序设计者以及可视化仿真工程技术人员,也可作为高等院校相关专业或培训机构的XNA程序设计教科书。
作者简介
暂缺《精通XNA图形与游戏程序设计》作者简介
目录
第一部分 基础篇
第1章 XNA概述与简介
1.1 XNA发展史
1.2 XNA的优势
1.3 安装XNA Game Studio
1.4 第一个XNA程序
1.4.1 创建最简单的XNA程序
1.4.2 项目EmptyProject的代码诠释
1.5 完善EmptyProject
1.5.1 显示鼠标
1.5.2 允许改变窗口大小
1.5.3 响应键盘退出程序
1.5.4 图形设备的获取
1.6 全屏显示
1.7 小结
第2章 二维图形与字体
2.1 初探素材管线(Content Pipeline)
2.1.1 素材管线的使用
2.1.2 素材管线的实现
2.2 简单二维图形的加载和渲染
2.2.1 添加图片
2.2.2 加载图片
2.2.3 渲染二维图片
2.3 渲染多幅图片
2.4 二维图片的旋转、缩放、镜像与裁剪
2.4.1 图片原点与绘制原点
2.4.2 旋转
2.4.3 缩放
2.4.4 镜像
2.4.5 裁剪
2.5 图层与透明渲染技术
2.5.1 图层与类SpriteBatch的Begin()重载函数
2.5.2 透明渲染
2.6 字体
2.6.1 英文字体
2.6.2 中文字体
2.7 小结
第3章 三维图形基础
3.1 BasicEffect类
3.1.1 创建类BasicEffect的对象
3.1.2 BasicEffect对象的使用
3.2 坐标系
3.3 渲染流水线
3.4 顶点缓冲区(Vertex Buffer)
3.4.1 新建顶点声明与设置顶点数据
3.4.2 新建并填充顶点缓冲区
3.5 顶点坐标变换
3.5.1 世界变换与世界变换矩阵
3.5.2 取景变换和取景变换矩阵
3.5.3 投影变换和投影变换矩阵
3.5.4 视区变换和屏幕坐标系
3.6 基本图元
3.6.1 点集合
3.6.2 线段集合
3.6.3 线段条带
3.6.4 三角形集合
3.6.5 三角形条带
3.6.6 三角扇形
3.7 索引缓冲区(Index Buffer)
3.8 自定义顶点格式
3.9 填充模式
3.10 小结
第4章 HLSL语言与效果
4.1 渲染器(Shader)
4.2 HLSL数据类型
4.2.1 标量
4.2.2 向量
4.2.3 矩阵
4.2.4 纹理
4.2.5 复杂数据类型
4.3 语义
4.4 表达式与运算符
4.5 语句
4.5.1 语句块
4.5.2 返回语句
4.5.3 流程控制语句
4.6 函数
4.6.1 函数声明
4.6.2 函数体
4.6.3 返回值
4.6.4 内部函数
4.6.5 构造函数
4.7 效果
4.7.1 效果、技术与通道
4.7.2 使用效果
4.8 小结
第5章 光照与材质
5.1 环境光
5.2 漫反射
5.3 镜面反射
5.4 自发光
5.5 光源类型
5.6 小结
第6章 纹理
6.1 纹理映射基础
6.1.1 纹理映射基本概念
6.1.2 实现纹理映射
6.2 纹理过滤模式
6.2.1 最近点采样
6.2.2 线性纹理过滤
6.2.3 各向异性纹理过滤
6.2.4 GaussianQuad纹理过滤
6.2.5 PyramidalQuad纹理过滤
6.3 纹理寻址模式
6.3.1 重叠寻址模式
6.3.2 镜像寻址模式
6.3.3 夹取寻址模式
6.3.4 一次镜像寻址模式
6.3.5 边框颜色寻址模式
6.4 Alpha混合
6.5 小结
第二部分 XNA开发核心技术
第7章 网格模型
7.1 三维模型基础
7.2 .X文件格式分析
7.2.1 首部
7.2.2 网格
7.2.3 网格材质列表
7.2.4 法向量
7.2.5 纹理
7.2.6 框架和变换矩阵
7.2.7 动画
7.2.8 蒙皮信息
7.3 简易网格模型
7.3.1 加载网格模型
7.3.2 网格模型结构
7.3.3 渲染简易网格模型
7.4 骨骼动画网格模型
7.4.1 网格模型结构
7.4.2 实现骨骼动画
7.5 蒙皮骨骼动画网格模型
7.5.1 动画数据
7.5.2 蒙皮网格模型处理器
7.5.3 动画播放器
7.5.4 效果文件
7.5.5 添加并处理效果材质素材
7.5.6 加载、更新和渲染蒙皮网格模型
7.6 扩充蒙皮骨骼动画
7.7 多动画网格模型
7.8 多动画间的平滑过渡
7.8.1 成员变量与构造函数
7.8.2 开启/切换动画轨道
7.8.3 更新关键帧骨骼变换矩阵
7.8.4 迭代骨骼变换矩阵
7.8.5 计算顶点坐标变换矩阵
7.9 关键帧动画
7.9.1 关键帧动画原理
7.9.2 扩充网格模型处理器、ContentTypeWriter和ContentTypeReader
7.9.3 关键帧动画效果文件
7.9.4 实现关键帧动画
7.10 小结
第8章 交互
8.1 拾取技术
8.1.1 拾取技术基本原理
8.1.2 构建观察射线
8.1.3 计算观察射线与三角形平面的交点
8.1.4 判断交点是否在三角形区域内
8.1.5 渲染拾取网格模型
8.2 鼠标牵引技术
8.2.1 鼠标牵引技术原理
8.2.2 鼠标牵引技术实现
8.3 第一人称取景变换
8.3.1 站在原点,绕上向量旋转
8.3.2 站在原点,任意旋转
8.3.3 站在任意一点,任意旋转
8.3.4 实现第一人称取景变换技术
8.3.5 封装第一人称取景摄像机类
8.4 三维空间漫游
8.4.1 第三人称取景变换
8.4.2 跟踪目标点网格模型
8.4.3 实现三维空间漫游
8.5 三维场景漫游
8.5.1 进一步封装跟踪目标模型
8.5.2 实现三维场景漫游
8.6 渲染探测
8.6.1 渲染探测技术简介
8.6.2 检测三维空间内任意一点
8.6.3 检测静态网格模型
8.6.4 检测动态网格模型
8.6.5 创建模型边界球
8.7 小结
第三部分 游戏开发核心技术
第9章 声音与视频播放
9.1 简易声音播放
9.2 单曲循环播放
9.3 多曲连续播放
9.4 三维声音播放
9.5 视频播放
9.6 小结
第10章 网络
10.1 注册网络服务
10.1.1 注册账号
10.1.2 游戏成员类GameComponent简介
10.1.3 添加网络游戏服务成员
10.1.4 显示注册界面(Sign In Interface)
10.2 创建网络对话
10.2.1 创建网络对话
10.2.2 响应网络对话的相关事件
10.2.3 更新网络对话
10.3 查找并加入网络对话
10.3.1 查找活动对话
10.3.2 加入活动对话
10.3.3 精确查找对话
10.4 收发数据
10.4.1 发送数据
10.4.2 接收数据
10.4.3 检测数据的可用性
10.4.4 发送数据的SendDataOptions设置
10.4.5 多玩家间的数据收发
10.5 异步搜索网络对话
10.6 进入实际游戏
10.7 添加游戏信息
10.8 小结
第11章 游戏数据的存储与加载
11.1 构建整体框架
11.2 存储游戏数据
11.3 加载游戏数据
11.4 小结
第四部分 图形开发技术
第12章 粒子系统
12.1 粒子系统技术简介
12.1.1 粒子系统的核心思想和建模原理及优缺点
12.1.2 粒子系统基本原理
12.2 雨景
12.2.1 雨点粒子类
12.2.2 雨景粒子系统类
12.2.3 雨景的实现
12.3 雪景
12.3.1 雪花粒子类
12.3.2 雪景粒子系统类
12.3.3 雪景的实现
12.4 喷洒
12.4.1 喷洒粒子类
12.4.2 喷洒粒子系统类
12.4.3 喷洒效果的实现
12.5 发射火箭弹到爆炸
12.5.1 粒子顶点结构体
12.5.2 粒子系统属性设置类
12.5.3 粒子系统基类
12.5.4 效果
12.5.5 各个具体的粒子系统
12.5.6 粒子发射类
12.5.7 火箭弹类
12.5.8 主程序的实现
12.6 烟雾排放
12.7 火焰
12.8 小结
第13章 地形
13.1 使用高程映射图构建地形的基本原理
13.1.1 高程映射图
13.1.2 从高程映射图中构建三维地形
13.2 地形类Terrain
13.2.1 加载构建地形模型的相关数据
13.2.2 构建地形网格模型
13.3 效果文件
13.3.1 多层纹理映射与法向量映射
13.3.2 地形效果中的顶点渲染
13.3.3 地形效果中的像素渲染
13.3.4 管理效果文件类TerrainEffect
13.3.5 地形材质类TerrainMaterial
13.3.6 设置效果参数
13.4 渲染地形网格模型
13.5 读取地形高程数据
13.6 读取地形法向量数据
13.7 射线探测地形
13.8 小结
第14章 碰撞探测
14.1 二维空间碰撞探测
14.1.1 矩形碰撞探测
14.1.2 矩形像素碰撞探测
14.2 三维模型之间的碰撞探测
14.2.1 快速探测
14.2.2 精细探测
14.2.3 射线探测
14.2.4 半径探测
14.3 地形匹配
14.3.1 高程匹配
14.3.2 倾斜匹配
14.4 小结
第15章 后处理
15.1 后处理技术的核心思想及关键步骤
15.2 后处理程序的基本框架
15.2.1 水下效果模拟
15.2.2 其他多种特效的实现
15.3 阴影
15.3.1 阴影效果文件
15.3.2 添加阴影效果文件
15.3.3 实现阴影
15.4 镜面效果
15.4.1 镜面技术的核心思想
15.4.2 镜面技术主程序的基本实现
15.4.3 渲染镜面的效果代码
15.4.4 完善
15.5 小结
第16章 其他简易实用技术
16.1 广告板技术(BillBoard)
16.1.1 球形广告板
16.1.2 柱形广告板
16.2 环境映射
16.2.1 球形环境映射
16.2.2 立方体环境映射
16.3 雾化
16.3.1 雾化效果实现原理
16.3.2 雾化模式
16.3.3 雾化效果的实现
16.4 光晕
16.5 小结
第五部分 三维开发技术
第17章 综合应用
17.1 整体构思
17.2 加载素材
17.3 创建各个游戏类
17.4 统筹各个游戏类
17.4.1 添加成员变量
17.4.2 初始化
17.4.3 加载素材
17.4.4 更新
17.4.5 渲染
17.5 小结
……
猜您喜欢

读书导航