新聞中心

EEPW首頁 > 消費電子 > 業(yè)界動態(tài) > Oculus Home背后:軟件開發(fā)與重構(gòu)

Oculus Home背后:軟件開發(fā)與重構(gòu)

作者: 時間:2016-09-08 來源:YIVIAN 收藏

  如果你不知道如何使用,那么戴上虛擬現(xiàn)實頭顯又有什么意義呢?

本文引用地址:http://m.butianyuan.cn/article/201609/296719.htm

  虛擬現(xiàn)實的興起意味著大家足不出戶就能去到熱帶小島,或者是在太空中射殺外星人。但在這之前,他們需要一個接口,可以讓他們輕松與虛擬現(xiàn)實應(yīng)用進(jìn)行交互的接口。

  這個接口必須要易于使用,反應(yīng)及時,跟大家熟悉的屏幕按鍵和菜單類似。這也是為什么一家名為Envelop的初創(chuàng)公司在最近推出一個類似微軟Window系統(tǒng)的虛擬現(xiàn)實用戶界面的原因。

  但就算是像Oculus Rift這樣銷售虛擬現(xiàn)實頭顯的大公司,制作這些新的用戶界面也不是一件容易的事情。在圣何塞舉辦的Facebook年度工程會議上,Oculus的軟件工程師Khoi Nguyen講述在這一過程中所面臨的挑戰(zhàn)。

  原來的主頁面加載很慢,很多漏洞,并充滿著冗長的代碼。

  

Oculus Home背后:軟件開發(fā)與重構(gòu)

 

  原來的Oculus主界面加載速度很慢,比較拙劣。后來他們又從零開始設(shè)計,盡量確保所有東西都能流暢地運行。Nguyen解釋說,用戶界面的設(shè)計并不一定會造成用戶的流逝,反而是軟件部分需要徹底翻修。

  Nguyen雖然有過游戲開發(fā)的經(jīng)驗,但并不太精通制作像Facebook或谷歌那些用于同時容納數(shù)百萬用戶的大型工程架構(gòu)。他承認(rèn),自己并不熟悉大型互聯(lián)網(wǎng)公司經(jīng)常使用的一些先進(jìn)開發(fā)工具和數(shù)據(jù)處理引擎。

  的第一個迭代依賴于幾個軟件服務(wù),而他的團(tuán)隊卻不能對其進(jìn)行更新。他解釋說,更新一些舊的軟件服務(wù)會不可避免地破壞其他服務(wù)。

  這些漏洞并沒有完全摧毀用戶界面,但確實對性能表現(xiàn)造成了影響。

  例如,在頭顯中加載這樣簡單的任務(wù)會花費更長的時間,這是因為軟件之間的沖突和過時的軟件造成的。因此,Nguyen的團(tuán)隊想出了一個技巧來轉(zhuǎn)移人們的注意力,不讓用戶過分關(guān)注這個延遲。

  當(dāng)頭顯啟動的時候,主頁面會正常地出現(xiàn)在用戶的顯示屏中,但它會慢慢淡出并消逝在黑暗之中,然后再次出現(xiàn)在視線之內(nèi)。

  但Nguyen表示這種做法是不對的。因為他們制作的用戶界面很混亂,最終他們只能寫一些冗長的代碼。

  Nguyen說:“代碼很快就變成了意大利面。在最后變得并不好吃。”

  由于過多地復(fù)制和粘貼代碼令到他們很難對用戶界面進(jìn)行更新和優(yōu)化,這是軟件開發(fā)的另一個問題。

  不過,這個用戶界面還是可以運作,仍然可以進(jìn)行下載并運行虛擬現(xiàn)實應(yīng)用。直到Facebook在2014年以20億美元的價格收購Oculus之后,Nguyen和他的團(tuán)隊才得以利用這家大公司的資源來重新設(shè)計Oculus Home。

  他的團(tuán)隊使用了兩個Facebook的開源或者說免費軟件工具React和Flux來打造用戶交互界面。他們也打造了可以高效重復(fù)使用的開發(fā)者組件。這些定制的軟件構(gòu)件可以讓他們?yōu)橹黜撁嫣砑有碌墓δ?,就像瀏覽虛擬現(xiàn)實應(yīng)用時出現(xiàn)在用戶屏幕上的文本框。這減少了可能會讓用戶界面加載緩慢的混亂代碼。

  另外,Nguyen和他的團(tuán)隊設(shè)計了一個更高效的方法來儲藏記錄所有變化的數(shù)據(jù),例如當(dāng)用戶在主頁面滑動瀏覽應(yīng)用時或決定運行某個應(yīng)用時所發(fā)生的變化?;旧希@個虛擬現(xiàn)實用戶界面已經(jīng)規(guī)劃好,他的團(tuán)隊可以更好地理解一個軟件的變化對其他其軟件所造成的影響。

  在之前,他們很難記錄這些變化,這導(dǎo)致像軟件消耗過多計算機(jī)系統(tǒng)資源這樣問題的出現(xiàn),從而造成加載過慢或軟件漏洞。

  重新設(shè)計Oculus Home用了數(shù)個月的時間,并于2016年3月16日正式亮相。重現(xiàn)編寫的軟件可以讓他們更容易檢測并修復(fù)問題。他說自己“有信心可以進(jìn)入任何的文檔中,并知道出現(xiàn)了什么問題。”



關(guān)鍵詞: Oculus Home

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉