我們3月份分享了Oculus支持跨平臺(tái)開(kāi)發(fā)的消息,并據(jù)此猜測(cè)未來(lái)Oculus的應(yīng)用商店可能會(huì)開(kāi)放給第三方廠商。但現(xiàn)在看來(lái)這個(gè)“非分之想”還不現(xiàn)實(shí),針對(duì)社區(qū)對(duì)跨平臺(tái)開(kāi)發(fā)的疑問(wèn)Oculus近期也多次進(jìn)行了回應(yīng),今天Oculus更是通過(guò)四個(gè)問(wèn)題來(lái)詳實(shí)地強(qiáng)調(diào)他們開(kāi)始支持跨平臺(tái)開(kāi)發(fā)的用意和目的。
延伸閱讀:Oculus開(kāi)始支持跨平臺(tái)開(kāi)發(fā),應(yīng)用商店或?qū)㈤_(kāi)放給第三方廠商,行業(yè)重大福音!
Oculus Integration for Unit從2018年9月的1.31版本開(kāi)始就已經(jīng)提供實(shí)驗(yàn)性的跨平臺(tái)支持,允許開(kāi)發(fā)者精簡(jiǎn)開(kāi)發(fā)流程,并且?guī)椭麄兏p松地把應(yīng)用程序帶到Oculus Store和其他平臺(tái),包括利用OpenVR標(biāo)準(zhǔn)的平臺(tái)。
Oculus表示,現(xiàn)在幾乎所有Unity開(kāi)發(fā)者現(xiàn)在都是利用Oculus Integration來(lái)構(gòu)建Rift應(yīng)用程序。對(duì)于這個(gè)實(shí)驗(yàn)版本,開(kāi)發(fā)者已經(jīng)能夠一次性開(kāi)發(fā)可以面向多個(gè)平臺(tái)的應(yīng)用程序,可能幾乎不需要任何額外的工作。
1. 開(kāi)發(fā)者將如何獲益?
Oculus Integration for Unity是為數(shù)不多允許開(kāi)發(fā)者輕松構(gòu)建跨平臺(tái)應(yīng)用程序的Unity虛擬現(xiàn)實(shí)框架。
Oculus表示:“我們致力于幫助開(kāi)發(fā)者更輕松地為最廣泛的受眾開(kāi)發(fā)內(nèi)容?,F(xiàn)在,無(wú)需單獨(dú)的開(kāi)發(fā)流程,開(kāi)發(fā)者只需一次性開(kāi)發(fā),然后將其單獨(dú)打包并發(fā)行至多個(gè)商店,無(wú)需太多額外的工作。”
2. 為什么要這樣做?
當(dāng)開(kāi)發(fā)者可以覆蓋更多的用戶時(shí),無(wú)論用戶屬于那個(gè)平臺(tái),整個(gè)VR社區(qū)都能受益。對(duì)于這一版本,Oculus表示他們希望可以簡(jiǎn)化開(kāi)發(fā)者的工作流程,幫助開(kāi)發(fā)者節(jié)省時(shí)間與資源,并專注于真正重要的事情:開(kāi)發(fā)優(yōu)秀的內(nèi)容。
Oculus表示他們廣泛聽(tīng)取了開(kāi)發(fā)者社區(qū)的意見(jiàn),并發(fā)現(xiàn)VR開(kāi)發(fā)的最大痛點(diǎn)之一就是,向多個(gè)平臺(tái)上發(fā)布應(yīng)用程序需要大量的重復(fù)工作。因此,他們希望能夠幫助簡(jiǎn)化解決這一問(wèn)題,創(chuàng)建一個(gè)開(kāi)箱即支持Oculus和OpenVR平臺(tái)的功能集,然后允許開(kāi)發(fā)者進(jìn)行擴(kuò)展。
3. 具體的工作流程是如何?
如果你采用Oculus Unity Integration,好消息是:Oculus擴(kuò)展了完全相同的API,并添加了跨平臺(tái)功能。拖動(dòng)OVRCameraRig預(yù)制件,任一平臺(tái)都能即時(shí)追蹤頭顯和運(yùn)動(dòng)控制器。對(duì)于控制器輸入,OVRInput的工作方式與Oculus Touch控制器的工作方式完全相同,并且現(xiàn)在已擴(kuò)展至Vive控制器。Oculus的觸覺(jué)API同樣通過(guò)OVRInput.SetControllerVibration()進(jìn)行了擴(kuò)展,并已支持OpenVR。
需要指出的是,Oculus Store的發(fā)行流程和發(fā)行要求沒(méi)有任何改動(dòng),所以這一功能只是單純用以簡(jiǎn)化開(kāi)發(fā)流程。更多信息請(qǐng)查閱“Unity Cross Platform Development Documentation(Unity跨平臺(tái)開(kāi)發(fā)文檔)” 。
4. API 的靈活性如何?
Oculu表示:“我們知道有經(jīng)驗(yàn)的開(kāi)發(fā)者渴望以各種方式擴(kuò)展API。一系列的開(kāi)發(fā)者喜歡獲取對(duì)API的low-level控制。要強(qiáng)調(diào)的是,即便這個(gè)跨平臺(tái)API提供了一組面向多平臺(tái)的開(kāi)箱即用功能,開(kāi)發(fā)者都可以自行以應(yīng)用程序在任何單一平臺(tái)上的行為方式。”例如,OVRManager中有一個(gè)名為“loadedXRDevice”的屬性,它允許你輕松調(diào)整特定于平臺(tái)的響應(yīng)。如果你想直接調(diào)用OpenVR,OVR.OpenVR命名空間下捆綁了openvr_api.cs。
有開(kāi)發(fā)者選擇所有平臺(tái)都表現(xiàn)一致的功能。如果加載的設(shè)備是OpenVR,其他人可能會(huì)直接調(diào)用OpenVR來(lái)獲取所有功能。最終,開(kāi)發(fā)者能夠準(zhǔn)確選擇自己在頻譜中的位置。你可以選擇抽象的方法來(lái)避免平臺(tái)特定的細(xì)節(jié),完全控制所述細(xì)節(jié),或者介于兩者之間。
這個(gè)API目前僅為實(shí)驗(yàn)性性質(zhì),未來(lái)Oculus將根據(jù)開(kāi)發(fā)者社區(qū)的反饋進(jìn)行迭代。
原文鏈接:https://yivian.com/news/59182.html
來(lái)源:映維網(wǎng)