展开全部

主编推荐语

本书详细讲解Unity 3D开发环境搭建、脚本编写及综合案例,循序渐进。

内容简介

本书通过对Unity 3D集成开发环境的搭建,集成开发环境各个界面的详细介绍,再到脚本的编写、开发过程中经常应用的技术和对象的讲解,以及最后的综合案例,给读者以由浅入深、循序渐进的学习过程,相信每一位读者都会通过本书得到意想不到的收获。

目录

  • 版权信息
  • 内容提要
  • 前言
  • 为什么要写这样的一本书
  • 本书特点
  • 内容导读
  • 特别说明
  • 作者简介
  • 资源与支持
  • 配套资源
  • 提交勘误
  • 与我们联系
  • 关于异步社区和异步图书
  • 第1章 Unity基础及集成开发环境的搭建
  • 1.1 Unity基础知识概述
  • 1.1.1 初识Unity
  • 1.1.2 Unity的诞生及发展
  • 1.1.3 Unity的市场前景
  • 1.1.4 独具特色的Unity
  • 1.2 Unity集成开发环境的搭建
  • 1.2.1 Windows平台下Unity的下载及安装
  • 1.2.2 Mac OS平台下Unity的下载及安装
  • 1.2.3 目标平台的SDK与Unity集成
  • 1.3 第一个Unity程序
  • 1.4 本书案例的导入及运行
  • 1.5 本章小结
  • 第2章 Unity集成开发环境详解
  • 2.1 Unity集成开发环境的整体布局
  • 2.1.1 概述
  • 2.1.2 菜单栏
  • 2.1.3 工具栏
  • 2.1.4 场景设计面板
  • 2.1.5 游戏预览面板
  • 2.1.6 游戏组成对象列表
  • 2.1.7 项目资源列表
  • 2.1.8 属性查看器
  • 2.1.9 状态栏与控制台
  • 2.1.10 动画视图
  • 2.1.11 动画控制器编辑视图
  • 2.2 菜单栏
  • 2.2.1 File菜单
  • 2.2.2 Edit菜单
  • 2.2.3 Assets菜单
  • 2.2.4 GameObject菜单
  • 2.2.5 Component菜单
  • 2.2.6 Window菜单
  • 2.2.7 Help菜单
  • 2.3 本章小结
  • 第3章 Unity脚本程序的开发
  • 3.1 Unity脚本概述
  • 3.2 Unity中C#脚本的注意事项
  • 3.3 Unity脚本的基础语法
  • 3.3.1 常用操作
  • 3.3.2 记录时间
  • 3.3.3 访问游戏对象组件
  • 3.3.4 访问其他游戏对象
  • 3.3.5 向量
  • 3.3.6 成员变量和静态成员变量
  • 3.3.7 实例化游戏对象
  • 3.3.8 协同程序和中断
  • 3.3.9 一些重要的类
  • 3.3.10 特定文件夹
  • 3.3.11 脚本编译
  • 3.3.12 与销毁相关的方法
  • 3.3.13 性能优化
  • 3.4 综合示例
  • 3.4.1 示例策划及准备工作
  • 3.4.2 创建项目及场景搭建
  • 3.4.3 飞机控制脚本实现
  • 3.4.4 摄像机跟随脚本实现
  • 3.5 本章小结
  • 第4章 Unity图形用户界面基础
  • 4.1 GUI系统
  • 4.1.1 GUI组件的变量
  • 4.1.2 GUI中的常用控件
  • 4.1.3 GUI控件综合示例
  • 4.2 UGUI系统
  • 4.2.1 创建UGUI控件
  • 4.2.2 Canvas
  • 4.2.3 EventSystem组件
  • 4.2.4 Rect Transform组件
  • 4.2.5 Panel控件
  • 4.2.6 Button控件
  • 4.2.7 Text控件
  • 4.2.8 Image控件
  • 4.2.9 Raw Image控件
  • 4.2.10 Slider控件
  • 4.2.11 Scrollbar控件
  • 4.2.12 Toggle控件
  • 4.2.13 Input Field控件
  • 4.2.14 DropDown控件
  • 4.2.15 Scroll View控件
  • 4.2.16 UGUI布局管理的使用及相关组件介绍
  • 4.2.17 UGUI中不规则形状的按钮的碰撞检测
  • 4.2.18 UGUI屏幕自适应和锚点
  • 4.2.19 UGUI综合示例——音乐播放器的UI搭建
  • 4.3 预制件资源的应用
  • 4.3.1 预制件资源的创建
  • 4.3.2 通过prefab资源进而实例化对象
  • 4.4 常用的输入对象
  • 4.4.1 Touch输入对象
  • 4.4.2 Input输入对象
  • 4.5 本章小结
  • 第5章 物理引擎
  • 5.1 刚体
  • 5.1.1 刚体特性
  • 5.1.2 物理管理器
  • 5.2 碰撞器
  • 5.2.1 碰撞器的添加
  • 5.2.2 碰撞过滤
  • 5.2.3 触发器
  • 5.2.4 碰撞检测
  • 5.2.5 物理材质
  • 5.2.6 碰撞器交互
  • 5.3 关节
  • 5.3.1 铰链关节的特性
  • 5.3.2 铰链关节的创建
  • 5.3.3 固定关节的特性
  • 5.3.4 固定关节的创建
  • 5.3.5 弹簧关节的特性
  • 5.3.6 弹簧关节的创建
  • 5.3.7 角色关节的特性
  • 5.3.8 角色关节的创建
  • 5.3.9 可配置关节的特性
  • 5.3.10 可配置关节的创建
  • 5.3.11 关节综合示例——机械手
  • 5.4 交通工具
  • 5.4.1 车轮碰撞器的添加
  • 5.4.2 车轮碰撞器的特性
  • 5.4.3 车轮碰撞器的应用
  • 5.5 布料
  • 5.5.1 蒙皮网格的特性
  • 5.5.2 布料的特性
  • 5.5.3 布料简单示例
  • 5.6 力场
  • 5.6.1 力场的特性
  • 5.6.2 力场综合示例
  • 5.7 角色控制器
  • 5.7.1 角色控制器的特性
  • 5.7.2 角色控制器综合示例
  • 5.8 粒子系统
  • 5.8.1 粒子系统简介
  • 5.8.2 粒子系统的特性
  • 5.8.3 通过脚本控制粒子系统
  • 5.8.4 粒子系统综合示例
  • 5.9 物理引擎在动画系统中的使用
  • 5.9.1 场景的搭建
  • 5.9.2 脚本的开发
  • 5.9.3 运行效果
  • 5.10 物理引擎综合示例
  • 5.10.1 场景的搭建
  • 5.10.2 界面的搭建
  • 5.10.3 脚本的开发
  • 5.10.4 示例开发总结
  • 5.11 本章小结
  • 第6章 着色器
  • 6.1 初识着色器
  • 6.1.1 着色器概述
  • 6.1.2 材质、着色器与贴图
  • 6.1.3 ShaderLab语法基础
  • 6.1.4 着色器中涉及的各种空间概念
  • 6.2 渲染管线
  • 6.2.1 OpenGL渲染管线
  • 6.2.2 DirectX渲染管线
  • 6.2.3 Unity可编程渲染阶段
  • 6.3 着色器的形态
  • 6.3.1 固定管线着色器
  • 6.3.2 顶点片元着色器
  • 6.3.3 表面着色器
  • 6.4 表面着色器详述
  • 6.4.1 表面着色器基础知识
  • 6.4.2 通过表面着色器实现体积雾
  • 6.5 渲染通道的通用指令
  • 6.5.1 设置LOD数值
  • 6.5.2 渲染队列
  • 6.5.3 混合模式
  • 6.5.4 Alpha测试
  • 6.5.5 深度测试
  • 6.5.6 模板测试
  • 6.5.7 通道遮罩
  • 6.5.8 面的剔除操作
  • 6.5.9 抓屏操作
  • 6.6 曲面细分着色器
  • 6.6.1 固定数量的曲面细分
  • 6.6.2 基于距离的曲面细分
  • 6.6.3 基于边缘长度的曲面细分
  • 6.6.4 Phong曲面细分
  • 6.7 几何着色器
  • 6.8 Standard Shader
  • 6.8.1 基于物理的着色
  • 6.8.2 材质编辑器
  • 6.9 着色器的组织和优化
  • 6.9.1 着色器的组织和复用
  • 6.9.2 移动平台的优化
  • 6.10 着色器综合示例
  • 6.10.1 示例策划及准备工作
  • 6.10.2 创建项目及场景搭建
  • 6.10.3 着色器及相关脚本的开发
  • 6.10.4 节点对象的创建及相关脚本的开发
  • 6.10.5 示例运行效果
  • 6.11 本章小结
  • 第7章 常用着色器特效
  • 7.1 顶点动画
  • 7.1.1 基本原理
  • 7.1.2 开发步骤
  • 7.2 纹理动画
  • 7.2.1 基本原理
  • 7.2.2 开发步骤
  • 7.3 边缘发光
  • 7.3.1 基本原理
  • 7.3.2 开发步骤
  • 7.4 描边效果
  • 7.4.1 基本原理
  • 7.4.2 开发步骤
  • 7.5 遮挡透视效果
  • 7.5.1 基本原理
  • 7.5.2 开发步骤
  • 7.6 菲涅尔效果
  • 7.6.1 基本原理
  • 7.6.2 立方体纹理技术
  • 7.6.3 开发步骤
  • 7.7 高斯模糊
  • 7.7.1 基本原理
  • 7.7.2 开发步骤
  • 7.8 Bloom效果
  • 7.8.1 基本原理
  • 7.8.2 开发步骤
  • 7.9 景深效果
  • 7.9.1 基本原理
  • 7.9.2 开发步骤
  • 7.10 积雪效果
  • 7.10.1 基本原理
  • 7.10.2 开发步骤
  • 7.11 浴室玻璃效果
  • 7.11.1 基本原理
  • 7.11.2 开发步骤
  • 7.12 消融效果
  • 7.12.1 基本原理
  • 7.12.2 开发步骤
  • 7.13 本章小结
  • 第8章 3D游戏开发的常用技术
  • 8.1 立方贴图技术的实际应用
  • 8.1.1 Unity天空盒
  • 8.1.2 Cubemap的应用
  • 8.2 3D拾取技术
  • 8.3 视频播放器
  • 8.3.1 导入视频片段的属性
  • 8.3.2 视频播放器示例
  • 8.4 动态字体
  • 8.5 重力加速度传感器
  • 8.6 PlayerPrefs类
  • 8.7 虚拟按钮与摇杆的使用
  • 8.7.1 标准资源包的下载与导入
  • 8.7.2 虚拟按钮和摇杆使用示例
  • 8.8 线的渲染
  • 8.9 Render Texture的应用
  • 8.10 声音
  • 8.10.1 声音类型
  • 8.10.2 音频管理器
  • 8.10.3 音频监听器
  • 8.10.4 音频源
  • 8.10.5 音频效果
  • 8.10.6 音频混响区
  • 8.10.7 简单的声音控制示例
  • 8.10.8 混音器
  • 8.10.9 录音
  • 8.11 Cinemachine相机的使用
  • 8.11.1 Cinemachine相机的下载与安装
  • 8.11.2 Cinemachine相机的使用
  • 8.12 Timeline的使用
  • 8.13 多场景编辑
  • 8.13.1 多场景编辑的基础操作
  • 8.13.2 多场景编辑的高级操作
  • 8.13.3 还存在的问题
  • 8.14 水特效
  • 8.14.1 基础知识
  • 8.14.2 水特效示例
  • 8.15 雾特效
  • 8.15.1 示例效果与基本原理
  • 8.15.2 场景搭建与开发步骤
  • 8.16 3D场景中的其他特效
  • 8.16.1 光源周围光晕
  • 8.16.2 面板渲染
  • 8.16.3 投影器
  • 8.17 本章小结
  • 第9章 光影效果的使用
  • 9.1 渲染路径与颜色空间
  • 9.1.1 渲染路径
  • 9.1.2 颜色空间
  • 9.2 光源
  • 9.2.1 点光源
  • 9.2.2 平行光光源
  • 9.2.3 聚光灯光源
  • 9.2.4 区域光光源
  • 9.2.5 发光材质
  • 9.2.6 Cookies
  • 9.2.7 光照过滤
  • 9.3 阴影
  • 9.3.1 阴影质量
  • 9.3.2 阴影性能
  • 9.3.3 阴影的硬件支持
  • 9.4 光照贴图
  • 9.4.1 对场景进行光照烘焙
  • 9.4.2 光照烘焙参数详解
  • 9.5 光探头
  • 9.5.1 光探头使用示例
  • 9.5.2 光探头应用细节
  • 9.5.3 光探头代理
  • 9.6 法线贴图
  • 9.6.1 在Unity中使用法线贴图
  • 9.6.2 在3ds max中制作法线贴图
  • 9.7 镜头光晕
  • 9.8 反射探头
  • 9.8.1 反射探头的使用
  • 9.8.2 反射探头参数详解
  • 9.9 镜子的开发
  • 9.9.1 场景的搭建
  • 9.9.2 镜面着色器的开发
  • 9.9.3 C#脚本的开发
  • 9.10 真实水面特效的开发
  • 9.10.1 基本原理
  • 9.10.2 场景的搭建
  • 9.10.3 C#脚本的开发
  • 9.10.4 镜面着色器的开发
  • 9.11 本章小结
  • 第10章 模型与动画
  • 10.1 3D模型的导入
  • 10.1.1 主流3D建模软件简介
  • 10.1.2 Unity与建模软件单位的比例关系
  • 10.1.3 将3D模型导入Unity
  • 10.2 Mesh
  • 10.2.1 网格过滤器
  • 10.2.2 Mesh属性和方法简介
  • 10.2.3 Mesh的使用
  • 10.2.4 使用Mesh使物体变形示例
  • 10.3 Shatter Toolkit的使用
  • 10.3.1 Shatter Toolkit简介
  • 10.3.2 使用Shatter Toolkit示例
  • 10.4 旧版动画系统
  • 10.4.1 角色动画资源的导入
  • 10.4.2 动画控制器
  • 10.4.3 动画脚本
  • 10.4.4 使用旧版动画系统示例
  • 10.5 动画系统
  • 10.5.1 角色动画的配置
  • 10.5.2 动画控制器的创建
  • 10.5.3 动画控制器的配置
  • 10.5.4 角色动画的重定向
  • 10.5.5 角色动画的混合——创建动画混合树
  • 10.5.6 角色动画的混合——混合类型介绍
  • 10.5.7 Mecanim动画系统中的代码控制
  • 10.5.8 示例分析
  • 10.6 动画变形
  • 10.7 本章小结
  • 第11章 地形与寻路技术
  • 11.1 地形引擎
  • 11.1.1 地形的创建
  • 11.1.2 灰度图的使用
  • 11.2 树编辑器
  • 11.2.1 属性参数简介
  • 11.2.2 一个简单的示例
  • 11.3 拖尾渲染器
  • 11.3.1 背景简介
  • 11.3.2 拖尾渲染器的属性
  • 11.3.3 拖尾渲染器的使用
  • 11.3.4 产生汽车轮胎刹车痕示例
  • 11.4 自动寻路系统
  • 11.4.1 基础知识
  • 11.4.2 一个简单的示例
  • 11.5 本章小结
  • 第12章 游戏资源的更新
  • 12.1 AssetBundle
  • 12.1.1 AssetBundle简介
  • 12.1.2 AssetBundle的创建
  • 12.1.3 AssetBundle的下载
  • 12.1.4 AssetBundle的加载和卸载
  • 12.1.5 关于AssetBundle
  • 12.1.6 本节小结
  • 12.2 Lua热更新
  • 12.2.1 热更新简介
  • 12.2.2 xLua简介
  • 12.2.3 xLua框架简介
  • 12.2.4 xLua常用方法简介
  • 12.2.5 xLua热更新示例
  • 12.2.6 热更新服务器的配置
  • 12.2.7 本节小结
  • 12.3 本章小结
  • 第13章 多线程技术与网络开发
  • 13.1 多线程技术
  • 13.1.1 基础知识
  • 13.1.2 多线程技术用于大量计算
  • 13.1.3 多线程技术在网络开发中的应用
  • 13.2 WWW类
  • 13.2.1 用WWW类访问网络资源
  • 13.2.2 场景的搭建
  • 13.2.3 C#脚本的编写
  • 13.3 JSON简介与应用
  • 13.3.1 基础知识
  • 13.3.2 JSON的解析
  • 13.4 网络类
  • 13.4.1 静态变量
  • 13.4.2 静态方法
  • 13.4.3 消息发送
  • 13.5 基于Unity Network开发网络游戏
  • 13.5.1 非授权服务器和授权服务器
  • 13.5.2 网络视图组件
  • 13.5.3 示例的效果预览
  • 13.5.4 示例场景的搭建
  • 13.5.5 项目主体脚本的开发
  • 13.5.6 服务器和客户端的发布
  • 13.6 基于Netty开发网络游戏
  • 13.6.1 Netty框架简介
  • 13.6.2 网络游戏架构简介
  • 13.6.3 示例的效果预览
  • 13.6.4 示例场景的搭建
  • 13.6.5 服务器端的开发
  • 13.6.6 客户端的开发
  • 13.7 基于KBEngine服务器开发网络游戏
  • 13.7.1 环境的搭建
  • 13.7.2 示例的效果预览
  • 13.7.3 示例场景的搭建
  • 13.7.4 服务器端的开发
  • 13.7.5 客户端的开发
  • 13.8 本章小结
  • 第14章 Unity 2D游戏开发
  • 14.1 Unity 2D简介
  • 14.1.1 Unity 2D项目的创建
  • 14.1.2 Unity 2D的功能
  • 14.1.3 Unity 2D游戏开发的工作流程
  • 14.2 Unity 2D核心功能对象——Sprite
  • 14.2.1 Sprite对象的创建和基本用法
  • 14.2.2 换帧动画的制作
  • 14.2.3 制作换帧动画的具体步骤
  • 14.3 Unity 2D中的物理引擎
  • 14.3.1 2D刚体
  • 14.3.2 2D碰撞器
  • 14.3.3 2D关节
  • 14.3.4 2D效应器
  • 14.3.5 使用2D物理引擎制作撞冰块示例
  • 14.4 瓦片地图
  • 14.4.1 瓦片资源的创建
  • 14.4.2 瓦片画板与瓦片地图的创建与使用
  • 14.5 一个完整的2D游戏示例
  • 14.5.1 游戏背景及功能概述
  • 14.5.2 游戏的策划及准备工作
  • 14.5.3 游戏的架构
  • 14.5.4 主菜单场景的开发
  • 14.5.5 游戏场景的开发
  • 14.6 本章小结
  • 第15章 常用性能优化技术与编辑器的扩展
  • 15.1 程序性能的分析
  • 15.1.1 Profiler工具的使用方法
  • 15.1.2 Profiler工具的参数说明
  • 15.2 代码的断点调试
  • 15.2.1 通过MonoDevelop调试
  • 15.2.2 通过Microsoft Visual Studio Tools for Unity调试
  • 15.3 优化事项
  • 15.3.1 遮挡剔除技术
  • 15.3.2 批处理技术
  • 15.3.3 移动平台的优化技巧
  • 15.4 编辑器的扩展——Editor
  • 15.4.1 自定义检视面板
  • 15.4.2 序列化检视面板
  • 15.4.3 自定义窗口
  • 15.4.4 自定义菜单项
  • 15.5 本章小结
  • 第16章 休闲游戏——平衡球
  • 16.1 背景及功能概述
  • 16.1.1 背景概述
  • 16.1.2 功能概述
  • 16.2 游戏的策划及准备工作
  • 16.2.1 游戏的策划
  • 16.2.2 使用Unity开发游戏前的准备工作
  • 16.3 游戏的架构
  • 16.3.1 各个场景简介
  • 16.3.2 游戏架构简介
  • 16.4 主菜单场景
  • 16.4.1 场景的搭建
  • 16.4.2 主摄像机的设置及脚本的开发
  • 16.5 帮助场景
  • 16.5.1 场景的搭建
  • 16.5.2 主摄像机的设置及脚本的开发
  • 16.5.3 球的设置及脚本的开发
  • 16.6 关卡一场景
  • 16.6.1 场景的搭建
  • 16.6.2 主摄像机的设置及脚本的开发
  • 16.6.3 有关动画的设置及脚本的开发
  • 16.6.4 球的设置及脚本的开发
  • 16.7 关卡二场景
  • 16.7.1 场景的搭建
  • 16.7.2 主摄像机的设置及脚本的开发
  • 16.7.3 有关动画的设置的及脚本的开发
  • 16.7.4 球的设置及脚本的开发
  • 16.8 场景的加载
  • 16.9 游戏的优化与改进
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。