新書推薦:
《
古典的回響:溪客舊廬藏明清文人繪畫
》
售價:NT$
1990.0
《
根源、制度和秩序:从老子到黄老学(王中江著作系列)
》
售價:NT$
550.0
《
索恩丛书·北宋政治与保守主义:司马光的从政与思想(1019~1086)
》
售價:NT$
345.0
《
掌故家的心事
》
售價:NT$
390.0
《
农为邦本——农业历史与传统中国
》
售價:NT$
340.0
《
郊庙之外:隋唐国家祭祀与宗教 增订版 (三联·哈佛燕京学术丛书)
》
售價:NT$
480.0
《
小麦文明:“黄金石油”争夺战
》
售價:NT$
445.0
《
悬壶杂记全集:老中医多年临证经验总结(套装3册) 中医医案诊疗思路和处方药应用
》
售價:NT$
614.0
|
編輯推薦: |
全书结构清晰、配图丰富,阐述通俗易懂、深入浅出
对ARKit底层技术原理机制进行了详细阐述,对ARKit各功能特性逐一分解剖析
注重实践,通过翔实案例,提高实际工程转化能力
从技术运用到技术深度,着力解决开发人员在项目开发中面临的难点问题
|
內容簡介: |
本书采用RealityKit框架,对ARKit原生开发进行了全面深入的探究,从ARKit技术原理、理论脉络到各功能技术点、设计原则、性能优化,对AR应用开发中涉及到的技术进行了全方位的讲述,用语通俗易懂,阐述深入浅出。 本书共分三个部分:*部分为基础篇,包括第1章到第3章,从*基础的增强现实概念入手,简述了ARKit、RealityKit技术体系结构、基本使用环境、运动跟踪原理、重要技术术语、基本功能点等基础知识,本篇立意高屋建瓴,带领读者一览ARKit全貌,形成整体印象;第二部分为功能技术篇,包括第4章至第12章,对ARKit各个功能技术点进行了全面深入的剖析,在讲述功能点时,特别注重技术的实际应用,每一个功能点都配有详尽的可执行代码及代码的详细说明;第三部分为提高篇,包括第13章和第14章,主要从高层次对AR开发中的原则及性能优化进行讲解,提升开发人员对AR开发整体把握能力。 本书结构清晰、循序渐进、深浅兼顾,实例丰富,每个技术点都有案例,特别注重对技术的实际运用,力图解决读者在项目开发中面临的难点问题,实用性强。 本书适合ARKit初学者、iOS开发人员、程序员、科研人员,也可以作为高校、大专院校相关专业师生的学习用书,以及培训学校的培训教材。
|
關於作者: |
汪祥春,计算机科学与技术专业硕士,全国信标委计算机图形和图像处理及环境数据表示分技术委员会虚拟现实与增强现实标准工作组成员,中国增强现实核心技术产业联盟成员,曾在中国人民解放军某部从事部队信息化软件开发研制,现从事AR技术研发及管理工作。拥有深厚的软件工程专业背景,省部级科技项目实施管理经验,CSDN博客专家。拥有十余年软件开发及项目管理经验,100余万行代码开发量积累,著有《基于Unity的ARCore开发实战详解》《AR开发权威指南AR Foundation》。
|
目錄:
|
基础篇
第1章ARKit基础
1.1增强现实技术概述
1.1.1AR概述
1.1.2AR技术
1.1.3AR技术应用
1.2AR技术原理
1.2.1位置追踪
1.2.2视觉校准
1.2.3惯性校准
1.2.43D重建
1.3ARKit概述
1.3.1什么是ARKit
1.3.2ARKit功能
1.3.3ARKit支持的设备
1.3.4ARKit的不足
1.4ARKit原理
1.4.1ARKit三大基础能力
1.4.2ARSession
1.4.3ARAnchor
1.4.4ARFrame
1.5RealityKit概述
1.5.1RealityKit主要功能
1.5.2RealityKit体系架构
1.6ARKit初体验
1.7调试AR应用
第2章RealityKit基础
2.1运动跟踪原理
2.1.1ARKit坐标系
2.1.2ARKit运动跟踪分类
2.1.3ARKit运动跟踪
2.1.4ARKit使用运动跟踪的注意事项
2.2ARSession管理
2.2.1创建ARSession
2.2.2ARConfiguration
2.2.3设备可用性检查和权限申请
2.2.4ARSession生命周期管理与跟踪质量
2.3ARSession执行流
2.4平面检测
2.5射线检测
2.5.1ARKit中的射线检测
2.5.2射线检测实例
2.6手势检测
2.6.1手势检测定义
2.6.2ARKit中的手势检测
2.7ARCoaching
2.8RealityKit中的事件系统
2.9LiDAR传感器
2.9.1场景几何
2.9.2虚拟物体放置
2.9.3动作捕捉与人形遮挡
2.9.4场景仿真
2.10Depth API
2.11AR截屏
2.12基于位置的AR
2.12.1技术基础
2.12.2实践
第3章渲染基础
3.1材质纹理
3.2网格
3.3模型
3.4动画
3.5RealityKit渲染
3.5.1立方体贴图
3.5.2PBR渲染
3.5.3清漆贴图
功能技术篇
第4章图像与物体检测跟踪
4.12D图像检测跟踪
4.1.1图像检测跟踪基本操作
4.1.2检测图像使用的配置
4.1.3图像跟踪优化
4.23D物体检测跟踪
4.2.1获取参考物体空间特征信息
4.2.2扫描获取物体空间特征信息的注意事项
4.2.33D物体识别跟踪基本操作
第5章人脸检测跟踪
5.1人脸检测基础
5.1.1人脸检测概念
5.1.2人脸检测技术基础
5.2人脸检测配置
5.2.1人脸网格
5.2.2挂载虚拟元素
5.3BlendShapes
5.3.1BlendShapes基础
5.3.2BlendShapes技术原理
5.3.3BlendShapes使用
5.4同时开启前后摄像头
第6章光影特效
6.1光照
6.1.1光源
6.1.2光与材质的交互
6.1.3光照模型
6.1.4RealityKit中的光源
6.2光照估计
6.2.1光照一致性
6.2.2ARKit中的光照估计
6.3环境反射
6.3.1环境探头
6.3.2环境反射操作
6.3.3性能优化
第7章肢体动作捕捉与人形遮挡
7.1ARBodyTrackingConfiguration配置
7.22D人体姿态估计
7.2.1人体骨骼关节点检测
7.2.2使用2D人体姿态估计
7.33D人体姿态估计
7.3.13D人体姿态估计基础
7.3.23D人体姿态估计实例
7.4人形遮挡
7.4.1人形遮挡原理
7.4.2人形遮挡实现
7.5人形提取
第8章持久化存储与多人共享
8.1AR锚点
8.1.1锚点概述
8.1.2使用锚点
8.1.3使用锚点的注意事项
8.2持久化存储与共享体验技术基础
8.2.1initialWorldMap属性
8.2.2isCollaborationEnabled属性
8.3ARWorldMap
8.3.1ARWorldMap概述
8.3.2存储与加载ARWorldMap
8.3.3通过网络传输ARWorldMap
8.4协作Session
8.4.1协作Session概述
8.4.2协作Session实例
8.4.3协作Session使用事项
8.5RealityKit同步服务
8.5.1RealityKit同步服务机制
8.5.2使用RealityKit同步服务事项
第9章物理模拟
9.1物理引擎
9.2RealityKit中的物理组件
9.2.1PhysicsBodyComponent组件
9.2.2PhysicsMotionComponent组件
9.2.3CollisionComponent组件
9.3物理模拟实例
9.4触发器与触发域
9.5自定义物理实体类
第10章Reality Composer
10.1Reality Composer主要功能
10.2内容操作
10.2.1锚点选择
10.2.2控制场景锚定类型
10.2.3添加资源
10.2.4修改资源
10.2.5操作资源
10.3与AR应用整合
10.3.1利用Xcode自动生成的代码加载场景
10.3.2手动加载场景
10.4行为交互
10.4.1触发器
10.4.2动作
10.5代码交互
10.5.1场景对象操作
10.5.2添加程序性资源
10.6导出USDZ
第11章3D文字与音视频
11.13D文字
11.23D音频
11.2.13D声场原理
11.2.2RealityKit中的3D音效
11.33D视频
第12章USDZ与AR Quick Look
12.1USDZ概述
12.1.1USD
12.1.2USDZ
12.2USDZ文件转换
12.2.1USDZ Tools
12.2.2Reality Converter
12.2.3USD Unity插件
12.3AR Quick Look概述
12.4App应用中嵌入AR Quick Look
12.5Web网页中嵌入AR Quick Look
12.5.1选择支付样式
12.5.2显示自定义文字按钮文件
12.5.3自定义显示文字
12.5.4自定义显示条目
12.5.5自定义条目高度
12.5.6事件处理
12.6使用AR Quick Look的注意事项
提高篇
第13章设计原则
13.1移动AR带来的挑战
13.1.1用户必须移动
13.1.2要求手持设备
13.1.3要求必须将手机放在脸前
13.1.4操作手势
13.1.5用户必须打开App
13.2移动AR设计准则
13.2.1有用或有趣
13.2.2虚拟和真实的混合必须有意义
13.2.3移动限制
13.2.4心理预期与维度转换
13.2.5环境影响
13.2.6视觉效果
13.2.7UI设计
13.2.8沉浸式交互
13.3移动AR设计指南
13.3.1环境
13.3.2用户细节
13.3.3虚拟内容
13.3.4交互
13.3.5视觉设计
13.3.6真实感
第14章性能优化
14.1移动平台性能优化基础
14.1.1影响性能的主要因素
14.1.2AR常用调试方法
14.2移动设备性能优化
14.3性能优化的一般流程
14.4RealityKit优化
14.4.1降低CPU使用
14.4.2降低GPU使用
14.5RealityKit渲染测试
14.6性能优化与设备兼容性
参考文献
|
內容試閱:
|
自2017年以来,AR(Augmented Reality,增强现实)技术发展迅速,已从实验室的科研技术转变为消费型的大众技术,并呈现快速普及爆发态势。在计算机视觉与人工智能技术的推动下,AR技术无论是跟踪精度、设备性能,还是人机交互自然性,都有了很大提高。据权威机构预测,AR技术会成为未来十年改变人们生活、工作最重要的技术之一,并在5G通信技术的助力下出现应用爆发。
AR技术是一种将虚拟信息与真实世界融合展示的技术,其广泛运用了人工智能、三维建模、实时跟踪注册、虚实融合、智能交互、传感计算等多种技术手段,将计算机生成的文字、图像、三维模型、音频、视频、动画等虚拟信息模拟仿真后应用到真实世界中。AR技术同时考虑了真实世界与虚拟信息的相互关系,虚实信息互为补充,从而实现对真实世界的增强。
ARKit是苹果公司在前沿科技领域的重大技术布局,引领着移动AR发展方向,不仅面向iPhone、iPad,也面向即将面世的AR眼镜。RealityKit是全新的、专为AR渲染开发的高级框架,与ARKit高度集成,功能强大、界面简洁、高效易用,它与Reality Composer、Reality Converter一起组成了iOS AR原生开发的三剑客。借助于ARKit,我们不再需要单独且昂贵的设备就可以体验到AR带来的奇妙体验,AR使移动手机具备了另一种崭新的应用形式。
由于AR是一门前沿技术、ARKit也处于高速发展中,因此当前可供开发者参考的国内外技术资料非常匮乏,更没有成体系的完整学习资料。本书旨在为ARKit技术开发人员提供一份相对完善的成体系的学习材料,帮助开发者系统化掌握AR开发的相关知识,建立原生iOS AR应用开发知识体系。
本书关注对ARKit技术的应用,但在讲解技术点的同时对其原理、技术背景进行了较深入的探究,采取循序渐进的方式,使读者知其然,更能知其所以然,一步一步地将读者带入AR应用开发的殿堂。
前置知识
本书面向ARKit初学者与iOS程序员,内容讲述尽力采用通俗易懂的语言、从基础入门,但仍然希望读者能具备以下前置知识。
1 熟悉Swift高级语言,掌握基本的Swift语法及常见数据结构、编码技巧,对利用SwiftUI进行界面开发有一定了解。
2 熟悉Xcode开发环境,能进行基本的开发环境设置、功能调试、资源使用。
3 了解图形学。数字三维空间是用数学精确描述的虚拟世界,如果读者对坐标系、向量及基本的代数运算有所了解会对理解ARKit工作原理、渲染管线有很大帮助。
预期读者
本书属于技术类书籍,预期读者人群包括:
1 高等院校及对计算机技术有浓厚兴趣的专科学校学生。
2 对AR技术有兴趣的科技工作者。
3 向AR方向转行的程序员、工程师。
4 研究讲授AR技术的教师。
5 渴望利用新技术的自由职业者或者其他行业人员。
本书特色
1 结构清晰。本书共分三篇: 基础篇、功能技术篇和提高篇。紧紧围绕ARKit原生开发,从各个侧面对其功能特性进行全面的讲述。
2 循序渐进。本书充分考虑不同知识背景读者的需求,按知识点循序渐进,通过大量配图、实例进行详细讲解,力求使iOS初学者能快速掌握ARKit原生开发。
3 深浅兼顾。在讲解ARKit技术点时对其技术原理、理论脉络进行了较深入的探究,用语通俗易懂,对技术阐述深入浅出。
4 实用性强。本书实例丰富,每个技术点都有案例,注重对技术的实际运用,力图解决读者在项目开发中面临的难点问题,实用性非常强。
源代码
扫描书中二维码即可下载本书各章节案例源代码。
读者反馈
尽管我们在本书的编写过程中多次对内容的准确性、语言描述的连贯性和叙述的一致进行审查、校正,但由于作者水平有限,书中仍然难免出现错误,欢迎读者批评指正。
致谢
仅以此书献给我的妻子欧阳女士,孩子妍妍和轩轩,是你们的支持让我勇往直前,永远爱你们。
感谢赵佳霓编辑对本书的大力支持。
汪祥春
2020年12月
本书源代码下载
|
|