国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種用于虛擬現(xiàn)實的異步時間卷曲計算方法與流程

      文檔序號:11921983閱讀:249來源:國知局
      一種用于虛擬現(xiàn)實的異步時間卷曲計算方法與流程

      本發(fā)明涉及一種時間卷曲計算方法,尤其是一種用于虛擬現(xiàn)實的異步時間卷曲計算方法。



      背景技術(shù):

      虛擬現(xiàn)實(virtual reality,VR)技術(shù)是利用電腦模擬產(chǎn)生一個三維空間的虛擬世界,提供給用戶關(guān)于視覺等感官的模擬,讓用戶仿佛身臨其境,由于其逼真的效果,被廣泛應(yīng)用于教育、醫(yī)學(xué)、交通等領(lǐng)域,引起越來越多的關(guān)注。然而,為了解決虛擬現(xiàn)實設(shè)備在使用中存在的暈動問題,在渲染內(nèi)容的顯示方面,對計算機(jī)以及顯示屏等相關(guān)軟硬件也提出了越來越高的要求。鑒于應(yīng)用產(chǎn)生內(nèi)容幀的時間不固定,越來越多不同的技術(shù)被用于保證用戶的相對穩(wěn)定和良好的體驗。

      目前為了降低傳感器傳輸數(shù)據(jù)到顯示屏顯示圖像的延時,減少暈動癥產(chǎn)生的幾率,刷新率達(dá)到90Hz的OLED顯示屏幕在目前市售的虛擬現(xiàn)實頭戴顯示設(shè)備中被廣泛采用,但受限于目前Windows系統(tǒng)的圖形渲染架構(gòu)以及顯卡的硬件結(jié)構(gòu),很多解決方案依賴于內(nèi)容幀的產(chǎn)生也要能夠符合90Hz的屏幕,即需要在11.11ms之內(nèi)完成渲染。另一方面,為了減少屏幕的顆粒感,2K分辨率的屏幕得到了廣泛的使用,在如此高的分辨率下,要在11.11ms之內(nèi)完成一幀內(nèi)容的渲染,對于任何一個復(fù)雜度稍高的場景,都是不易達(dá)到的要求。

      為了應(yīng)對上述問題,常用的技術(shù)有時間卷曲(Time Warping)和再投影(Reprojection)技術(shù)。然而,受限于目前Windows系統(tǒng)的圖形系統(tǒng)架構(gòu),所有的圖形任務(wù)都是由3D引擎完成的,而目前的主流顯卡,均只有一個3D引擎,因此時間卷曲和內(nèi)容幀的渲染是串行執(zhí)行的。此種同步的時間卷曲技術(shù)和再投影技術(shù)雖然可以讓最后顯示的內(nèi)容更貼近傳感器最新的坐標(biāo),但是仍然受制于內(nèi)容幀產(chǎn)生的幀率,當(dāng)內(nèi)容幀的刷新率小于45Hz時,再投影技術(shù)的應(yīng)用受到了很大限制。

      因此本發(fā)明設(shè)計了一種異步時間卷曲(Asynchronous Time Warping,ATW)計算方法,繞過目前Windows操作系統(tǒng)限制,實現(xiàn)從CPU到顯卡的整個工作流水線的全異步操作,保證整個渲染顯示過程的穩(wěn)定流暢,能夠有效的解決顯示延時較長而引起暈動癥等問題,以此給用戶提供良好的虛擬現(xiàn)實沉浸感。



      技術(shù)實現(xiàn)要素:

      本發(fā)明目的是:提供一種用于虛擬現(xiàn)實的異步時間卷曲計算方法,繞過目前Windows操作系統(tǒng)限制,實現(xiàn)從CPU到顯卡的整個工作流水線的全異步操作,保證整個渲染顯示過程的穩(wěn)定流暢。

      本發(fā)明的技術(shù)方案是:本方案根據(jù)LiquidVR底層技術(shù),設(shè)計實現(xiàn)了一種異步時間卷曲的算法。在CPU(中央處理器)端利用CPU的多線程技術(shù),有單獨的CPU線程負(fù)責(zé)定時讀取渲染完成的內(nèi)容,創(chuàng)建一個基于計算引擎的工作上下文,根據(jù)每次垂直同步信號產(chǎn)生的時間,在下一次垂直同步信號產(chǎn)生之前的3ms至5ms,生成并分發(fā)時間卷曲的顯卡工作任務(wù),以保證經(jīng)過時間卷曲渲染的內(nèi)容能夠適時顯示到頭戴顯示設(shè)備中。在GPU(圖像處理器)端通過LiquidVR接口,繞過Windows系統(tǒng)架構(gòu)的限制,將時間卷曲任務(wù)分發(fā)到顯卡的計算引擎上,獨立于3D引擎,可以與內(nèi)容的渲染同時工作,即時間卷曲操作和內(nèi)容幀的渲染可以并行執(zhí)行。

      本發(fā)明技術(shù)關(guān)鍵點在于在CPU和GPU端都采用了異步的工作方式,因此本發(fā)明方案對共享內(nèi)容的讀寫的標(biāo)志量進(jìn)行了嚴(yán)格定義,避免了內(nèi)容渲染和虛擬現(xiàn)實合成兩個線程同時操作關(guān)鍵變量,同時也防止GPU的3D引擎和計算引擎同時操作同一個圖形資源,并且本方案中通過增加一個數(shù)據(jù)安全區(qū)來保護(hù)CPU線程中的互斥變量,用LiquidVR技術(shù)中的GPU屏障來保證顯卡上的資源不會產(chǎn)生資源競爭。

      異步時間卷曲與同步時間卷曲與再投影技術(shù)相比,在實現(xiàn)難度上有所增加。但是,異步時間卷曲能夠提供相對最穩(wěn)定、最流暢的用戶體驗,并且大大降低了對內(nèi)容渲染速度的要求,推動了虛擬現(xiàn)實技術(shù)的應(yīng)用;另一方面,即使內(nèi)容渲染幀率達(dá)不到相應(yīng)要求,異步時間卷曲技術(shù)也能夠在很大程度上改善用戶的虛擬現(xiàn)實體驗。

      與現(xiàn)有技術(shù)相比,本發(fā)明技術(shù)方案具有以下有益效果:本發(fā)明方案的異步時間卷曲技術(shù)繞過目前Windows系統(tǒng)的限制,實現(xiàn)從CPU到GPU整個工作流水線的全異步并行操作,保證整個渲染顯示過程的穩(wěn)定流暢,且通過設(shè)置GPU屏障和標(biāo)志量,準(zhǔn)確控制工作的時序和流程,避免資源競爭,以此給用戶提供良好的虛擬現(xiàn)實沉浸感的體驗。

      附圖說明

      圖1為同步時間卷曲技術(shù)實現(xiàn)流程圖;

      圖2為再投影技術(shù)實現(xiàn)流程圖;

      圖3為本發(fā)明技術(shù)方案異步時間卷曲實現(xiàn)流程圖。

      具體實施方式

      如背景技術(shù)中所述,現(xiàn)有技術(shù)的時間卷曲方法在實際應(yīng)用中仍然存在受制于內(nèi)容幀產(chǎn)生的幀率、受限于GPU架構(gòu)等問題。

      在本發(fā)明方案中,虛擬現(xiàn)實合成端啟動一個獨立的CPU線程,并創(chuàng)建一個基于計算引擎的工作上下文,根據(jù)每次垂直同步信號產(chǎn)生的時間,提前生成并分發(fā)時間卷曲的顯卡工作任務(wù),以保證經(jīng)過時間卷曲計算的渲染內(nèi)容能夠適時顯示到頭戴顯示設(shè)備中。

      為使本發(fā)明的上述目的、特征和優(yōu)點能夠更為明顯易懂,下面結(jié)合附圖對本發(fā)明的具體實施例做詳細(xì)的說明。

      圖1為同步時間卷曲技術(shù)實現(xiàn)流程圖;

      步驟101:根據(jù)已采集到的虛擬現(xiàn)實設(shè)備姿態(tài)信息進(jìn)行內(nèi)容產(chǎn)生,如完成渲染內(nèi)容1(步驟102)和渲染內(nèi)容2(步驟103)步驟;

      所述的渲染內(nèi)容1和渲染內(nèi)容2為根據(jù)不同的虛擬現(xiàn)實設(shè)備姿態(tài)信息所進(jìn)行的內(nèi)容渲染,因此,內(nèi)容渲染過程所需時間不同;

      所述的內(nèi)容渲染耗時可分為三類:1.內(nèi)容渲染耗時與時間卷曲計算耗時之和小于相鄰垂直同步信號的時間差,2.內(nèi)容渲染耗時與時間卷曲計算耗時之和大于相鄰垂直同步信號的時間差但小于相鄰垂直同步信號的時間差的兩倍,3.內(nèi)容渲染耗時與時間卷曲計算耗時之和大于相鄰垂直同步信號的時間差的兩倍;

      可選的,當(dāng)屏幕刷新率定為90Hz時,相鄰垂直同步信號的時間差為11.11ms;

      步驟104:虛擬現(xiàn)實合成操作,即將步驟101所產(chǎn)生的渲染內(nèi)容根據(jù)當(dāng)前即時采集的虛擬現(xiàn)實設(shè)備姿態(tài)信息進(jìn)行時間卷曲計算;

      在同步時間卷曲技術(shù)中,只有當(dāng)所述內(nèi)容產(chǎn)生步驟(步驟101)工作完成,才進(jìn)行相應(yīng)渲染內(nèi)容(渲染內(nèi)容1)的時間卷曲(步驟105)操作;

      在同步時間卷曲技術(shù)中,所述內(nèi)容產(chǎn)生步驟與時間卷曲計算步驟為串行操作;

      步驟107:顯示控制步驟,即在顯示控制設(shè)備收到垂直同步信號(步驟110)后,完成所述虛擬現(xiàn)實內(nèi)容的顯示;

      在同步時間卷曲技術(shù)中,如果顯示控制設(shè)備收到所述垂直同步信號時,CPU和GPU已完成內(nèi)容渲染(步驟102)和時間卷曲計算(步驟105)步驟,則在虛擬現(xiàn)實頭戴顯示設(shè)備上顯示新內(nèi)容(步驟108);

      在同步時間卷曲技術(shù)中,如果顯示控制設(shè)備收到所述垂直同步信號時,CPU和GPU未完成內(nèi)容渲染(步驟103)和時間卷曲計算步驟,則在虛擬現(xiàn)實頭戴顯示設(shè)備上保持顯示之前內(nèi)容,等待下一個垂直同步信號,當(dāng)收到下一個垂直同步信號時,如果CPU和GPU已完成內(nèi)容渲染(步驟103)和時間卷曲計算(步驟106)步驟,則在虛擬現(xiàn)實頭戴顯示設(shè)備上顯示新內(nèi)容(步驟109)。

      圖2為再投影技術(shù)實現(xiàn)流程圖;

      步驟201:根據(jù)已采集到的虛擬現(xiàn)實設(shè)備姿態(tài)信息進(jìn)行內(nèi)容產(chǎn)生,如完成渲染內(nèi)容1(步驟202)和渲染內(nèi)容2(步驟203)步驟;

      所述步驟202和步驟203的內(nèi)容渲染所需時間不同;

      步驟204:虛擬現(xiàn)實合成操作,即將步驟201所產(chǎn)生的渲染內(nèi)容根據(jù)當(dāng)前即時采集的虛擬現(xiàn)實設(shè)備姿態(tài)信息進(jìn)行再投影計算;

      所述再投影計算可分為兩類:一類為預(yù)測再投影(如步驟205和步驟207),另一類為再投影(如步驟206和步驟208);

      所述的虛擬現(xiàn)實合成操作會在GPU不繁忙的情況下,在收到一個垂直同步信號后立即預(yù)先進(jìn)行一次預(yù)測再投影(步驟205),即根據(jù)當(dāng)前的虛擬現(xiàn)實設(shè)備姿態(tài)信息,通過算法預(yù)測下一個垂直同步信號到來時虛擬現(xiàn)實設(shè)備可能的姿態(tài),并預(yù)先對前一幀的渲染內(nèi)容作相應(yīng)變換,若在下一個垂直同步信號產(chǎn)生時,內(nèi)容幀沒有及時渲染完成(如步驟203中渲染內(nèi)容2未在步驟212的垂直同步信號到來時渲染完成),則該預(yù)測幀會被顯示在頭顯中(如步驟212中顯示內(nèi)容1-1)。這樣,當(dāng)內(nèi)容渲染錯過一個垂直同步信號時,依然可以給用戶提供良好的體驗。

      但此再投影技術(shù)方案存在以下問題:第一,所顯示的內(nèi)容(如步驟212中顯示內(nèi)容1-1)是否與顯示時虛擬現(xiàn)實設(shè)備的當(dāng)前姿態(tài)相符合依賴于預(yù)測再投影算法的精確性,相比時間卷曲技術(shù),再投影需要預(yù)測的時間更長,算法相對來說更為復(fù)雜;第二,如果內(nèi)容渲染方面效率更低,耗時更長,連續(xù)錯過兩個垂直同步信號以后,預(yù)測再投影技術(shù)無法預(yù)測相隔垂直同步信號所需顯示的內(nèi)容,就會出現(xiàn)掉幀現(xiàn)象,影響虛擬現(xiàn)實體驗的沉浸感。

      在再投影技術(shù)中,所述預(yù)測再投影步驟(步驟205)工作與相應(yīng)內(nèi)容渲染步驟(步驟202中渲染內(nèi)容1)與所述的相應(yīng)內(nèi)容的再投影(步驟206)操作為并行操作;

      步驟209:顯示控制步驟,即在顯示控制設(shè)備收到垂直同步信號(步驟210、步驟211、步驟212、步驟213)后,完成所述虛擬現(xiàn)實內(nèi)容的顯示;

      在再投影技術(shù)中,如果顯示控制設(shè)備收到所述垂直同步信號時,CPU和GPU已完成內(nèi)容渲染(步驟202)和再投影計算(步驟206)步驟,則在虛擬現(xiàn)實頭戴顯示設(shè)備上顯示新內(nèi)容(步驟211中顯示內(nèi)容1);如果顯示控制設(shè)備收到所述垂直同步信號時,CPU和GPU未完成內(nèi)容渲染(步驟203),則在虛擬現(xiàn)實頭戴顯示設(shè)備上顯示經(jīng)過預(yù)測再投影計算(步驟207)的渲染內(nèi)容(步驟212中顯示內(nèi)容1-1),等待下一個垂直同步信號,當(dāng)收到下一個垂直同步信號時,如果CPU和GPU已完成內(nèi)容渲染(步驟203)和再投影計算(步驟208),則在虛擬現(xiàn)實頭戴顯示設(shè)備上顯示新內(nèi)容(步驟213中顯示內(nèi)容2);如果渲染內(nèi)容2耗時過長,在步驟213中垂直同步信號到來時仍未完成渲染工作,則會出現(xiàn)掉幀現(xiàn)象,影響虛擬現(xiàn)實體驗。

      圖3為本發(fā)明技術(shù)方案異步時間卷曲實現(xiàn)流程圖;

      步驟301:根據(jù)已采集到的虛擬現(xiàn)實設(shè)備姿態(tài)信息進(jìn)行內(nèi)容產(chǎn)生,如完成渲染內(nèi)容1(步驟302)和渲染內(nèi)容2(步驟303)步驟;

      所述的渲染內(nèi)容1和渲染內(nèi)容2為根據(jù)不同的虛擬現(xiàn)實設(shè)備姿態(tài)信息所進(jìn)行的內(nèi)容渲染,因此,內(nèi)容渲染過程所需時間不同;

      可選的,當(dāng)屏幕刷新率定為90Hz時,相鄰垂直同步信號的時間差為11.11ms;

      步驟304:虛擬現(xiàn)實合成操作,即將步驟301所產(chǎn)生的渲染內(nèi)容根據(jù)當(dāng)前即時采集的虛擬現(xiàn)實設(shè)備姿態(tài)信息進(jìn)行時間卷曲計算;

      在本發(fā)明異步時間卷曲技術(shù)中,所述時間卷曲計算(步驟305、步驟306、步驟307)與相應(yīng)內(nèi)容渲染步驟(步驟302中渲染內(nèi)容1、步驟303中渲染內(nèi)容2)為并行操作,即虛擬現(xiàn)實合成端啟動一個獨立的CPU線程,并創(chuàng)建一個基于計算引擎的工作上下文,根據(jù)每次垂直同步信號產(chǎn)生的時間,提前生成并分發(fā)時間卷曲的顯卡工作任務(wù),以保證經(jīng)過時間卷曲計算的渲染內(nèi)容能夠適時顯示到頭戴顯示設(shè)備中。

      步驟308:顯示控制步驟,即在顯示控制設(shè)備收到垂直同步信號(步驟309、步驟310、步驟311、步驟312)后,完成所述虛擬現(xiàn)實內(nèi)容的顯示;

      在異步時間卷曲技術(shù)中,如果顯示控制設(shè)備收到所述垂直同步信號時,CPU和GPU已完成內(nèi)容渲染(步驟302)和時間卷曲計算(步驟305)步驟,則在虛擬現(xiàn)實頭戴顯示設(shè)備上顯示新內(nèi)容(步驟309中顯示內(nèi)容1);如果顯示控制設(shè)備收到所述垂直同步信號(步驟311)時,CPU和GPU未完成內(nèi)容渲染(步驟303),則根據(jù)垂直同步信號到來前的預(yù)設(shè)時刻虛擬現(xiàn)實頭戴顯示設(shè)備的姿態(tài)信息,對前一幀渲染內(nèi)容(步驟302中渲染內(nèi)容1)進(jìn)行時間卷曲計算,并顯示相應(yīng)內(nèi)容(步驟311中顯示內(nèi)容1-1),等待下一個垂直同步信號,當(dāng)收到下一個垂直同步信號(步驟312)時,如果CPU和GPU已完成內(nèi)容渲染(步驟303)和時間卷曲計算(步驟307),則在虛擬現(xiàn)實頭戴顯示設(shè)備上顯示新內(nèi)容(步驟312中顯示內(nèi)容2);

      本發(fā)明異步時間卷曲技術(shù)的優(yōu)點在于步驟304與步驟301為并行操作,即在每個垂直同步信號到來前的預(yù)設(shè)時刻根據(jù)當(dāng)前虛擬現(xiàn)實設(shè)備的姿態(tài)信息進(jìn)行時間卷曲計算,而不受渲染內(nèi)容產(chǎn)生的影響,因此所顯示的內(nèi)容(如步驟311中顯示內(nèi)容1-1)與顯示時虛擬現(xiàn)實設(shè)備的當(dāng)前姿態(tài)更加對應(yīng),大大降低了對內(nèi)容渲染速度的要求,且如果內(nèi)容渲染方面效率更低,耗時更長,連續(xù)錯過多個垂直同步信號時,異步時間卷曲技術(shù)能夠盡可能使所顯示內(nèi)容符合當(dāng)前虛擬顯示設(shè)備姿態(tài),從而降低顯示延時,增強(qiáng)虛擬現(xiàn)實沉浸感,可以在很大程度上改善用戶的體驗。

      具體而言,本發(fā)明方案所公開的虛擬現(xiàn)實設(shè)備包括但不限于虛擬現(xiàn)實頭戴顯示設(shè)備與操作控制設(shè)備;

      所述虛擬現(xiàn)實頭戴顯示設(shè)備包括但不限于虛擬現(xiàn)實頭盔、虛擬現(xiàn)實眼鏡;

      所述虛擬現(xiàn)實操作控制設(shè)備包括但不限于虛擬現(xiàn)實操作手柄及各種操作外設(shè);

      以上所述,僅為本發(fā)明具體實施方式。本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求所界定的保護(hù)范圍為準(zhǔn)。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1