【多服务场景化解决方案】AR虚拟技术助力智能家装
1 、介绍
总览
本应用采用了华为图形引擎服务的AR虚拟技术,您可以在手机相机里摆放想要购置的家具家电,交互式体验让您可以轻松操控它们的3D图例,以此来确定这些家具家电是否适合摆放在您的家里。
特性 |
HMS Core Kits |
统一登录帐号:华为帐号 |
帐号服务 |
摆放3D物品,虚拟装扮爱家。 |
图形引擎服务 |
您将建立什么
在本次codelab中,您将建立一个集成华为帐号服务以及图形引擎服务的装修应用程序。您的应用将包含:
-
华为帐号登录功能。
-
物品种类选择功能。
-
在AR相机中放置和移动选择的3D物品、放大、缩小等操作。
您将会学到什么
在本次codelab中,您将学习到:
-
如何在AppGallery Connect中配置项目信息。
-
如果集成华为帐号服务以及图形引擎服务。
-
如何使用华为帐号服务进行登录。
-
如何使用图形引擎服务在虚拟房屋中展示3D物品。
2、您需要什么
硬件需求
提前准备如下硬件:
-
一台Windows 10台式或笔记本电脑。
-
一部集成HMS Core (APK) 5.0.0.300或以上版本及EMUI 9.1或以上版本的华为手机。
软件需求
提前准备如下软件:
-
JDK 1.8或以上版本
-
安卓SDK平台(API 23或以上版本)
-
Gradle 5.4.1或以上版本
3、能力接入准备
参考如下:
4、开通服务
点击“项目设置”中“API管理”页签,开通如下服务的API:
-
帐号服务
-
认证服务
说明:以上API默认已开通。如未开通,请手动开通。
5、设计界面
登录界面支持华为帐号登录,获取用户名和头像图片地址,并展示在头像区域中。
主页按类别展示物品。您可以按需选择物品装扮房屋。
Product Details页面展示产品详情。您可以添加物品到购物车或者获取该物品的3D视图。
3D视图打开支持ARView的相机。相机检测平面,以点状图片显示该平面,您可以点击平面摆放物品。此外,还可以在3D视图中放大、缩小、移动、旋转物品。
6、集成帐号服务
华为账号服务登录后,应用可以访问帐号信息,例如邮箱地址、用户名、头像等。一旦使用可信赖的华为帐号服务登录,无需再验证用户邮箱或电话号码。
应用集成帐号服务验证用户的华为帐号并登录用户。
Java
使用认证服务登录。
结果
7、集成图形引擎服务
华为图形引擎服务是一个高性能、低功耗、轻量级渲染引擎,提供高级描述性API,便于编辑、操作和渲染3D资源。
应用集成图形引擎服务,使用ARView渲染普通AR场景。
Xml
在布局中添加图形引擎服务的ARView。
Java
检查ARPermission,按需请求权限。并初始化图形引擎服务。
开通ARView平面展示。
加载素材。
添加相机和灯光组件。
依次在ARView调用onResume()、onPause()、onDestroy()方法。
结果
华为图形引擎服务的ARView检测到点状平面后,您可以在该平面摆放、放大、缩小、移动、或旋转3D物品来确认效果。下图展示空调和长凳添加到视图上的效果。
您可以使用本codelab和图形引擎服务的ARView来装扮您家。
8、恭喜您
祝贺您,您已经成功构建了一个HMSHomeDecor安卓应用并学到了:
-
如何调用帐号服务、认证服务以及图形引擎服务的接口。
-
如何实现图形引擎服务的ARView服务。
-
如何在ARView中加载素材(3D文件或者纹路)。
9、参考文件
参考如下文件获取更多信息:
点击如下链接下载源码:
声明:本codelab实现多个HMS Core服务在单个项目中的集成,供您参考。您需要验证确保相关开源代码的安全合法合规。
欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh
相关文章
- 【华为云技术分享】“技术-经济范式”视角下的开源软件演进剖析-part 3
- 【华为云技术分享】Linux内核编程环境 (2)
- 【华为云技术分享】华为云文档数据库服务DDS监控告警全新优化
- 阿里云容器服务 ACK 产品技术动态(202212)
- 阿里云容器服务 ACK 产品技术动态(202211)
- 阿里云容器服务 ACK 产品技术动态(202210)
- 阿里巴巴服务网格技术三位一体战略背后的思考与实践
- 技术合伙人之殇
- MaxCompute 中的Code Generation技术简介
- Android版OpenCV图像处理技术亲自验证[二十五]之SQRBox过滤器(附源码)
- 什么是 SAP ABAP FDA - Fast Data Access 技术?
- Jerry的ABAP原创技术文章合集
- 阿里云参与Redis中国用户组背后:不仅仅提供服务,也愿意分享技术
- SAP Kyma上创建的Lambda function背后的技术实现
- AI:2020年6月22日北京智源大会演讲分享之机器感知专题论坛—13:30-14:10山世光教授《从看脸到读心:基于视觉的情感感知技术》
- 技术解码 | WebRTC 发送方码率预估实现解析
- 5G无线关键技术 — 新型传输波形技术和先进编码与调制技术
- 【评论分享有礼】毕业遇上疫情怎么办?4条技术指南轻松应对(内含求职、租房攻略)
- 【华为云技术分享】敏捷实践:一周的Sprint太短,可以调吗
- 多云架构下,JAVA微服务技术选型实例解析
- 【华为云技术分享】云图说丨初识标签管理服务:给你的云资源贴个条
- 【华为云技术分享】云图说 | Dubbo框架应用也可以使用Istio服务网格
- 【华为云技术分享】华为云文档数据库服务DDS监控告警全新优化
- 【华为云技术分享】【测试微课堂】DevOps敏捷测试之道
- 基于CSE的微服务架构实践-轻量级架构技术选型
- m基于matlab的DQPSK调制解调技术的仿真
- Python编程:小组技术分享会之is和==
- J2EE的十三种技术(规范)
- 通过京东淘宝的技术发展和技术演进,探索未来的技术和体系结构
- 目前最新微服务架构技术栈选型
- 挖矿木马简要技术分析
- 现有的框架实际上使用以下三种基本技术的框架执行服务和部件间的绑定:
- AI引领技术变革,自动化云平台所带来的测试工程师进阶危机~