ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

全息远程渲染实战:用 MixedRealityCompanionKit 构建桌面 Remoting Host,实时把全息画面推到 HoloLens

全息远程渲染实战:用 MixedRealityCompanionKit 构建桌面 Remoting Host,实时把全息画面推到 HoloLens 全息远程渲染实战:用 MixedRealityCompanionKit 构建桌面 Remoting Host,实时把全息画面推到 HoloLens【免费下载链接】MixedRealityCompanionKitThis is a MixedRealityToolkit style repository for code bits and components that may not run directly on Microsoft HoloLens or immersive headsets but instead pair with them to build experiences.项目地址: https://gitcode.com/gh_mirrors/mi/MixedRealityCompanionKitMixedRealityCompanionKit 是一个 MixedRealityToolkit 风格的开源工具仓库专门收纳那些不直接跑在 HoloLens 上、而是与之配对协作的组件。其中的 Holographic Remoting Host 示例正是全息远程渲染的核心把渲染压力放到桌面 PC 或 UWP 设备上再通过 Remoting Host 实时把全息画面流式推送到 HoloLens让轻量级头显也能呈现高负载的混合现实场景。为什么需要全息远程渲染HoloLens 的头显内算力有限复杂场景、高密度模型、物理模拟都容易掉帧。全息远程渲染Holographic Remoting的思路很简单重活在主机上做头显只负责显示。一次完整的远程渲染链路包含 4 个关键环节建立连接—— Remoting Host 与 HoloLens 上的 Remoting Player 建立会话接收输入—— 获取来自 HoloLens 的数据流空间定位、手势、语音输入虚拟全息渲染—— 在桌面侧用虚拟的HolographicSpace渲染全息视图实时回传—— 把渲染好的帧通过OnSendFrame事件实时流回 HoloLens 显示这套机制让 HoloLens 可以直接复用桌面软件里已有的 3D 场景无需为头显重写引擎代码。示例工程结构一览示例位于 RemotingHostSample/ 目录一份解决方案提供三种宿主形态核心渲染逻辑全部共享工程说明连接方式RemotingHostSampleDesktop桌面 Win32 窗口版命令行参数传入 IP空格键连接RemotingHostSampleUWP纯 DirectX 的 UWP 版修改源码中的 IP 后重新构建RemotingHostSampleUWPXAML带 XAML 界面的 UWP 版输入 IP 点Connect按钮最易上手三个工程共用 RemotingHostSampleShared/ 中的核心代码AppView.cpp 负责更新 → 渲染 → 呈现主循环Content/ 下的SpinningCubeRenderer等则渲染演示用的旋转立方体与空间网格。3 步跑通从克隆到连接 HoloLens第 1 步获取代码并编译git clone https://gitcode.com/gh_mirrors/mi/MixedRealityCompanionKit用 Visual Studio 打开 RemotingHostSample.sln按CtrlShiftB生成整个解决方案即可官方步骤见 RemotingHostSample/README.md。第 2 步在 HoloLens 上安装 Remoting Player打开 HoloLens 的 Store 应用搜索Remoting Player并安装。启动后它会以全息投影的形式在视野中显示 HoloLens 的IP 地址——记住它这是下一步的连接凭据。第 3 步配置 IP 并启动宿主XAML 版启动后在对话框输入 IP点击ConnectUWP 版修改 RemotingHostSampleUWP.cpp 第 223 行的m_ipAddress重新构建桌面版在工程的 Debug 属性页把 IP 填入Command Arguments对应 RemotingHostSampleDesktop.cpp 中读取的第二个命令行参数。然后把想运行的工程Set as StartUp Project按F5启动。桌面版还支持窗口内按键操作空格连接、d断开、p切换本地预览窗口标题栏会实时显示连接状态。连接细节8001 端口与 720p 流想理解示例为什么这么写只需看两处关键代码端口m_streamerHelpers-Connect(m_ipAddress, 8001)中的 8001 是 Remoting Player 的默认服务端口见 RemotingHostSampleDesktop.cpp。分辨率HoloLens 的远程显示分辨率是 720p而HolographicStreamer默认 1080p所以示例显式调用SetVideoFrameSize(1280, 720)RemotingHostSampleUWP.cpp否则会因分辨率不匹配而连接失败。桌面版还内置了断线自动重连当断开原因属于Unreachable或ConnectionLost这类瞬时错误时会自动重新发起连接RemotingHostSampleDesktop.cpp这对演示场景非常实用。组合拳CompanionKit 里的其他配套模块单靠 Remoting Host 还不够仓库里其他模块能组成完整的开发流水线HoloLens Commander原 HoloLensCommander可视化管理 HoloLens 设备、安装应用、设置 IPD 与凭据的桌面控制台远程渲染调试前先用它把设备摸熟。SpectatorView / LegacySpectatorView为旁观者提供与佩戴者同视角的第三人称视图远程演示时观众也能看到头显里看到的世界。MixedRemoteViewCompositor把远程渲染画面合成为视频流输出DeckLink、Elgato 等适合直播与录屏。Asset Bundler把资产打包为 Bundle 并上传到 HoloLens配合远程渲染省去逐文件拷贝。RealtimeStreaming基于 Unity 的实时流式渲染方案把 Unity 场景直接推到头显。上手小结步骤操作关键点1克隆并编译RemotingHostSample.slnVS 2015一键构建2HoloLens 安装 Remoting Player记下全息显示的 IP3按工程类型配置 IP 后 F5端口 8001、720p 分辨率4搭配 Commander / SpectatorView完整团队协作流程全息远程渲染的精髓在于主机渲染、头显显示的分工——用 MixedRealityCompanionKit 的 Remoting Host 示例你可以花不到一小时就把桌面 3D 场景实时推上 HoloLens之后再替换AppMain里的演示内容为自己的业务场景即可。✨【免费下载链接】MixedRealityCompanionKitThis is a MixedRealityToolkit style repository for code bits and components that may not run directly on Microsoft HoloLens or immersive headsets but instead pair with them to build experiences.项目地址: https://gitcode.com/gh_mirrors/mi/MixedRealityCompanionKit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表