這是歷史版本頁面 — 看 Oculus SDK for Windows 最新版本

想開發VR應用,Oculus SDK for Windows能幫上什麼忙

Oculus SDK for Windows 軟體圖示 Oculus SDK for Windows 1.11.0 資料更新 2017-02-11 閱讀約 7 分鐘

你正在規劃一個VR專案,可能是遊戲、模擬訓練或虛擬展間。你已經有Unity或Unreal的基礎,但當要正式接上Oculus Rift或Quest裝置時,卻發現不知道從哪裡開始——裝置偵測不到、手把按鍵沒反應、音效定位怪怪的。你上網找資料,官方文件又散落在各處,光是搞懂要下載哪個套件就花掉一個晚上。

你也許想過直接從遊戲引擎的內建支援硬幹,但引擎的VR模板通常只涵蓋基本顯示,一旦要處理觸控手把的震動回饋、多人語音、成就系統或商店上架,就發現自己得從零開始刻。這類SDK的切入點,就是幫你把裝置通訊、輸入處理、空間音訊和平台服務這些底層功夫打包好,讓你專心寫應用邏輯,而不是跟硬體驅動奮戰。

Oculus SDK for Windows 操作介面
Oculus SDK for Windows 的操作介面

01Oculus SDK for Windows到底能拿來做什麼?

它是給開發者建立Oculus Rift和Quest裝置VR應用的工具包。涵蓋立體渲染、動態光影、Touch控制器輸入與觸覺回饋、空間音訊,以及平台功能如語音通話、P2P連線、配對、好友名單、房間、排行榜、成就和應用內購買。也提供Unity和Unreal的整合範例,以及給FMOD、Wwise等音訊中介軟體的插件。

02我完全沒寫過VR程式,這套軟體適合新手嗎?

官方宣稱從入門到進階開發者都適用,並提供逐步設定指南、範例場景和教學文件。但要注意介面只有英文,且需要具備基本的程式或遊戲引擎操作概念。如果你是第一次接觸VR開發,建議先從Unity或Unreal的官方VR範例開始,再回來用這套SDK串接Oculus特定功能,學習曲線會比較平緩。

03它支援哪些Oculus裝置?

官方功能說明指出支援Rift和Quest系列,確保跨平台相容性。但具體支援到哪一代型號、舊裝置是否仍被涵蓋,官方說明沒有列出詳細清單。建議下載前先到Oculus開發者入口網站確認目前支援的裝置列表,尤其是如果你用的是較舊的開發者版本頭盔。

04音效部分能做到什麼程度?

Oculus Audio SDK提供高階3D音訊支援,整合Unity和Unreal,也有FMOD、Wwise和數位音樂工作站的插件。內含HRTF和房間建模空間化插件,以及聲音設計、混音場景、距離建模的指南。這表示你不必自己寫HRTF演算法,可以直接套用插件來模擬聲音從特定方向、距離傳來。

05觸控手把的支援是怎麼運作的?

SDK支援Oculus Touch控制器,提供輸入和觸覺回饋,讓使用者能精準操控物件和遊戲元素。開發者可以讀取按鍵、搖桿和板機輸入,並觸發震動回饋。官方也有針對Touch控制器最佳化效能的Unreal指南。實際整合方式會因你選用的遊戲引擎而異,Unity和Unreal都有對應的整合套件。

06多人連線和社交功能是內建的嗎?

Platform SDK提供VoIP和P2P支援、配對、好友名單、房間,以及排行榜、成就和應用內購買。這些是平台層級的服務,表示你不需要自己架伺服器來處理基本的語音和配對需求。但要注意,這些功能綁定Oculus平台,使用者必須有Oculus帳號才能使用,無法跨到Steam或其他VR平台。

07我主要用Unity開發,這套SDK跟Unity的整合順暢嗎?

官方說明提到Unity和Unreal都有開箱即用的Oculus硬體支援,並提供Unity範例場景和教學。你可以直接從官方下載整合套件,不必手動撰寫底層通訊程式碼。不過,具體整合流程會隨Unity版本和SDK版本而異,建議依照官方文件逐步操作,並注意版本相容性。

08這套軟體跟Microsoft Windows SDK、DirectX SDK有什麼不同?

那些是通用Windows和圖形API的開發工具,處理的是作業系統層級的程式開發和繪圖呼叫。Oculus SDK則專門針對Oculus VR裝置,提供頭盔顯示、控制器輸入、空間音訊和Oculus平台服務的整合。如果你的目標是開發Oculus VR應用,Oculus SDK是直接相關的工具;Windows SDK和DirectX SDK是底層基礎,但不會幫你處理VR裝置的特定功能。

09我做的VR應用不想上架Oculus Store,還需要這套SDK嗎?

如果你只是要開發Oculus裝置的VR內容,SDK的裝置支援和輸入處理仍然有用。但如果你完全不需要平台功能(如成就、好友、內購),也不打算上架Oculus Store,可以考慮只用遊戲引擎內建的VR支援,搭配OpenXR標準來接裝置。這樣可以減少依賴Oculus特定API,但觸覺回饋和部分進階功能的整合可能就要自己處理。

10這套軟體有中文介面嗎?

沒有,官方介面語系只有英文。文件、開發者指南、範例註解和錯誤訊息都是英文。如果你的英文閱讀能力有限,使用上會比較吃力,需要花時間查字典或找社群翻譯資料。這點在評估時要納入考量,尤其是團隊中有不熟悉英文的成員時。

11它多久更新一次?會不會放著放著就不維護了?

根據收錄的版本紀錄,最早版本在2016年,最近一次更新在近期,過去12個月更新過1次,過去24個月也是1次。更新頻率不算高,但仍有在維護。考量到Oculus是Meta旗下產品,且VR市場持續發展,短期內停止維護的風險較低。不過,如果你需要非常頻繁的功能更新,這套SDK的節奏可能不是最快的。

12我沒有Oculus的頭盔,可以用這套SDK開發嗎?

官方說明是針對Oculus Rift和Quest裝置設計,開發和測試通常需要實際裝置來驗證顯示、追蹤和控制器功能。沒有實機的話,你可以先寫程式邏輯,但無法完整測試VR體驗。建議至少有一台支援的頭盔再進行開發,否則除錯會非常困難。另外,這套SDK只支援Windows系統,不適用於macOS或Linux開發環境。

下載與官方連結

前往官方網站 下載 Oculus SDK for Windows

ovr_sdk_win_1.11.0_public.zip · 連結指向軟體原廠

版本紀錄

再看 5 筆

看完整版本清單

這一版改了什麼

What's new in this version:

New Features:
- Added ovr_SpecifyTrackingOrigin(), which enables you to specify the tracking origin instead of setting the tracking origin based on the user's current location
- Added IndexTriggerRaw, HandTriggerRaw, and ThumbstickRaw, which provide raw button values without a deadzone or filter

Added the following ASW Performance HUD statistics:
- ASW Status
- ASW Active-Toggle Count
- ASW Presented-Frame Count
- ASW Failed-Frame Count

Added the following ASW SDK statistics:
- AswIsActive
- AswActivatedToggleCount
- AswPresentedFrameCount
- AswFailedFrameCount

Known Issues:
- Some older AMD CPUs are not currently compatible with Asynchronous SpaceWarp (ASW), which might cause your system to repeatedly crash. The workaround is to disable ASW by setting its registry key to 0
- If you encounter intermittent tracking issues, remove the batteries from any Engineering Sample Oculus Remotes that you paired with your headset and contact Developer Relations for replacement remotes
- If you bypass the shim and communicate with the DLL directly, without specifying a version to ovr_Initialize, the DLL has no way of knowing the SDK version with which the application was built. This can result in unpredictable or erratic behavior which might cause the application to crash
- There are some USB chipsets that do not meet the USB 3.0 specification and are incompatible with the Oculus Rift sensor. If you receive a notification in Oculus Home or the Oculus App, plug the sensor into a different USB 3.0 port (blue). If none of the USB 3.0 ports work, plug the sensor into a USB 2.0 port (black)
- Antivirus software, such a McAfee, can cause installation issues. To work around the issue, make sure you have the latest updates and disable real-time scanning
- If you encounter installation issues, delete the Oculus folder and install the software again
- If the Rift displays a message that instructs you to take off the headset, remove it and place it on a flat surface for 10-15 seconds
- The keyboard and mouse do not work in Oculus Home. To select an item, gaze at it and select it using the Oculus Remote or Xbox controller
- Bandwidth-intensive USB devices, such as web cams and high-end audio interfaces, might not work when using the Rift. To work around this issue, install the device on another USB host controller or a separate computer
- For dual-boot systems using DK2 or CB1 HMDs, the OS selection screen might appear on the HMD instead of the monitor. To work around this, try plugging the HMD into a different port or unplug the HMD while booting
- If you are running your application from the Unity Editor and you press the controller's home button to return to Oculus Home, you will be prompted to close the application. If you select OK, Unity might remain in a state where it is running, but will never get focus. To work around this, restart Unity