Pico 4 Enterprise(企業版)與Unity的交互-有線串流調試篇

? 入手了Pico 4 E做VR開發,誰知入了天坑...根據官方文檔,嘗試了串流助手、企業串流、PICO Developer Center,陷入了各種版本問題、環境問題的陷阱。而且Pico4E的OS自24年12開始就不再更新,頭盔中預裝的企業串流版本也較低,網上與Pico4E相符的解決方案少之又少……總之折騰了好幾天,終于完成了萬里長征的第一步——解決了有線串流連接的問題,即使用有線串流實時預覽Unity生產的VR場景。(為什么使用有線串流呢?條件限制,路由器太老,無法使用無線。)

? 下面開始詳細記錄串流連接的過程:

目錄

1. 基本情況

2. 電腦端安裝軟件

3. 使用“企業串流”和“SteamVR”串流連接頭盔和電腦

4. Unity安裝插件

5. Unity中的環境設置

6. 建立測試場景

7. 運行測試場景

8. 其他問題


1. 基本情況

? (1)大致的思路是:Unity->SteamVR->企業串流->USB3.0連接頭盔

? (2)電腦端的情況:

? ? ? ? ? ? 操作系統:Windows10或Windows11

? ? ? ? ? ? 顯卡:NVidia 3060

? ? ? ? ? ? Unity:2023.2.20f1c1

? (3)頭盔端的情況:

? ? ? ? ? ? ?硬件:Pico 4 Enterprise(企業版)

? ? ? ? ? ? ?操作系統版本:V5.9.9 (無法更新)

? ? ? ? ? ? ?企業串流版本:V1.2.9?(無法更新)

? (4)連接線情況:使用TypeC轉USB3.0線,插在電腦USB3.0口(藍色)

2. 電腦端安裝軟件

? (1)安裝“企業串流”:

? ? 有些教程介紹的“Pico互聯”、“Pico游戲串流助手”,以及最新的“PICO Developer Center”等軟件,都與頭盔中的串流軟件版本有沖突,試過下載各種歷史版本都不行,最后還是老實安裝“企業串流”。下載地址為:企業串流下載

? 找到適合的版本下載并默認安裝。

? (2)安裝Steam VR:

??

? ? ?先要安裝Steam,下載地址為:Steam軟件下載,點擊“安裝STEAM”默認安裝。安裝完成后注冊賬號并登錄。

? ? ?之后選擇“庫”->搜索“steamvr"->安裝 軟件會自動安裝

3. 使用“企業串流”和“SteamVR”串流連接頭盔和電腦

? (1)打開“企業串流”軟件,選擇USB連接方式

? (2)根據“企業串流”軟件提示,將頭盔使用Type-C轉USB3.0連接到電腦,并點擊“下一步”

? (3)VR頭盔端也需要打開“企業串流”

? (4)“企業串流”軟件會自動啟動SteamVR,連接成功后,會顯示如下畫面

? SteamVR會顯示連接成功的綠色圖標

? 頭盔中會顯示SteamVR的界面

4. Unity安裝插件

? ?(1)在Hub中安裝Unity編輯器之時,需要添加Android模塊

? (2)新建工程:普通工程即可

? (3) 下載安裝插件:Window->Package Manager->搜索“XR”,搜索出來的XR Interaction ToolkitOpenXR Plugin都要安裝;

? 在安裝XR Interaction Toolkit時會出現一個警告窗口,直接選擇“Yes”;

? XR Interaction Toolkit安裝完成后,再下載一個示例場景,以便于頭盔和手柄的設置;

5. Unity中的環境設置

? (1)打開Unity菜單欄中的Edit->Project Settings,設置XR Plug-in Management,勾選“OpenXR”;

? 安卓部分也需要勾選一下。注* (親測)這里的OpenXR如果不勾選,手柄激光線無法使用。

? (2)設置下面的OpenXR項,點擊“+”號,這里沒有Pico相關的項目,以“Oculus Touch Controller Profile”代替;最上方的渲染模式設置為“Multi-pass”;

? (3) 暫時先設置這些,因為我目前只需要實現串流調試。如果需要將場景文件傳輸到頭盔中,脫離電腦運行VR場景,那還需要對Android平臺的設置。

6. 建立測試場景

? (1)建立一個平面Plane,用于承載第一人稱控制器(有重力);

? (2)在Hierarchy中空白處點右鍵->XR->XR Origin(VR),建立了“XR Interaction Manager”和“XR Origin (XR Rig)”兩項;

? (3)在XR Origin (XR Rig)上點右鍵->XR->Locomotion System,在XR Origin (XR Rig)下面建立一個Locomotion System

? (4)配置手柄:在Hierarchy中選擇“Left Controller”,按下面的這個設置按鍵,在彈出窗口中選擇“XRI Default Left Controller”設置文件,右手柄“Right Controller”也使用類似的設置方式,不同的是右手柄的設置文件選擇“XRI Default Right Controller”;

? 需要注意的是設置完成后,“Left Controller”中所有的設置項目都有“Left”,“Right Controller”中所有的設置項目都有“Right”

? (5)配置Locomotion System:對于用于實現旋轉功能的"Snap Turn Provider(Action-based)"腳本,點擊設置按鈕,選擇“XRI Default Snap Turn”

? 再將其中的“System”一項設置為“Locomotion System”,并取消勾選其中的Left Hand Snap Turn Action,因為我們習慣使用右手柄的搖桿實現轉向;

? 點擊下面的“AddComponent”按鈕,添加ConstrainedMoveProvider(Action-based)腳本,這個腳本控制的是持續移動

? 選擇同樣的默認設置文件:

? 與設置轉向腳本一樣,“System”一項設置為“Locomotion System”,并且取消“Right Hand Move Action”,讓右手柄只執行旋轉的功能;

? 最后,Locomotion System中的“Locomotion System”腳本,“XR Origin”一項設置為6.(2)中建立的這個“XR Origin (XR Rig)”,也就是第一人稱控制器本身;

7. 運行測試場景

? 保持3.中的“企業串流”和“SteamVR”的連接,并且將平臺切換至Android,連接上設備。

? 這樣基本就可以了,不需要使用這里的Build或者Build And Run ,直接在Unity編輯器中運行Unity場景,就能從頭盔中看見場景,并且可以使用手柄搖桿控制視角旋轉和平移;如果在“SteamVR”的菜單中選擇“顯示VR視圖”,就能實時在電腦端看到VR頭盔中的畫面。

? 以上基本完成了有線串流調試Pico4E的方法,但有時運行過程還會產生一些問題。

8. 其他問題

? 雖然之前測試成功了,但是有時不經意改變環境后,會有連接不上、運行錯誤、手柄失去作用等等問題,以下有幾個我自己遇到的常見問題:

? (1)一些基本錯誤,可以自動修復:在Project Settings->XR Plug-in Management->Project Vlidation中,可以看到系統的一些報錯,直接點擊“Fix All”按鈕。有些問題可以自動修復,有些問題會有修復的提示;

? (2)密碼問題:在Project Settings->Player->安卓平臺->Publishing Settings中,需要設置發布的密碼,這個我也不太清楚,跟著官方文檔設置即可:簽名關聯的 APK 數量超出限制如何處理?

? (3)Pico平臺的設置:菜單欄中的PICO菜單,這個只要是安裝了PICO Integration SDK都會出現在這里,需要設置一下設備號,這個設備號可以照抄File->Build Setting->Android->Run Device中的設備號(括號內的號碼)

??

? 以上所有的設置基本覆蓋了,我在運行過程中的問題,不過難保之后會有新的問題產生。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/921843.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/921843.shtml
英文地址,請注明出處:http://en.pswp.cn/news/921843.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

redis里多線程的應用具體在哪些場景

Redis 6.0 引入的多線程I/O,?特指用于處理網絡數據的讀取(read)和寫入(write)/解析(parse)的并行化,而絕非將命令的執行(真正的數據操作)變成多線程。這是一…

DI-GAN:基于深度學習的動態形變多模光纖透反射光控制

DI-GAN:基于深度學習的動態形變多模光纖透反射光控制 1 論文核心概念 本文提出了一種名為 DI-GAN(Deep Imaging Generative Adversarial Network) 的持續深度學習框架,用于動態形變多模光纖(MMF) 的光場控制。該框架能夠同時利用透射和反射信息,實現對光纖末端光場的實…

【深度學習新浪潮】具身智能中使用到的世界模型是什么?

在具身智能中,世界模型(World Model) 是智能體對物理環境的內在“認知地圖”,它通過學習環境的動態規律(如物體運動、物理交互、因果關系等),實現對未來狀態的預測、對過去狀態的反推,以及對未觀測狀態的補全。其核心價值在于:讓智能體無需頻繁與真實環境交互,就能在…

Qt_UI界面的設計

一、設置UI窗口大小二、接收框只讀三、下拉選項雙擊添加選項1是添加,2是調整順序四、標簽字體居中字體大小五、發送框六、按鈕七、透明框(可以放標簽或圖片啥的)設置最小寬度八、水平布局九、垂直布局十、彈簧(方便給水平垂直布局…

FTP文件傳輸服務

一、FTP協議、服務器FTP:文件傳輸協議(用于網絡文件雙向傳輸的應用層協議)特點:最廣泛、最底層、較簡單,但是明文傳輸;適用于較大文件的傳輸1.常見客戶端、服務器客戶端:WINSCP or filezilla&am…

Nginx運維之路(Docker多段構建新版本并增加第三方模塊)

喜大普奔,前兩天發現Nginx竟然自帶支持了ACME功能,讓我很想測試一下,但是發現手頭沒有資源讓我測試,忽然我想到可以用docker來構建nginx然后測試ACME功能,在這個過程中發現原來官方Nginx鏡像并沒有集成ACME插件&#x…

DrissionPage 優化天貓店鋪商品爬蟲:現代化網頁抓取技術詳解

概述在網絡數據采集領域,傳統的爬蟲方法通常面臨反爬機制、動態內容加載和效率低下等挑戰。本文將以天貓店鋪商品爬蟲為例,詳細介紹如何從傳統的 Requests 庫遷移到更現代化的 DrissionPage 解決方案,實現更高效、穩定的數據采集。----------…

pytest并發測試,資源問題導致用例失敗解決辦法

遇見的問題: 測試用例使用thrift資源和redis資源,單獨運行case沒有問題,但是使用并發pytest-xdist(-n 10 和 --distloadscope)運行失敗原因: 測試用例間存在共享資源競爭(如 Redis、Thrift 連接…

C 盤又滿了?6 個「零風險清理法」+5 款神器,讓電腦瞬間多出 100GB 空間

你是否遇到過這樣的場景:正在趕工寫報告,突然彈出「C 盤存儲空間不足」的警告;想安裝新軟件,卻因為 C 盤爆紅而反復失敗;甚至電腦越來越卡,開機要等 5 分鐘,打開文件夾都要轉圈…… 作為系統盤…

Android 項目:畫圖白板APP開發(四)——筆鋒(單 Path)

上一章講解了如何通過多個 Path 疊加形成筆鋒效果,還有另外的方式實現筆鋒,并且只需要一條Path就可以了。在講解具體方案之前,我們需要了解一個有意思的工具 PathMeasure ,這是一個非常強大且實用的工具,常用于高級動畫…

從C++開始的編程生活(7)——取地址運算符重載、類型轉換、static成員和友元

前言 本系列文章承接C語言的學習,需要有C語言的基礎才能學會哦~ 第7篇主要講的是有關于C的取地址運算符重載、類型轉換、static成員和友元。 C才起步,都很簡單 目錄 前言 取地址運算符重載 const成員函數 基本語法 特點 取地址運算符重載 類型轉換…

SQL 入門指南:排序與分頁查詢(ORDER BY 多字段排序、LIMIT 分頁實戰)

在 SQL 查詢中,我們常需要 “按報名時間先后看活動名單”“只看第 2 頁的活動報名數據”—— 這些需求靠基礎查詢無法實現,而ORDER BY(排序) 和LIMIT(分頁) 就是解決這類問題的核心工具。今天我們用 “校園…

jodconverter將word轉pdf底層libreoffice的問題

近期項目中使用了word轉pdf的功能&#xff0c;其中借助了遠程服務的jodconverter來處理。 <dependency><groupId>org.jodconverter</groupId><artifactId>jodconverter-remote</artifactId><version>4.4.2</version> </dependen…

【為YOLOv11Seg添加MFC界面】詳細指南

要將現有的YOLOv11Seg代碼集成到MFC界面中,我們需要創建一個MFC應用程序框架,并將現有的檢測邏輯封裝到其中。以下是詳細步驟: 1. 創建MFC應用程序框架 1.1 使用Visual Studio創建MFC項目 打開Visual Studio,選擇"創建新項目" 選擇"MFC應用程序"模板…

機器學習03——線性模型(多元線性回歸、對數線性回歸、二分類、線性判別分析)

上一章&#xff1a;機器學習02——模型評估與選擇 下一章&#xff1a;機器學習04——決策樹 機器學習實戰項目&#xff1a;【從 0 到 1 落地】機器學習實操項目目錄&#xff1a;覆蓋入門到進階&#xff0c;大學生就業 / 競賽必備 文章目錄一、線性模型的基本形式&#xff08;一…

qt QLineSeries詳解

1、概述QLineSeries是Qt Charts模塊中的一個重要類&#xff0c;用于繪制折線圖。它是QXYSeries的實現類&#xff0c;將信息顯示為由直線連接的一系列數據點。該類為QAbstractSeries的子類&#xff0c;因此可以通過該類來訪問QAbstractSeries的所有公共方法和屬性。2、重要方法c…

你再也找不到更詳細的3DGS教程了 —— 一萬九千字長文解析3DGS

參考: https://www.bilibili.com/video/BV1MF4m1V7e3/ https://blog.csdn.net/2401_86810419/article/details/148811121 https://www.bilibili.com/video/BV1cz421872F?t=233.9 https://wuli.wiki/online/SphHar.html https://zhuanlan.zhihu.com/p/467466131 特別指出…

Python,遺傳算法與神經網絡架構搜索:基于DEAP的自動模型設計

引言&#xff1a;當進化論遇見深度學習——自動化的黎明在深度學習的蠻荒時代&#xff0c;我們是“手工匠人”。我們依靠直覺、前輩的經驗&#xff08;ResNet 為什么是152層而不是153層&#xff1f;&#xff09;、大量的試錯以及那么一點點玄學&#xff0c;在架構的黑暗森林中摸…

Vue框架技術詳解——項目驅動概念理解【前端】【Vue】

Vue3框架 是前端渲染框架瀏覽器向服務器第一次發送請求&#xff0c;就會將所有頁面的樣式全部返回到瀏覽器vue中會將所有js文件最后打包成一個js文件&#xff0c;當前訪問其中一個頁面時&#xff0c;其他頁面的樣式也已經返回到瀏覽器中了&#xff0c;下次切換頁面時&#xff…

HTML 網頁靜態托管 API 接口文檔(可集成到智能體Agent)

HTML 網頁靜態托管 API 接口文檔&#xff08;可集成到智能體Agent&#xff09; 接口概述 本接口用于將HTML代碼轉換為可訪問的網頁&#xff0c;支持通過API密鑰進行身份驗證。 API 密鑰申請地址&#xff1a; https://www.cuobiezi.net/user/api_keys/apply API接口信息 接…