映维网之境腾科技HoloLens开发Q&A问答总结

(映维网 2020年11月18日)近日 , 映维网邀请HoloLens技术开发专家境腾科技联合举办了一场“HoloLens开发Q --tt-darkmode-color: #666666;">”活动 , 于11月16日周一晚上20点在含有近500名AR/VR开发者的映维网开发者微信交流群内进行 。 本次活动收集了100多个问题 , 最终在问答活动时间内 , 来自境腾科技技术专家谢宾、陈深皆和翟浩凡三人为其中50多个技术开发问题提供了专业解答 。
映维网之境腾科技HoloLens开发Q&A问答总结文章插图
境腾科技三位技术嘉宾:
谢宾:原微软亚太区Windows专家级工程师 , 并曾被加入微软技术领导人培养计划4% , 全栈型CTO, 对混合现实 , 跨平台 , 云+端应用 , 都有深厚的技术能力 。
陈深皆:6年微软公司开发经验 , 工作岗位包括研发 , 项目经理 , 产品经理 , 两届微软技术大会优秀讲师 , 微软FY16GreatPeople, GreatPerformance 。
翟浩凡:高级工程师 , 从HoloLens1开始到2的全程开发经验 , 多次参与微软总部HoloLens开发培训 , 并实现跨平台设备开发 。
以下是本次“HoloLens开发Q --tt-darkmode-color: #666666;">问题1:目前HoloLens相关的安卓、iOS应用似乎仅有Dynamic 365是一个模型查看软件 , 请问HoloLens官方有没有更多的移动端开发项目?类似于手机端HoloLens操控 , 或者用手机作为控制器之类?
我们所了解到的是没有的 。
问题2:如何做到戴上HoloLens之后 , 将处于不规则表面(比如曲面)的待处理的目标用高亮线把目标的轮廓标记出来

  1. HoloLens的表面识别是有精度的 , 不能保证陶瓷这个大小的物体破损能够识别出来 。 MRTK缺省定义三种精度:粗糙、中等、精细 , 分别对应的精度为大平面、墙壁、物体遮挡 。 也可以自己设定每立方体单位三角面数 。 但是设定越精细则对性能的影响越大 。 以我们的经验来看 , 在茶杯级别的表面识别破损估计很难实现 , 而且对应能的冲击也很大 。
  2. 如果识别的破碎范围比较大 , 则可以参考MRTK项目里的Spatial Understanding里的代码(点击查看参考资料)自己根据不规则表面的特性做算法判断来标注破损边缘 。
问题3:用MRTK开发安卓、苹果AR App有没有可行性 , 需要将Unity打包成Library嵌入到Flutter , 有没有已经成功的案例 , 目前是否是成熟产品的可选技术方案
可以使用MRTK + Unity AR Foundation来开发Android / iOS AR App , 这个我们有实现过 。 但是没有将Unity打包成Library嵌入Flutter的经验 。 理论上都是可以按照以下步骤实现:
  1. 把Unity项目打包成 Android / iOS native library(点击查看参考资料) 。
  2. 使用Flutter的Platform Channel特性调用Native Library(点击查看参考资料) 。
问题4:关于HoloLens第三方视角开发 , 如何导出第三人称视角视频
第三方视角可以借用Vuforia来实现这样的功能 , HoloLens和iPad都扫描一个图片 , 所有场景中的模型的位置全都相对于这个扫描图进行固定 , 这样两边设备中的模型都相对于这个扫描图的位置是固定的 。 这样即可实现第三方视角 , 也可以在iPad上用录屏的方式来录制第三方视角的视频 。
问题 5:如何将HoloLens开放接口给第三方软件数据处理软件 , 并将反馈结果在HoloLens中显示
HoloLens和第三方数据源的数据交换通常以HoloLens作为客户端 , 数据源作为服务器 , 使用HTTP Restful API / WebSocket / TCP 等协议来请求数据 , 再展示在HoloLens中 。
问题6:如何优化场景才能更好适配HoloLens
请参考微软官方优化文档(点击查看参考资料) 。
问题7:怎么将微软远程专家系统集成进自己应用中 , 作为一个整体使用
微软Dynamics RA没有办法作为SDK / Library级别嵌入第三方应用 , 但是微软Dynamics RA可以在后台运行 , 所以打开Dynamics RA连接远端 , 然后再打开第三方应用 , 远端即可看到第三方应用的内容 。
问题8:外接蓝牙键盘怎么使用输入法输入中文
HoloLens支持鼠标键盘 , 可以输入中文 , 但是没有中文字符的联想功能 , 所以可能会无法选择到自己想要的文字 。
问题9:如何把自建三维模型导入HoloLens中
按常规HoloLens开发流程 , 在Unity中导入模型 , 打包发布到HoloLens中即可 。 打个广告 , 我们有现成的多人协同系统和工作流程系统 , 可以直接上传模型 , 并在HoloLens里面查看 。
问题10:多台设备如何实现空间坐标同步
有多种实现方式:
  1. 多个HoloLens直接同步空间坐标 , 可以直接发送World Anchor信息进行同步 , 好处是可自动实现同步 , 无需客户操作 。 坏处是需要写比较复杂的同步代码 , 而且每个World Anchor的信息量比较大 , 可达30MB 。