Google Cardboard App 开发指南

978-7-115-45303-7
作者: 【美】沃西耶 M.(Michael Vaissiere) 帕萨莫尼克 M.(Mike Pasamonik) 波波弗 O.(Oleksandr Popov) 比克霍夫 P.(Peter Bickhofe)
译者: 吴亚峰
编辑: 吴晋瑜

图书目录:

第 1章 初识VR 1

1.1 令人惊叹的效果 1

1.2 让人不满足的体验 1

1.3 为什么要大力发展谷歌魔镜 2

1.4 进一步了解VR应用开发的市场 3

1.5 对未来几年的预测 4

1.6 开发工具和工作流 4

1.6.1 Unity 5.1 4

1.6.2 谷歌魔镜开发工具包(v0.5) 5

1.6.3 3D建模创作工具Blender 5

1.6.4 图像处理软件GMIP 6

1.6.5 音效创作 6

1.6.6 3D人物角色建模软件Makehuman 6

1.6.7 关于工作流 7

1.6.8 硬件 7

1.7 VR能带来什么 7

1.7.1 身临其境的氛围 8

1.7.2 沉浸式的体验 9

1.7.3 真实感和依赖性 9

1.8 谷歌魔镜平台 10

1.8.1 现实与虚拟现实 10

1.8.2 移动平台 11

1.8.3 移动平台的VR用户 11

1.8.4 硬件 12

1.8.5 制约因素及局限性 13

第 2章 VR应用—Alien Apartment 15

2.1 我为何会制作Alien Apartment 15

2.2 构建自己世界的相关基础知识 16

2.2.1 相关的设置 16

2.2.2 管理坐标轴 17

2.2.3 立体视图的开发 21

2.2.4 更新玩家的方位角 22

2.2.5 运动检测原理(头部运动触发的事件) 25

2.2.6 创建非传统的用户交互界面 32

2.3 基础知识 32

2.4 运行案例 36

可以制作凌驾于VR 3D场景之上的用户界面吗 38

2.5 打造环境氛围 39

2.5.1 天空盒和光照 39

2.5.2 打造能勾起美好回忆的氛围 39

2.5.3 音频 41

2.5.4 音乐 42

2.5.5 到目前我们做了什么 42

2.6 杂项 42

2.6.1 光照贴图 43

2.6.2 性能 43

2.6.3 淡入淡出 47

2.6.4 签名 47

2.6.5 版本控制 47

2.6.6 运行时回调方法 47

2.6.7 通用协同程序管理 48

2.6.8 构建参数 49

2.6.9 用返回键退出应用 49

2.6.10 屏幕自动休眠时间 49

2.6.11 着色器 50

2.7 小结 56

第3章 VR应用—Glitcher VR 57

3.1 Glitcher VR简介 57

先前的经验和开发的动机 58

3.2 VR开发的挑战 59

3.3 Glitcher VR应用架构解析 60

3.3.1 摄像头子系统 61

3.3.2 摄像头子系统需要处理的问题 62

3.3.3 启用和停用摄像头 62

3.3.4 快速将帧画面发送到GPU 64

3.4 创建绘制用表面 64

3.4.1 保存照片、截屏和录像功能 66

3.4.2 通过摄像头管理器自动检测和管理摄像头 67

3.5 输入子系统 69

3.5.1 输入子系统需要解决的问题 69

3.5.2 检测和处理输入设备 70

3.5.3 将语音作为输入复用器 71

3.6 渲染和滤镜系统 73

3.6.1 设计目标 74

3.6.2 基础滤镜 75

3.6.3 基于基础滤镜构建复杂滤镜 78

3.6.4 附加内容的渲染 79

3.6.5 滤镜管理器 85

3.7 通知系统 87

3.7.1 设计目标 87

3.7.2 构建文本渲染器 87

3.7.3 创建基本通知 89

3.7.4 通过通知调度程序调度通知 90

3.8 辅助工具类和其他特性 92

3.8.1 手电筒和闪光灯 94

3.8.2 实施面部检测 95

3.8.3 将面部位置转换为GLSL坐标 96

3.8.4 将面部信息发送给滤镜 97

3.9 一些技巧和潜在的改进 98

3.9.1 输入系统的改进 98

3.9.2 避免无用的内容 99

3.9.3 让普通用户参与测试 100

3.9.4 硬件兼容性测试 101

3.9.5 内存管理及分析工具的使用 101

3.10 小结 102

第4章 Lanterns和Village案例 105

4.1 两个VR应用都能使用的通用渲染技术 106

4.1.1 为VR改造场景 107

4.1.2 创建自己的渲染器 109

4.1.3 使用安卓版谷歌魔镜SDK的渲染器 111

4.2 渲染Lanterns VR应用的场景 114

4.2.1 优化绘制顺序 114

4.2.2 雾和灯光着色器 114

4.2.3 水面的反射效果 116

4.2.3 夜空着色器 120

4.3 Village VR场景的渲染及优化技巧 121

4.3.1 用单次绘制调用生成烟雾效果 122

4.3.2 用点精灵实现萤火虫和雪 124

4.3.3 按照距离进行对象排序 125

4.3.4 视锥体剪裁 126

4.3.5 人物的移动 130

4.3.6 重用纹理和图集 130

4.3.7 整合光照贴图 131

4.3.8 光照贴图调色板 133

4.3.9 Village着色器 140

4.3.10 植被着色器 142

4.3.11 天空纹理的压缩 145

4.4 小结 147

第5章 谷歌魔镜—面向大众的VR 149

5.1 谷歌魔镜项目 149

5.2 开始使用谷歌魔镜 150

5.2.1 之前的宇航员游戏 151

5.2.2 WAA!VR的故事 152

5.2.3 开始开发WAA! 153

5.2.4 Unity 3D专业版 153

5.2.5 测试设备Nexus 5 153

5.2.6 谷歌魔镜装备 154

5.2.7 用Maxon Cinema4D R16开发游戏素材 155

5.2.8 将资源文件导出到Unity:FBX还是C4D格式 155

5.3 Unity3D版谷歌魔镜SDK 155

5.4 应用人机交互方案 158

5.4.1 磁钮触发器 159

5.4.2 射线碰撞检测 160

5.5 UI界面、菜单以及场景设置 161

5.5.1 天空盒以及“太空”环境 162

5.5.2 屏幕标题 164

5.5.3 “Universe”主菜单 165

5.5.4 游戏中的HUD显示 166

5.6 VR中射击和击中效果的开发 168

5.6.1 添加作为目标的小行星 168

5.6.2 发射导弹 170

5.6.3 VR 3D效果的有效空间区域 173

5.6.4 避免晕动症 174

5.7 特殊效果、调整和测试 174

5.7.1 使用粒子特效提升视觉效果 175

5.7.2 拖尾渲染器 176

5.7.3 添加道具 177

5.7.4 调整游戏控制参数 180

5.7.5 添加角色身体 181

5.8 发行以及听取玩家社区的反馈 181

5.8.1 来自谷歌的联络 182

5.8.2 SXSW和Google I/O开发人员大会 182

5.8.3 下一步:移植Oculus和iOS平台 183

5.9 致谢 184

详情

这本书将会介绍Google Cardboard这个新平台的基础、利用Cardboard 的 Android SDK 开发的技术,以及统一的SDK的介绍。还包括Cardboard 创建的环境、虚拟视图的建立、手机相机到层的不同的筛选器应用,捕获、控制语音和优化图形,总之这本书将为开发人员提供他们所需要的一切,是开发人员成功建立谷歌Cardboard 应用程序的权威指南。

图书摘要

相关图书

scikit-learn机器学习(第2版)
scikit-learn机器学习(第2版)
树莓派机器人实战秘笈(第3版)
树莓派机器人实战秘笈(第3版)
深度学习
深度学习
TensorFlow机器学习项目实战
TensorFlow机器学习项目实战
机器学习Web应用
机器学习Web应用
TensorFlow技术解析与实战
TensorFlow技术解析与实战

相关文章

相关课程