logo VIVEVR Rendering Performance
Fa'atonu ma Fa'atonuga

Folasaga

O le ausiaina o se poto masani VR sili ona lelei i luga o meafaigaluega faʻatapulaʻaina punaoa o le ki lea i le tuʻuina atu o se poto masani faʻaoga lelei ma faʻalelei. Afai e pa'ū pe le mautu le fua fa'avaa o le fa'afouga o le masini i lalo ifo o le fua fa'afouina o le masini, o le a o'o atu ai i le fa'amasino fa'avaa ma le pe, ma'i fe'avea'i, ma isi. i'u ina leaga le a'afiaga o le tagata fa'aoga. O le mea lea, o le faʻamalieina o le faʻatinoga o mea e taua tele mo le faʻamautinoaina o se aafiaga fiafia.
A'o le'i amataina le fa'alogoina o le fa'atinoga, e taua le malamalama po'o fea e fa'apena ai le fa'aogaina o fa'atinoga e 'alofia ai le fa'alogo le lelei. O lenei pepa ua mamanuina e fesoasoani ai i le au atiaʻe e iloa ai faʻalavelave faʻatinoga ma ofoina atu fofo e foia ai faʻafitauli o le faʻatinoina o galuega.
O le pepa o loʻo faʻatulagaina i vaega nei:

  • Mataupu 2: Fa'ailoa le Fa'agogo - O lenei vaega e fesoasoani i tagata atia'e i le iloa po'o fea o lo'o i ai fagu.
  • Mataupu 3 ma le 4: VIVE Wave ma VIVE OpenXR Seti - O nei vaega o loʻo faʻamatalaina ai tulaga faʻapitoa e ono aʻafia ai le CPU / GPU mo VIVE Wave ma OpenXR apps. E mafai e tagata atia'e ona fa'ata'ita'i i le fa'aagaoioiga pe fa'amalo nei vaega e fa'atatau i fa'atinoga fa'atosina o lo'o feagai ma fa'amautu pe iai se fa'aleleia atili.
  • Mataupu 5: Fa'atonuga masani - O lenei vaega o lo'o fa'asoa ai nisi fa'ata'ita'iga masani ma mea na tutupu.

Fa'ailoa le Bottleneck

A fa'agaoioi le HMD, afai o le VR/MR app o lo'o iai le fa'avaa po'o le pito uliuli, ma isi, e masani lava ona mafua mai i le leaga o le fa'atinoina o fa'atinoga. E masani lava, o le tu'uina atu o fa'afitauli fa'atinoga e mafai ona fa'avasegaina i ituaiga e 2: CPU-fa'asa'o po'o le GPU-saisai. Malamalama po'o fea ituaiga o fusi mo lau app e taua tele i le amataga e aloese ai mai le le lelei o le fa'alogoina.
I lenei mataupu, matou te tuʻuina atu laasaga faigofie e faʻatagaina oe e vave iloa poʻo fea o faʻafitauli o faʻatinoga.

2.1 Siaki Fa'amatalaga Fa'amatalaga FPS
Muamua, matou te amata i le siakiina o le FPS o loʻo i ai le numera o faʻavaa o loʻo tuʻuina atu i le sekone. E tatau ona fa'atumauina i le fua fa'aaliga ma fa'amautu. A le o lea, e ono mafua ai le fa'alavelave fa'avaa.
Afai o lau talosaga SDK o loʻo faʻaogaina le VIVE WAVE SDK 6.0.0 poʻo mulimuli ane, e mafai ona e faʻaogaina le tulafono adb lea e siaki ai le FPS. DK 6.0.0
$adb Logcat -s VRMetric
O le a e va'ai i fa'amaumauga fa'amaumauga nei.
VRMetric:FPS=89.8/89.8,CPU-27/1,GPU=72/3,GpuBd=0,LrCnt=1,2Stag=1,Pstat=2,AQ=1,FOVED=0/0, FSE=1,TWS-2,PT=0(0), RndrBK=0,GLTA=2D,EB=1720×1720
“FPS=89.8/89.8” O le numera muamua o lo'o fa'atusalia ai le FPS o lo'o i totonu, a'o le numera lona lua o lo'o fa'atusalia ai le fua fa'aaliga.
Afai o lau Wave SDK version e i lalo ole 6.0.0, e fautuaina e fa'alelei i le fa'afouga fou e fa'aleleia ai le fa'atinoga o fa'atinoga ma isi fa'alelei.
Afai o lau talosaga SDK na fausia ile VIVE OpenXR. E mafai ona e faʻaogaina le faʻatonuga adb e siaki ai le FPS.
$adb Logcat -s RENDER_ATW
O le a e va'ai i fa'amaumauga fa'amaumauga nei
RENDER_ATW: [FPS] foliga fou:90.00
RENDER_ATW: [FPS] R o iai:90.00 faamisi:0 317, -0.0155 0.805527, 0.006788)
RENDER_ATW: [FPS] L o iai:90.00 faamisi:0 (0.592301, -0.015502, 0.805539, 0.006773)

O le numera o loʻo mulimuli mai i le "mea fou fou" o loʻo faʻatusalia ai le FPS o loʻo i ai nei. O le numera o lo'o mulimuli mai i le "R present" ma le "L present" o lo'o fa'atusalia le fa'aaliga fa'avaa.
O nisi taimi, o le FPS o lo'o i totonu ma le fa'aaliga fa'alava e ono iai sina eseesega.
Mo example, i le mataupu o loʻo i luga, 89.8 FPS e mafai ona manatu o 90 FPS.
Afai o le FPS o lo'o i totonu o le app e maualalo i taimi uma nai lo le fa'aaliga fa'avaa pe tumau pea le le mautu, e fa'ailoa mai ai se fa'afitauli o le fa'atinoina. O le mea lea, o le isi laasaga o le iloa lea pe o le bottleneck e sau mai le PPU poʻo le GPU.
2.2 Siaki le fa'aogaina o le PPU ma le GPU
Afai o lau talosaga SDK o loʻo faʻaogaina le VIVE WAVE SDK 6.0.0 poʻo mulimuli ane, e mafai ona e faʻaogaina le tulafono adb lea e siaki ai le FPS.
$adb logcat -s VRMetric
O le a e va'ai i fa'amaumauga fa'amaumauga nei.
VRMetric:FPS=89.8/89.8,CPU=27/1,GPU=72/3,GpuBd=0,LrCnt=1,2Stag=1,Pstat=2,AQ=1,FOVED=0 /0, FSE=1,TWS=2,PT=0(0),RndrBK=0,GLTA=2D,EB=1720×1720
E pei ona mafai ona e vaʻai i luga o le faʻamaumauga o loʻo i luga, o le faʻaogaina o le PPU o le 27% ma le faʻaogaina o le GPU e 72% Afai o lau Wave SDK version o loʻo i lalo ole 6.0.0, e fautuaina e faʻaleleia i le lomiga lata mai e faʻaleleia ai le faʻatinoina o le faʻatinoga ma isi faʻalelei.
Mo le VIVE OpenXR app, e mafai ona e faʻaogaina le poloaiga lenei e siaki ai le faʻaogaina o le PPU ma le GPU.
# i luga ole linux/ubuntu
$ adb logcat | grep CPU_USAGE
# luga o le powershell
$ adb logcat | Filifili-Uiga -Mamanu CPU_USAGE
O le a e va'ai i le ogalaau lea
PPU Avg. PPU0 PPU1 PPU2 PPU3 PPU4 PPU5 PPU6 PPU7 GPU PPU_USAGE [AGA] 25.67% 32.22% 25.29% 30.77% 29.35% 21.35% 22.09% 18.39% 24.14% 73 %
Afai e te matauina e le mafai e le FPS ona tausia le fua faʻavaa faʻaaliga ma o le faʻaogaina o le GPU e maualuga tele, e masani lava e sili atu i le 85%, e mafai ona e taumafai e fetuunai le Eyebuffer Resolution (vaega 3.1.2, vaega 4.1.2) e vaʻai pe faʻaleleia FPS. Afai o lenei fetuunaiga e tau atu i le lelei
fa'atinoga, e mafai ona tatou fa'ai'u o le mataupu o lo'o noatia ma le GPU ma taula'i a tatou taumafaiga fa'atatau.
I le isi itu, afai o le fetuunaiga o le Eyebuffer Resolution e le maua ai se faʻaleleia atili o le faʻatinoga, o le fagu e foliga mai o loʻo fusifusia le CPU, ma e tatau ona tatou taulaʻi atu i le faʻaogaina o le CPU.
E mafai fo'i ona fa'apipi'i uma le PPU ma le GPU i le taimi e tasi. I ia tulaga, e tatau ona faʻaogaina taumafaiga faʻapitoa i le PPU ma le GPU e ausia ai le paleni faʻaleleia o galuega.
2.3 GPU-saisai
Afai o le VR app o loʻo faʻapipiʻiina GPU, o lona uiga o le GPU o le faʻamaufaʻailoga muamua, ma e le mafai ona faʻafetaui le tuʻuina atu o manaʻoga o le talosaga. Ina ia faʻaitiitia faʻafitauli o le GPU, mafaufau i fautuaga nei:
Muamua, faʻaaoga meafaigaluega faʻasalalau e pei o RenderDoc poʻo Game Engine profiler (Unity Profiler, Unreal Insights) e iloilo ai le mea o loʻo faʻaalu ai e le GPU le tele o lona taimi. Fa'ailoa galuega sili ona taugata ma taula'i ile fa'asilisiliina.
Mo Native Developer, e mafai ona e faʻaogaina RenderDoc e iloa ai poʻo fea le telefoni e mafua ai le tele o le GPU.
Mo le Unity Developer, e mafai ona e mulimulita'i i le Unity lenei pepa pe fa'aaoga RenderDoc e au'ili'ili ai le tu'uina atu o le fa'atinoga o fa'atinoga, ma mulimuli i le Unity graphics optimization pepa mo ta'iala e fa'amalieina lau talosaga.
Mo Unreal Developer, e mafai ona e faʻaogaina le GPU Visualizer pe faʻaaoga RenderDoc e iloilo ai le faʻatinoina o faʻatinoga, ma mulimuli i le Unreal Performance Guidelines mo taʻiala e faʻamalieina lau talosaga.
Lona lua, e mafai foʻi ona e taumafai e fetuutuunaʻi faʻamatalaga Wave poʻo tulaga e faʻaitiitia ai le utaina o le GPU.

  1. Seti le Fa'aaliga Toe Fa'aola Fa'agesegese (vaega 3.1.1, vaega 4.1.1)
  2.  Fetuuna'i Fuafuaga o le Mata (vaega 3.1.2, vaega 4.1.2), 14.1.1)
  3.  Taumafai e fa'agaoioi le Foveation (vaega 3.1.4, vaega 4.1.4).

Afai o lau app o se MR app, e mafai foi ona e fetuutuunai le tulaga Passthrough.

  1. Fetuuna'i le tulaga maualuga o ata o le Passthrough. (vaega 3.2.1)
  2. Fetuuna'i le fa'agesegese o le Passthrough Framerate. (vaega 3.2.2).

Mo nisi fa'atulagaga e uiga i le fa'atinoga o le GPU, e mafai ona e va'ai ile Mataupu 2.6.

2.4 PPU-saisai
Afai o le VR app o loʻo faʻapipiʻiina le PPU, o lona uiga o le PPU o le fagu muamua, mafaufau i fautuaga nei:
Muamua, faʻaaoga meafaigaluega faʻapitoa e pei o Systrace poʻo Game Engine profiler (Unity Profiler, Unreal Insights) e iloilo ma iloa po o fea vaega o lau code o loʻo faʻaaogaina le tele o punaoa CPU. Taulai atu i le fa'amalieina o vaega nei ma toe fa'afo'i fa'atonuga fa'atatau e fa'aitiitia ai le uta CPU.

  • Mo Native Developer, e mafai ona e faʻaogaina Systrace i le profiler lau galuega faatino.
  • Mo Unity Developer, e mafai ona e faʻaogaina le CPU Usage Profiler module e su'e ai mataupu fa'atinoga o le CPU.
  • Mo Unreal Developer, e mafai ona e faʻaogaina Unreal's Insights e suʻe ai le faʻatinoga o le CPU.

Lona lua, e mafai foʻi ona e taumafai e fetuutuunaʻi faʻamatalaga Wave poʻo tulaga e faʻaitiitia ai le utaina o le GPU.

  1. Seti le Fa'aaliga Toe Fa'aola Fa'agesegese (vaega 3.1.1, vaega 4.1.1)
  2.  Fa'aaogā le tele-View Tuuina atu (vaega 3.1.4, vaega 4.1.4)

Afai o lau app o se MR app, e mafai foi ona e fetuutuunai le tulaga Passthrough.

  1. Fetuuna'i le fa'agesegese o le Passthrough Framerate (vaega 3.2.2).

Mo nisi fa'atulagaga e uiga i le fa'atinoga o le CPU, e mafai ona e va'ai ile Mataupu 2.6.

2.5 Aotelega
Mulimuli ane, ua matou fa'atulagaina le su'esu'eina o galuega o lo'o i luga i le Ata 2-5-1. Amata ile siaki ole FPS ole anotusi. Afai e maualalo ifo nai lo le fa'aaliga fa'avaa po'o tumau le mautu, ona au'ili'ili lea o le fa'aogaina o le GPU/CPU e iloa ai po'o le GPU-saisai po'o le CPUbound. I le mea mulimuli, faʻaaoga se profiler e fa'ailoa ai fa'afitauli e ono mafai ona fa'atino pe fetu'utu'una'i foliga po'o fa'atulagaga ole galu e fa'asilisili ai le fa'atinoga o le CPU.

VIVE VR Rendering Performance - Ata 1

2.6 Fa'amatalaga vave O fea Fa'atonu e mafai ona fa'aleleia ai le utaina o le CPU/GPU

Lisi tulaga o le SDK e fesoʻotaʻi ma le faʻapipiʻiina o le CPU/GPU e pei ona i lalo. E mafai ona e fa'avae i luga ole fa'aogaina ole app e siaki ai fa'atonuga talafeagai.

Fa'atatau ile CPU:

  • VIVE Galu SDK Seti
    o VR Content
    ▪ 3.1.1 Fa'aali Fua Fa'afouina
    ▪ 3.1.4 Tele-View Tuuina atu
    ▪ 3.1.6 Tulaga Lelei
    ▪ 3.1.7 Adaptive Motion Compositor
    o MR Mataupu
    ▪ 3.2.2 Fetuuna'i Fua Fa'atatau o le Fa'ava'a
  • VIVE OpenXR SDK Seti
    o VR Content
    ▪ 4.1.1 Fa'aali Fua Fa'afouina
    ▪ 4.1.4 Tele-View Tuuina atu
  • Fa'atonuga masani
    o 5.5 CPU Spike

Fa'atatau ile GPU:

  • VIVE Galu SDK Seti
    o VR Content
    ▪ 3.1.1 Fa'aali Fua Fa'afouina
    ▪ 3.1.2 I'uga o mata
    ▪ 3.1.3 Tele-View Tuuina atu
    ▪ 3.1.4 Foveation
    ▪ 3.1.5 Fa'aleleia le Ma'ai o le Fa'avaa (FSE)
    ▪ 3.1.6 Tulaga Lelei
    ▪ 3.1.7 Adaptive Motion Compositor
    ▪ 3.1.8 Tu'u Ufiufi [E le Lagolagoina le Fa'aletino] o MR Content
    ▪ 3.2.1 Fetuuna'i le Tulaga Autasi
    ▪ 3.2.2 Fetuuna'i Fua Fa'atatau o le Fa'ava'a
  • VIVE OpenXR SDK Seti
    o VR Content
    ▪ 4.1.1 Fa'aali Fua Fa'afouina
    ▪ 4.1.2 I'uga o mata
    ▪ 4.1.3 Tele-View Tuuina atu
    ▪ 4.1.4 Foveation [Not Support Unreal] ▪ 4.1.5 Render Mask [Not Support Unreal]
  • Fa'atonuga masani
    o 5.1 Tape le tulaga maualuga o faatinoga
    o 5.2 Faateleampling
    o 5.3 GMEM Uta / Faleoloa
    o 5.4 Fa'avae Fa'avae (Vaega Tele)

VIVE Fa'atulagaina Galu

O le VIVE Wave o se faʻavae matala ma meafaigaluega e faigofie ai ona e atiaʻe mea VR ma tuʻuina atu le faʻaogaina o masini maualuga mo paʻaga lona tolu. VIVE Wave lagolago Unity ma Unreal masini ta'aloga.
Matou te faʻaauau pea ona faʻaleleia ma foia faʻalavelave eseese, o lea na matou fautuaina ai le tausia o le SDK i le taimi nei.
Ole taimi nei, ole VIVE Wave e na'o le OpenGL ES e lagolagoina. O lo'o lisiina ai vaega fa'atonu e ala i le fa'aosoina o le fa'atinoga o le GPU. O le a matou vaevaeina lenei mea i ni vaega se lua: VR content ma MR content.
3.1 VR i totonu
3.1.1 Fa'aali Fua Fa'afouina

Ole fua ole fa'afou maualuga e maua ai ata va'aia malie, ae o'o mai ile tau ole fa'atuputeleina o uta o le tino. Fa'afeagai, fa'aititia fua faatatau toe fa'afou fa'aitiitia le uta o le system, ae i'u ina fa'aitiitia le lamolemole va'aiga. Afai ole App e iai le CPU/GPU, e mafai ona e taumafai e faʻaitiitia le faʻaaliga faʻafouina e faʻaitiitia ai le faʻafitauli.

  • Mo Native developer, tagai ile WVR_SetFrameRate.
  • Mo Unity developer, tagai ile ta'iala lenei.
  • Mo Unreal developer, taga'i ile ta'iala lenei.

3.1.2 I'uga o mata
Eyebuffer resolution o le lapo'a tele lea o lo'o iai le App e tu'uina atu, o le a tu'uina atu i le taimi fa'agasolo e fai ai le fa'ailoga ma fa'aalia i le HMD fa'aaliga.
E ui o le tele o le mata paʻu mata e mafai ona maua ai le manino ma sili atu faʻamatalaga vaʻaia, ae o loʻo tuʻuina atu ai foi se uta tele i luga o le GPU. O le mea lea, o le sailia o le paleni saʻo i le va o le vaʻaia lelei ma le faʻatinoga e taua tele.
Afai o lo'o iai le GPU fa'aletonu ole App, e mafai ona e taumafai e fa'aitiitia le lapo'a mata e ala i le fa'ateleina o se fua fa'atatau. Ae ui i lea, matou te fautuaina e aua neʻi faʻaititia le fua faʻatatau i lalo ole 0.7, aua e ono iʻu ai i le le taliaina o foliga vaaia.

  • Mo Native developer, tagai ile WVR_ObtainTextureQueue. Pe a fetuunai le tele, e tatau ona e faʻateleina le lautele ma le maualuga i se fua faatatau.
  • Mo le atina'e o le Lotogatasi, fa'asino ile WaveXRSettings.
    I le isi itu, e mafai ona e faia suiga e ala i le code as belwoe.
    XRSettings.eyeTextureResolutionScale = ResolutionScaleValue; // C#
  • Mo Unreal developer, tagai ile SetPixelDensity.

3.1.3 Tele-View Tuuina atu
I le fa'aliliuga fa'aleaganu'u, matou te va'ai eseese mata agavale ma mata taumatau, lea e mana'omia ai ni ata se lua mo le vaaiga lava e tasi. tele-View O le fa'aliliuina e fo'ia ai lenei fa'afitauli e ala i le fa'atinoina na'o le tasi le valaau se'i.
O lenei vaega e fa'aitiitia ai le uta o le PPU e ala i le fa'aitiitia o le numera o telefoni. O loʻo iai foʻi faʻamanuiaga a le GPU, e faʻaititia foi le mamafa o galuega a le vertex shader ona e le manaʻomia le faʻaogaina o se paolo faaopoopo mo le isi mata, ae o le galuega a le fragment shader e tumau pea e le suia talu ai e manaʻomia pea ona iloilo pika taʻitasi mo mata uma. Matou te fautuaina le fa'aagaoioia o lenei vaega.

  • Mo Native developer, e mafai ona e fa'asino ile wvr_native_hellovr sample.
  • Mo le fa'atupuina o le Lotogatasi, va'ai ile Render Mode, tasi le pasi e tele-view uiga.
  • Mo Unreal developer, taga'i ile ta'iala lenei.

3.1.4 Foveation
Foveated rendering ua fuafua muamua e faʻaitiitia le uta GPU. E faʻaitiitia ai faʻamatalaga faʻavaa i le pito i luga ole faʻaaliga ma faʻamautu faʻamatalaga maualuga iugafono i le ogatotonu o le fanua o view. Afai o loʻo i ai le faʻafitauli o le GPU o le App, e mafai ona e taumafai e faʻaogaina le foveation rendering.

VIVE VR Rendering Performance - Ata 2

E i ai se mea e tatau ona maitauina aʻo faʻaaogaina foveation:

➢ E masani ona le iloa e tagata fa'aoga le fa'aitiitiga o fa'amatalaga i itu pito i tua o lo'o fa'aogaina le fa'aogaina o le foveation mode. Ae afai e maualalo tele le tulaga maualuga o le foveation, e mafai ona iloa e le tagata faʻaoga.
➢ O a'afiaga o le foveation atonu e sili atu ona iloa i nisi o mea fa'apipi'i, e mafai ona pu'eina le tagata fa'aoga. E tatau i tagata atiae ona nofouta i lenei mea ma iloilo e tusa ai.
➢ O le fa'aogaina o le fa'aogaina o le fa'aogaina e fa'atupuina ai se tau fa'atinoina o le GPU, lea e mafai ona fesuia'i i le va o le 1% i le 6% e fa'atatau i le lapo'a o le pa'u mata. A fa'aaogaina se paolo faigofie i le vaaiga, o le fa'atinoga e maua mai le fa'asaoina o puna'oa e ono la'ititi nai lo le tau fa'atulagaina o le GPU, e mafua ai ona pa'u le fa'atinoga.

  • Mo Native developer, tagai ile ta'iala lenei.
  • Mo Unity developer, tagai ile ta'iala lenei. Aemaise lava, a e faʻatagaina le post-processing poʻo le HDR, foveation e le mafai ona faʻaaogaina atoatoa. Aua o le Unity o le a tu'uina atu mea i luga o lona lava fa'atupuina fa'aliliuga, nai lo le taimi fa'atupu-fa'atupuina o lo'o tu'uina atu mea e lagolagoina foveation.
  • Mo Unreal developer, taga'i ile ta'iala lenei. E le gata i lea, e le mafai ona faʻaaogaina atoa le foveation i luga ole Multi-View Fa'aliliuga, aua e le mafai e Unreal ona tu'u sa'o ni mea i luga o le taimi fa'atupu-fa'atupu fa'asolo mea e lagolagoina foveation.

3.1.5 Fa'aleleia le Ma'ai o le Fa'avaa (FSE)
O le FSE o lo'o tu'uina atu fa'ai'uga fa'amanino e ala i le fa'aofiina o le fa'amama fa'amama, e mafai ona fa'amanino atili ai mea ma fesoasoani tele mo le fa'aleleia atili o le manino o tusitusiga i le vaaiga. Afai o loʻo i ai le faʻafitauli o le GPU o le App, e mafai ona e mafaufau e faʻagata le FSE pe a le taua.

VIVE VR Rendering Performance - Ata 3

  • Mo Native developer, tagai ile ta'iala lenei.
  • Mo Unity developer, tagai ile ta'iala lenei.
  • Mo Unreal developer, taga'i ile ta'iala lenei.

3.1.6 Tulaga Lelei
Ina ia fa'asaoina le maa ma fa'atumauina le fa'atinoina o le fa'atinoga o le masini, e otometi lava ona fetu'una'i e lenei vaega le maualuga o fa'atinoga o le uati o le CPU/GPU e fa'atatau i lo latou fa'aoga. E le gata i lea, o isi taʻiala e mafai ona faʻatinoina e faʻaleleia ai le faʻatinoga, e pei ole otometi e mafai / faʻamalo Foveation poʻo mea e mafai ona faʻafetaui ia lava pe a maua mea maualuga / maualalo avega.

  • Mo Native developer, tagai ile ta'iala lenei.
  • Mo Unity developer, tagai ile ta'iala lenei. I totonu o la matou Unity plugin, o le mata paʻu mata e mafai ona otometi ona fetuunai e faʻatatau i faʻatinoga o loʻo iai nei; Ole tele ole tusitusiga ole a fa'amama ai fua fa'atatau e la'ititi tele ile lisi o Iuga. Matou te fautuaina le tele o tusitusiga ia le itiiti ifo i le 20 dmm pe sili atu.
  • Mo Unreal developer, taga'i ile ta'iala lenei.

3.1.7 Adaptive Motion Compositor
Ole vaega ole fa'ata'ita'iga lea e aofia ai le UMC ma le PMC. UMC ole a fa'aitiitia le Fua Fa'atatau ile afa ma fa'aopoopo le fa'avaa fou ile taimi moni e fa'atumauina ai le va'aiga lamolemole. Ae ui i lea, e sau ma nisi o le latency, artifacts ma le GPU uta.
E fa'aaoga muamua e le PMC le Depth Buffer e fa'ataga ai le ATW e fa'asoa le fa'aliliuga a le HMD, fa'alautele atu i le 6-dof taui. O lenei vaega e mafai ona fa'aitiitia le fa'aliliuga tuai e 1~2 fa'avaa, ae fa'ateleina le utaina o le GPU.

  • Mo Native developer, tagai ile ta'iala lenei.
  • Mo Unity developer, tagai ile ta'iala lenei.
  • Mo Unreal developer, taga'i ile ta'iala lenei.

3.1.8 Tu'u ufimata [E le Lagolagoina le Le moni]
O pika i pito e toetoe a le iloa pe a uma le faʻalavelave, o le render mask e suia ai le loloto o le pa puipui o nei pixels le vaaia. Afai e te faʻatagaina suʻega loloto, ona o le vave-z, o nei pixels le vaaia o le a le faʻaalia, ma faʻaitiitia ai le uta GPU. E aoga lenei vaega pe afai o loʻo i ai ni mea faʻapipiʻi mamafa i nei vaega e le vaaia; a leai, afai e leai ni mea e fa'aliliuina i nei vaega, fautuaina e fa'agata aua o le a fa'aumatia ai se fa'aoga la'ititi GPU..

  • Mo Native developer, tagai ile ta'iala lenei. E tatau ona e fusifusia le pa'u loloto a'o le'i vala'au RenderMask; a leai, o le a le aoga.
  • Mo Unity developer, tagai ile ta'iala lenei.
  • Mo Unreal developer, e le o lagolagoina nei le Render Mask feature.

3.2 MR Mataupu
3.2.1 Fetuuna'i Tulaga Aulelei Passthrough
E 3 tulaga mo le tulaga lelei o ata passthrough:
➢ WVR_PassthroughImageQuality_DefaultMode – talafeagai mo le MR anotusi e aunoa ma le mana'oga patino.
➢ WVR_PassthroughImageQuality_PerformanceMode – talafeagai mo le MR anotusi e manaʻomia le tele o punaoa GPU mo le faʻaaliga ata.
➢ WVR_PassthroughImageQuality_QualityMode – talafeagai mo le MR anotusi lea e mafai ai e tagata fa'aoga ona va'ai manino i le si'osi'omaga, ae o le vaaiga fa'apitoa o mea e tatau ona sili atu le fa'alogo lelei mo le fa'atinoga.
E mafai ona e fetuutuunai le tulaga lelei o le Passthrough i PerformanceMode e faʻaitiitia ai le faʻaogaina o le GPU.

  • Mo Native, Uunity or Unreal developer, tagai i le taiala lenei.

3.2.2 Fetuuna'i Fua Fa'atatau o le Fa'avaa
E pei o le Fa'aaliga fa'afouina fua, maualuga Passthrough framerate e ofoina atu ata va'aia, ae e sau i le tau o le fa'atuputeleina o uta o le polokalama. Fa'afeagai, fa'aititia fua faatatau toe fa'afou fa'aitiitia le uta o le system, ae i'u ina fa'aitiitia le lamolemole va'aiga. E 2 auala o le passthrough framerate: Boost ma Normal.

  • Mo Native developer, e mafai ona fetuutuunai le passthrough lelei e faaaoga ai le WVR_SetPassthroughImageRate.
  • Mo Unity developer, e mafai ona sui e ala i code, example fa'atulagaga e fa'apea // C#
    Interop.WVR_SetPassthroughImageQuality(WVR_PassthroughImageQuality.PerformanceMode);
  • Mo Unreal developer, fa'atulagaina auala va'ai le node mamanu i le Ata 3-2-2.

VIVE VR Rendering Performance - Ata 4

VIVE OpenXR Seti

OpenXR o se tulaga tatala lea e maua ai se seti masani o APIs mo le atinaʻeina o talosaga XR o loʻo faʻatautaia i luga o le tele o masini VR, atiaʻe e le Khronos Group. O le VIVE Focus 3 ma le VIVE XR Elite e lagolagoina foi le OpenXR, VIVE OpenXR SDK e maua ai le lagolago atoatoa mo masini HTC VR, e mafai ai e le au atinaʻe ona fausia Allin-One ma mea e aofia ai le Unity ma le Unreal engine i masini HTC VR. Matou te faʻaauau pea ona faʻaleleia ma foia faʻalavelave eseese, o lea e fautuaina ai le au atiaʻe e faʻafouina le FOTA version a latou masini e faʻafou ai. Ole taimi nei, ole VIVE OpenXR SDK e lagolagoina OpenGL ES ma Vulkan.

4.1 VR i totonu
4.1.1 Fa'aali Fua Fa'afouina
O le manatu iinei e tutusa ma le 3.1.1 Faʻaaliga Faʻafouina Fuafuaga.

  • Mo Native developer, tagai ile XrEventDataDisplayRefreshRateChangedFB.
  • Mo Unity developer, tagai ile ta'iala lenei.
  • Mo Unreal developer, taga'i ile ta'iala lenei.

4.1.2 I'uga o mata
O le manatu iinei e tutusa ma le 3.1.2 Eyebuffer Resolution. matou te fautuaina e aua le fa'aititia le fua fa'atatau i lalo ole 0.7, aua e ono i'u ai i le le taliaina o le va'aiga lelei.

  • Mo Native developer, tagai ile xrCreateSwapchain. Pe a fetuunai le tele, e tatau ona e faʻateleina le lautele ma le maualuga i se fua faatatau. ,
  • Mo Unity developer, tagai i le example // C#
    XRSettings.eyeTextureResolutionScale = 0.7f; // fautuaina 1.0f~0.7f
  • Mo tulaga le moni, taga'i ile ta'iala lenei.

4.1.3 Tele-View Tuuina atu
O le manatu iinei e tutusa ma le 3.1.3 Multi-View Tuuina atu. O lenei vaega e faʻaitiitia ai le uta i luga o le PPU, o loʻo i ai foi i le GPU ni faʻamanuiaga. Matou te fautuaina le fa'aagaoioia o lenei vaega.

  • Mo Native developer, KhronosGroup e tuʻuina atu se OpenXR Multi-View example, tagai i le taiala lenei.
  • Mo le fa'atupuina o le Lotogatasi, va'ai ile Render Mode, tasi le pasi e tele-view uiga.
  • Mo Unreal developer, pei o VIVE Wave faʻatulagaina, vaʻai i lenei taʻiala.

4.1.4 Foveation [E le Lagolagoina le Moni]
O le manatu iinei e tutusa ma le 3.1.4 Foveation. O le fa'aogaina o le foveated e fa'atatau tonu lava e fa'aitiitia ai le uta o le GPU ae mafai ai ona fa'atupuina se tau fa'atinoina o le GPU ma afai e fa'amaualalo tele le foveation ma fa'aaoga nisi mea po'o mea lanu, e mafai ona avea ma mea sili.
mata'ina i le tagata fa'aoga. O le mea lea, e fautuaina le faʻatagaina pe faʻamalo le ata e faʻavae i luga o ou manaʻoga patino ma iloiloga faʻatinoga I le taimi nei, o le Foveated functionality e naʻo le lagolagoina i OpenGL ES ile VIVE OpenXR SDK.

  • Mo Native developer, o loʻo avanoa lenei vaega, ae o le taimi nei, leai se exampua saunia.
  • Mo Unity developer, tagai ile ta'iala lenei.
  • Mo Unreal developer, e le lagolagoina lenei vaega i le taimi nei.

4.1.5 Tu'u ufimata [E le Lagolagoina le Le moni]
O le manatu iinei e tutusa ma le 3.1.8 Render Mask.

  • Mo Native developer, fa'aoga XrVisibilityMaskKHR e maua ai le Mesh. A'o le'i tu'uina atu le vaaiga, fa'aaoga le Mesh lea e fa'atumu ai le loloto o fa'atauga a'o le'i tu'uina atu le vaaiga.
  • Mo le Unity developer, o le Render Mask feature e mafai e ala i le faaletonu mo OpenGL ES, ma e mafai ona faʻagata i le code lea; Vulkan i le taimi nei e le lagolagoina lenei vaega. //C# UnityEngine.XR.XRSettings.occlusionMaskScale = 0.0f;
  • Mo Unreal developer, e le o lagolagoina nei le Render Mask feature.

4.2 MR Mataupu
OpenXR i le taimi nei e le lagolagoina le faʻatulagaina o le Passthrough Quality ma le Fua Faʻatatau. O le a fa'aauau pea ona fa'alelei ma fa'aleleia le fa'ailoga Passthrough, o lea e fautuaina ai e le au atia'e le fa'afouina o le FOTA version o le masini e fa'afou ai.

Fa'atonuga masani

5.1 Tape le tulaga maualuga o faatinoga
O le tapeina o le "High performance mode" e mafai ona faʻaititia le tele o faʻaaliga o le masini, ma faʻaitiitia ai le faʻaogaina o le GPU. O le fa'aletonu o le fa'aitiitia o le fa'ai'uga o le lau. E mafai ona e faapaleni le lelei ma le faatinoga e filifili ai pe mafai.
Ole nofoaga fa'atulagaina mo VIVE Focus 3 o lo'o fa'aalia Ata 5-1-1:

VIVE VR Rendering Performance - Ata 5

O le nofoaga faʻatulagaina mo VIVE XR Elite o loʻo faʻaalia Ata 5-1-2:

VIVE VR Rendering Performance - Ata 6

5.2 Teleampling Anti-Aliasing
Fa'ateleampO le ling o se faiga e fa'a'aliasing fa'aoga e fa'alelei ai pito matala, e masani lava ona fa'avavevave e ala i meafaigaluega, lea e fa'atupu ai le tau o le GPU. Matou te fautuaina e aua le setiina le MSAA e maualuga atu nai lo le 2x ona o le maualuga maualuga o le tau e faʻaaogaina ai le faʻaogaina o le gpu.

  • Mo Native developer, MSAA OpenGL ES exsample mafai ona faasino i lenei; MSAA Vulkan muamuaampe mafai ona faasino i lenei mea.
    O le Adreno GPU o loʻo tuʻuina atu se faʻaopoopoga e sili ona lelei MSAA.
  • Mo Unity developer, tagai ile guild lea.
  • Mo Unreal developer, vaʻai i lenei guild. O loʻo tuʻuina atu foʻi e le Unreal le faʻaogaina o le anti-aliasing, faʻasino i lenei guild.

5.3 GMEM uta / Faleoloa
I le fausaga o le Adreno GPU, o loʻo i ai se faʻaaliga, pe a fusifusia se Render Target, pe a le manino pe faʻaleaogaina le Render Target, o taimi uma e faʻaalia ai, o tau i le Render Target e utaina i le Graphics Memory, lea e taʻua o le GMEM Load. Afai e le'o mana'omia le tau muamua, manino pe fa'aleaogaina Render Target befaure rendering, e mafai ona aloese mai lenei tulaga e fa'aleleia ai le fa'atinoga o le GPU.
E mafai ona e aloese mai le GMEM Load e faʻaaoga ai metotia nei. I le OpenGL ES, pe a uma ona fusifusia le FBO, e mafai ona e valaʻau i le glClear ma le glClearDepth e faʻamama le lanu, Depth, ma le Stencil buffer, pe valaʻau glInvalidateFramebuffer e faʻaleaogaina le Render Target. I Vulkan, e le manaʻomia ni faʻamatalaga faaopoopo; e mafai ona e seti manino pe fa'amama le mea fa'apipi'i a'o le'i fa'aoga ile VkAttachmentDescription.loadOp.
E faapena foi, o le teuina o le taunuuga o le Tile Render i tua i le Main Memory mai le Graphics Memory e taʻua o le GMEM Store; e taugata foi lenei taotoga mo le GPU. Ina ia aloese mai lenei mea, matou te fautuaina le fusifusia na'o le Render Targets e mana'omia e puipuia ai fa'agaioiga o Faleoloa e le mana'omia.

5.4 Fa'asagaga Fa'avae (Vaega Tele)
O mea e fa'aalia i le fa'aogaina o le tele-Layer e sili atu ona lelei le va'aiga. Ae ui i lea, o lenei vaega e matua faʻateleina ai le faʻatinoga o le GPU ma le numera o laulau ma le tele o le lanu. Matou te fautuaina e le sili atu i le tolu laulau.

  • Mo Native developer,
    o le VIVE Wave SDK e fa'aoga WVR_SubmitFrameLayers e pasi ai fa'amaumauga mo vaega ta'itasi.
    o VIVE OpenXR SDK tu'u fa'amaumauga i le XrFrameEndInfo ma tu'uina atu e ala i le xrEndFrame.
  • Mo Unity developer,
    o VIVE Wave SDK seti, va'ai i le ta'iala lenei,
    o VIVE OpenXR faatulagaga, tagai i le taiala lenei.
  • Mo Unreal developer,
    o VIVE Wave SDK seti, tagai ile ta'iala lenei.
    o VIVE OpenXR faatulagaga, tagai i le taiala lenei.

5.5 CPU Spike
A mamafa le uta o le PPU, o nisi fa'agasolo fa'asologa o filo e maualuga le fa'amuamua, e ono fa'alavelave ai le fa'atinoina o le fa'atinoga. E le mafai ona matou faʻamautinoa e le faʻalavelaveina le Content Application e se isi filo.
Afai e tulaʻi mai ia faʻafitauli, e mafai ona e taumafai e faʻateleina le faʻamuamua o filo e vaʻai pe foia le faʻafitauli. Ae afai e te suia le faʻatulagaina o filo e faʻamalieina mo masini, e tatau ona e siaki pe iai se aʻafiaga leaga.

  • Mo le Unity Developer, va'ai ile fa'atulagaina o filo o le Android. Afai o loʻo e faʻaogaina le VIVE Wave SDK, o loʻo i ai se matou faʻaaliga i WaveXRSettings e mafai ai ona e fetuunai le faʻamuamua, e pei ona faʻaalia i le Ata 5-5-2. O le tau la'ititi e fa'atusalia ai le fa'amuamua maualuga.

VIVE VR Rendering Performance - Ata 7

  • Le moni e leai se auala e suia ai le filo taaloga, tuuina filo ma le filo RHI faamuamua e ala i tulaga i fafo vagana ua e suia le code afi.

Puletaofia © 2024 HTC Corporation. Ua taofia aia tatau umalogo VIVE

Pepa / Punaoa

VIVE VR Rendering Performance [pdf] Taiala mo Tagata Fa'aoga
VR Rendering Performance, Rendering Performance, Performance

Fa'asinomaga

Tuu se faamatalaga

E le fa'asalalauina lau tuatusi imeli. Fa'ailogaina fanua mana'omia *