【祥哥带你玩HoloLens开发】了解如何实现远程主机为HoloLens实时渲染
今天有一个兄弟在群里讲到他们的项目模型比较大,单用HoloLens运行设备的性能无法满足需要,问道如何将渲染工作交给服务器来做,讲渲染结果传给HoloLens。正好刚刚看官方github的时候发现一个项目正是解决这个问题的方案。
项目名称: Holographic Remoting Host (全息远程主机)
Github:https://github.com/Microsoft/HoloLensCompanionKit/tree/master/RemotingHostSample
注:项目是C++的,但是因为程序比较简单还是比较容易理解的
下面是对这个项目做的简单的介绍:
通过该项目代码示例展示了如何创建一个桌面或UWP应用程序并远程为HoloLens提供全息内容。
Holographic remoting 允许你的app的全息内容可以在一台PC上,或一个UWP设备(比如XBox One),允许访问更多的系统资源并且使其能够将全息视图整合到已有的桌面PC软件中。此项目代码包括了通过桌面、UWP和UWP XAML类型项目向HoloLens提供远程内容。
此代码示例演示了作为一个全息远程主机以下特性必须具备:
- 与 HoloLens 建立连接
- 接受来自HoloLens的输入数据流
- 在虚拟全息视图渲染内容
- 内容的帧数据流实时返回到HoloLens
更多信息请阅读官方文档Holographic Remoting 文档.
生成示例
- 从GitHub下载zip文件或直接将代码库克隆到你的开发PC上
- 在 RemotingHostSample 文件夹,双击 RemotingHostSample.sln 通过 Microsoft Visual Studio 2015 打开解决方案
- 通过快捷键 Ctrl+Shift+B , 或者通过菜单 生成 > 生成解决方案 生成应用
安装 Remoting Player app
- 在 Microsoft HoloLens 里, 通过应用商店app Store 搜索 "Remoting Player".
- 选择 Remoting Player app.
- 点击 *Install 将 Remoting Player app 下载并安装到你的HoloLens里
连接远程主机示例到 Remoting Player
- 在你的 Microsoft HoloLens 里运行 Remoting Player
- 把HoloLens的IP记录下来,稍后运行项目时指定这个IP通过 HoloLens的 Remoting Player 显示全息图像
设置远程主机示例,这将是大家最感兴趣的部分:
- RemotingHostSampleUWPXAML 是个 UWP XAML 示例项目,包含一个UI可以很方便的连接,然后加载示例,你在对话框中输入HoloLens的Ip地址,并且点击 Connect.
- UWP示例(只有DirectX)必须修改代码来连接。到RemotingHostSample.cpp的223行,替换 "192.168.0.1" 为你的HoloLens 的IP地址,然后重新生成并加载应用来连接。
- RemotingHostSampleDesktop 桌面示例必须在项目属性中的命令参数指定IP地址。为此在解决方案窗口邮件单击项目 属性 并且选择Debug属性页面,在命令参数 字段输入HoloLens的Ip地址,点击“确定”完成。
在 Visual Studio,选择其中一个远程主机示例,右键单击选择 设置为启动项目 。
- 按 F5 开始.
【祥哥带你玩HoloLens开发】了解如何实现远程主机为HoloLens实时渲染的更多相关文章
- 阿里小哥带你玩转JVM:揭秘try-catch-finally在JVM底层都干了些啥?
让我们准备一个函数: 然后,反编译他的字节码: 首先我们介绍异常表:在编译生成的字节码中,每个方法都附带一个异常表. 异常表中的每一个条目代表一个异常处理器,并且由 from 指针.to 指针 ...
- 【宇哥带你玩转MySQL】索引篇(一)索引揭秘,看他是如何让你的查询性能指数提升的
场景复现,一个索引提高600倍查询速度? 首先准备一张books表 create table books( id int not null primary key auto_increment, na ...
- 为什么MySQL要用B+树?聊聊B+树与硬盘的前世今生【宇哥带你玩转MySQL 索引篇(二)】
为什么MySQL要用B+树?聊聊B+树与硬盘的前世今生 在上一节,我们聊到数据库为了让我们的查询加速,通过索引方式对数据进行冗余并排序,这样我们在使用时就可以在排好序的数据里进行快速的二分查找,使得查 ...
- MySQL如何创建一个好索引?创建索引的5条建议【宇哥带你玩转MySQL 索引篇(三)】
MySQL如何创建一个好索引?创建索引的5条建议 过滤效率高的放前面 对于一个多列索引,它的存储顺序是先按第一列进行比较,然后是第二列,第三列...这样.查询时,如果第一列能够排除的越多,那么后面列需 ...
- HoloLens开发手记-开发概述Development overview
开发HoloLens全息应用将使用UWP平台(Universal Windows Platform),所有的HoloLens应用都是Win10通用应用,所有UWP通用应用都可以在HoloLens上运行 ...
- iOS开发——高级UI&带你玩转UITableView
带你玩装UITableView 在实际iOS开发中UITableView是使用最多,也是最重要的一个控件,如果你不会用它,那别说什么大神了,菜鸟都不如. 其实关于UItableView事非常简单的,实 ...
- Java开发不懂Docker,学尽Java也枉然,阿里P8架构师手把手带你玩转Docker实战
转: Java开发不懂Docker,学尽Java也枉然,阿里P8架构师手把手带你玩转Docker实战 Docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一 ...
- HoloLens开发手记 - HoloLens真机上手简评
千呼万唤始出来,终于今天拿到了HoloLens真机. 使用体验 使用自带的应用录制了一段使用视频,如下 设备概览 包装盒 本体 试戴 实际效果 GalaxyExplorer试玩 全息图像贴到现实场景表 ...
- 带你玩转Visual Studio
带你玩转Visual Studio 带你新建一个工程 工程目录下各文件的含义 解决方案与工程 在这之前先了解一个概念:解决方案与工程. 解决方案(Solution):一个大型项目的整体的工作环境: 工 ...
随机推荐
- python+anaconda+pycharm工具包安装
更新额外包 $ conda update conda 更新pip python -m pip install --upgrade pip 更新所有 conda update --all 安装ffmpe ...
- Jetty小计,比之tomcat调试还是不方便
不需要额外的工程支持,不需要硬盘中有tomcat之类的额外文件 Jetty的Debug:右键Debug as... Maven Builder Jetty相关的配置文件如下: <profiles ...
- 什么是Spark(三)数据的加载和保存
Spark内置了一些常见的文件格式的处理,包括text/json,csv,sequence等:Spark对于文件处理保持了开放性,还提供了可以通过InputFormat,OutputFormat来进行 ...
- js动态的属性名如何取该属性的值
var cls={cn1:"nihao",cn2="made",cn3="shuide"};var index=2;//可变获取cn2的值 ...
- 关于INTEL FPGA设计工具DSP Builder
一段时间以来,MathWorks一直主张使用Matlab和Simulink开发工具进行基于模型的设计,因为好的设计技术使您能够在更短的时间内开发更高质量的复杂软件.基于模块的设计采用了数学和可视化的方 ...
- python下很帅气的爬虫包 - Beautiful Soup 示例
先发一下官方文档地址.http://www.crummy.com/software/BeautifulSoup/bs4/doc/ 建议有时间可以看一下python包的文档. Beautiful Sou ...
- (转)Inno Setup入门(十)——操作注册表
本文转载自:http://blog.csdn.net/yushanddddfenghailin/article/details/17250871 有些程序需要随系统启动,或者需要建立某些文件关联等问题 ...
- java http头信息
JAVA 从http请求头中获取Header信息: request.getHeader(),request.getHeaderNames(),request.getHeaders() Java获取Ht ...
- CentOS下j2ee环境搭建
转自:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/01/2994485.html 因为是做j2ee后台开发的,所以在Linux上搭建 ...
- js内置对象中获取时间的用法--通过date对象获取。
Date对象: var today = new Date(); //年份: var year = today.getFullYear(); //月份 var month = today.getMont ...