
VR විදැහුම්කරණ කාර්ය සාධනය
සුසර කිරීම සහ ප්රශස්තිකරණය
හැඳින්වීම
සම්පත්-සීමිත දෘඪාංග මත ප්රශස්ත VR අත්දැකීමක් ලබා ගැනීම සුමට සහ සුවපහසු පරිශීලක අත්දැකීමක් ලබා දීම සඳහා යතුරයි. අන්තර්ගත විදැහුම්කරණයේ රාමු අනුපාතය උපාංගයේ නැවුම් කිරීමේ අනුපාතයට වඩා පහත වැටේ නම් හෝ අස්ථායී නම්, එය රාමු විභේදනය සහ ඇණහිටීම, චලන අසනීප ආදියට හේතු වේ. අවසානයේ පරිශීලක අත්දැකීමට අහිතකර ලෙස බලපායි. එබැවින්, ප්රීතිමත් අත්දැකීමක් සහතික කිරීම සඳහා අන්තර්ගත කාර්ය සාධනය ප්රශස්ත කිරීම ඉතා වැදගත් වේ.
කාර්ය සාධන සුසර කිරීම ආරම්භ කිරීමට පෙර, අකාර්යක්ෂම සුසර කිරීම වළක්වා ගැනීම සඳහා කාර්ය සාධන බාධක ඇති ස්ථානය තේරුම් ගැනීම වැදගත්ය. මෙම ලේඛනය සංවර්ධකයින්ට කාර්ය සාධන බාධක හඳුනා ගැනීමට සහ විදැහුම්කරණ කාර්ය සාධන ගැටළු විසඳීමට විසඳුම් ලබා දීමට උපකාරී වේ.
ලේඛනය පහත කොටස් වලට සංවිධානය කර ඇත:
- 2 වන පරිච්ඡේදය: බාධකය හඳුනා ගන්න - මෙම කොටස සංවර්ධකයින්ට බාධක ඇති ස්ථාන හඳුනා ගැනීමට සහාය වේ.
- 3 සහ 4 පරිච්ඡේද: VIVE Wave සහ VIVE OpenXR සැකසුම් - මෙම කොටස් VIVE Wave සහ OpenXR යෙදුම් සඳහා CPU/GPU ක්රියාකාරිත්වයට බලපෑම් කළ හැකි නිශ්චිත සැකසුම් ගෙනහැර දක්වයි. කිසියම් දියුණුවක් තිබේදැයි තීරණය කිරීම සඳහා සංවර්ධකයින්ට මුහුණ දෙන කාර්ය සාධන බාධක මත පදනම්ව මෙම විශේෂාංග සක්රීය කිරීම හෝ අක්රීය කිරීම සමඟ අත්හදා බැලිය හැකිය.
- 5 වන පරිච්ඡේදය: පොදු ප්රශස්තිකරණය - මෙම කොටසෙහි පොදු ප්රශස්තිකරණ පිළිවෙත් සහ අත්දැකීම් කිහිපයක් බෙදා ගනී.
බාධකය හඳුනා ගන්න
HMD චලනය වන විට, VR/MR යෙදුමේ රාමු කම්පනයක් හෝ කළු දාරයක් ආදිය තිබේ නම්, එය සාමාන්යයෙන් සිදුවන්නේ දුර්වල විදැහුම්කරණ කාර්ය සාධන ගැටළුවක් නිසාය. සාමාන්යයෙන්, විදැහුම්කරණ කාර්ය සාධන ගැටළු වර්ග 2 කට වර්ග කළ හැකිය: CPU-බන්ධිත හෝ GPU-බන්ධිත. අකාර්යක්ෂම සුසර කිරීම වළක්වා ගැනීම සඳහා ඔබේ යෙදුම සඳහා කුමන ආකාරයේ බැඳීමක් ආරම්භයේදී ඉතා වැදගත් දැයි තේරුම් ගන්න.
මෙම පරිච්ඡේදයේදී, කාර්ය සාධන ගැටළු ඇති ස්ථානය ඉක්මනින් හඳුනා ගැනීමට ඔබට ඉඩ සලසන සරල පියවර අපි සපයන්නෙමු.
2.1 අන්තර්ගත විදැහුම්කරණය FPS පරීක්ෂා කරන්න
පළමුව, අපි අන්තර්ගතය FPS පරීක්ෂා කිරීමෙන් ආරම්භ කරමු, එනම් අන්තර්ගතය තත්පරයකට විදැහුම් කරන රාමු ගණනයි. එය දර්ශන රාමු අනුපාතයට පවත්වා ගෙන ස්ථාවරව තබා ගත යුතුය. එසේ නොමැතිනම්, එය රාමු කම්පනයට හේතු විය හැක.
ඔබගේ SDK යෙදුම VIVE WAVE SDK 6.0.0 හෝ ඊට පසු භාවිතා කරන්නේ නම්, ඔබට FPS පරීක්ෂා කිරීමට පහත adb විධානය භාවිතා කළ හැකිය. DK 6.0.0
$adb ලොග්කැට් -s VRMetric
ඔබට පහත ලොග් දත්ත පෙනෙනු ඇත.
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” පළමු අංකය අන්තර්ගත FPS නියෝජනය කරන අතර, දෙවන අංකය දර්ශන රාමු අනුපාතය නියෝජනය කරයි.
ඔබගේ Wave SDK අනුවාදය 6.0.0 ට අඩු නම්, විදැහුම්කරණ කාර්ය සාධනය සහ අනෙකුත් ප්රශස්තිකරණය වැඩි දියුණු කිරීම සඳහා නවතම අනුවාදයට උත්ශ්රේණි කිරීම නිර්දේශ කෙරේ.
ඔබගේ SDK යෙදුම VIVE OpenXR සමඟ ගොඩනගා ඇත්නම්, ඔබට FPS පරීක්ෂා කිරීමට පහත adb විධානය භාවිතා කළ හැකිය.
$adb ලොග්කැට් -s RENDER_ATW
ඔබට පහත ලොග් දත්ත පෙනෙනු ඇත
RENDER_ATW: [FPS] නව වයනය:90.00
RENDER_ATW: [FPS] R ඉදිරිපත් කිරීම:90.00 මඟ හරින්න:0 317, -0.0155 0.805527, 0.006788)
RENDER_ATW: [FPS] L දැනට:90.00 මඟහැරීම:0 (0.592301, -0.015502, 0.805539, 0.006773)
"නව වයනය" ට පසුව ඇති අංකය වත්මන් අන්තර්ගත FPS නිරූපණය කරයි. "R ඉදිරිපත් කිරීම" සහ "L ඉදිරිපත් කිරීම" ට පසුව ඇති අංකය දර්ශන රාමු අනුපාතය නිරූපණය කරයි.
සමහර විට, අන්තර්ගත FPS සහ සංදර්ශක රාමු අනුපාතය අතර සුළු විෂමතාවයක් තිබිය හැකිය.
උදාහරණයක් ලෙසampඑසේ නම්, ඉහත අවස්ථාවෙහිදී, 89.8 FPS 90 FPS ලෙස සැලකිය හැකිය.
යෙදුමේ අන්තර්ගත FPS සංදර්ශක රාමු අනුපාතයට වඩා නිරන්තරයෙන් අඩු නම් හෝ අස්ථායීව පවතී නම්, එය විදැහුම්කරණ කාර්ය සාධන ගැටළුවක් පෙන්නුම් කරයි. එමනිසා, ඊළඟ පියවර වන්නේ බාධකය පැමිණෙන්නේ CPU එකෙන්ද නැතහොත් GPU එකෙන්ද යන්න හඳුනා ගැනීමයි.
2.2 CPU සහ GPU භාවිතය පරීක්ෂා කරන්න
ඔබගේ SDK යෙදුම VIVE WAVE SDK 6.0.0 හෝ ඊට පසු භාවිතා කරන්නේ නම්, ඔබට FPS පරීක්ෂා කිරීමට පහත adb විධානය භාවිතා කළ හැක.
$adb ලොග්කැට් -s VRMetric
ඔබට පහත ලොග් දත්ත පෙනෙනු ඇත.
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
ඉහත ලොග් ප්රතිඵලයෙන් ඔබට දැකිය හැකි පරිදි, CPU භාවිතය 27% ක් වන අතර GPU භාවිතය 72% කි. ඔබේ Wave SDK අනුවාදය 6.0.0 ට අඩු නම්, විදැහුම්කරණ කාර්ය සාධනය සහ අනෙකුත් ප්රශස්තිකරණය වැඩි දියුණු කිරීම සඳහා නවතම අනුවාදයට උත්ශ්රේණි කිරීම නිර්දේශ කෙරේ.
VIVE OpenXR යෙදුම සඳහා, ඔබට CPU සහ GPU භාවිතය පරීක්ෂා කිරීමට පහත විධානය භාවිතා කළ හැකිය.
# ලිනක්ස්/උබුන්ටු මත
$ adb logcat | grep CPU_USAGE
# පවර්ෂෙල් එකේ
$ adb logcat | තෝරන්න-නූල් -රටාව CPU_USAGE
ඔබට පහත ලොගය පෙනෙනු ඇත
CPU සාමාන්ය CPU0 CPU1 CPU2 CPU3 CPU4 CPU5 CPU6 CPU7 GPU CPU_USAGE [පූරණය] 25.67% 32.22% 25.29% 30.77% 29.35% 21.35% 22.09% 18.39% 24.14% 73 %
FPS මඟින් දර්ශන රාමු අනුපාතය පවත්වා ගත නොහැකි බව සහ GPU භාවිතය ඉතා ඉහළ බව ඔබ නිරීක්ෂණය කළහොත්, සාමාන්යයෙන් 85% ඉක්මවයි, ඔබට Eyebuffer Resolution (3.1.2 කොටස, 4.1.2 කොටස) සකස් කර FPS වැඩි දියුණු කරන්නේ දැයි බැලීමට උත්සාහ කළ හැකිය. මෙම ගැලපීම වඩා හොඳ වීමට හේතු වේ නම්
කාර්ය සාධනය, අපට නිගමනය කළ හැක්කේ ගැටළුව GPU-සම්බන්ධිත බවත් ඒ අනුව අපගේ ප්රශස්තිකරණ උත්සාහයන් යොමු කරන බවත්ය.
අනෙක් අතට, Eyebuffer Resolution සකස් කිරීමෙන් සැලකිය යුතු කාර්ය සාධන දියුණුවක් සිදු නොවන්නේ නම්, බාධකය CPU-බැඳිය හැකි බැවින්, අපි CPU කාර්ය සාධනය ප්රශස්ත කිරීම කෙරෙහි අවධානය යොමු කළ යුතුය.
යෙදුම CPU-බන්ධිත සහ GPU-බන්ධිත යන දෙකම එකවර තිබීමට ද ඉඩ ඇත. එවැනි අවස්ථාවන්හිදී, සමතුලිත කාර්ය සාධන වැඩිදියුණු කිරීම් ලබා ගැනීම සඳහා CPU සහ GPU යන දෙකටම ප්රශස්තිකරණ උත්සාහයන් යෙදිය යුතුය.
2.3 GPU-බන්ධිත
VR යෙදුමක් GPU-බන්ධිත වූ විට, එයින් අදහස් වන්නේ GPU යනු ප්රාථමික බාධකය වන අතර, යෙදුමේ විදැහුම්කරණ ඉල්ලීම් සමඟ එයට කටයුතු කළ නොහැකි බවයි. GPU-බන්ධිත ගැටළු අවම කිරීම සඳහා, පහත නිර්දේශ සලකා බලන්න:
පළමුව, RenderDoc හෝ Game Engine pro වැනි පැතිකඩකරණ මෙවලම් භාවිතා කරන්න.fileආර් (යුනිටි ප්රෝfiler, Unreal Insights) GPU එක වැඩි කාලයක් ගත කරන්නේ කොහේද යන්න විශ්ලේෂණය කිරීමට. වඩාත්ම මිල අධික මෙහෙයුම් හඳුනාගෙන ඒවා ප්රශස්ත කිරීම කෙරෙහි අවධානය යොමු කරන්න.
ස්වදේශීය සංවර්ධක සඳහා, අධික GPU පැටවීමක් ඇති කරන්නේ කුමන ඇඳීම් ඇමතුමද යන්න හඳුනා ගැනීමට ඔබට RenderDoc භාවිතා කළ හැකිය.
Unity Developer සඳහා, ඔබට Unity මෙම ලේඛනය අනුගමනය කළ හැකිය, නැතහොත් විදැහුම්කරණ කාර්ය සාධන ගැටළුව විශ්ලේෂණය කිරීමට RenderDoc භාවිතා කළ හැකිය, සහ ඔබේ යෙදුම ප්රශස්ත කිරීම සඳහා මග පෙන්වීම සඳහා Unity graphics optimization documentation අනුගමනය කළ හැකිය.
Unreal Developer සඳහා, ඔබට GPU Visualizer භාවිතා කළ හැකිය, නැතහොත් RenderDoc භාවිතා කර විදැහුම්කරණ කාර්ය සාධන ගැටළුව විශ්ලේෂණය කළ හැකි අතර, ඔබේ යෙදුම ප්රශස්ත කිරීම සඳහා මග පෙන්වීම සඳහා Unreal Performance මාර්ගෝපදේශ අනුගමනය කරන්න.
දෙවනුව, GPU පැටවීම අඩු කිරීම සඳහා ඔබට ඇතැම් Wave විශේෂාංග හෝ සැකසුම් සකස් කිරීමටද උත්සාහ කළ හැකිය.
- සංදර්ශක නැවුම් කිරීමේ අනුපාතය මන්දගාමීව සකසන්න (3.1.1 කොටස, 4.1.1 කොටස)
- අක්ෂි බෆර් විභේදනය සකසන්න (3.1.2 කොටස, 4.1.2 කොටස), 14.1.1)
- Foveation සක්රීය කිරීමට උත්සාහ කරන්න (3.1.4 කොටස, 4.1.4 කොටස).
ඔබගේ යෙදුම MR යෙදුමක් නම්, ඔබට Passthrough සැකසුම් ද සකස් කළ හැකිය.
- Passthrough රූපයේ ගුණාත්මකභාවය පහළට සකසන්න. (3.2.1 කොටස)
- Passthrough රාමු අනුපාතය මන්දගාමීව සකසන්න. (3.2.2 කොටස).
GPU කාර්ය සාධනය පිළිබඳ තවත් සැකසුම් සඳහා, ඔබට 2.6 පරිච්ඡේදය වෙත යොමු විය හැක.
2.4 CPU-බන්ධිත
VR යෙදුමක් CPU-බන්ධිත වූ විට, එයින් අදහස් වන්නේ CPU ප්රාථමික බාධකය බවයි, පහත නිර්දේශ සලකා බලන්න:
පළමුව, Systrace හෝ Game Engine pro වැනි පැතිකඩකරණ මෙවලම් භාවිතා කරන්න.fileආර් (යුනිටි ප්රෝfiler, Unreal Insights) ඔබේ කේතයේ කුමන කොටස් වැඩිපුරම CPU සම්පත් පරිභෝජනය කරන්නේ දැයි විශ්ලේෂණය කර හඳුනා ගැනීමට භාවිතා කරයි. මෙම ප්රදේශ ප්රශස්ත කිරීම සහ CPU භාරය අඩු කිරීම සඳහා පරිගණකමය වශයෙන් දැඩි ඇල්ගොරිතම ප්රතිසංස්කරණය කිරීම කෙරෙහි අවධානය යොමු කරන්න.
- ස්වදේශීය සංවර්ධක සඳහා, ඔබට Pro කිරීමට Systrace භාවිතා කළ හැකියfileඔයාගේ ව්යාපෘතිය.
- යුනිටි සංවර්ධක සඳහා, ඔබට CPU භාවිත ප්රෝ භාවිතා කළ හැකියfileCPU කාර්ය සාධන ගැටළුව සොයා ගැනීමට r මොඩියුලය.
- Unreal සංවර්ධක සඳහා, CPU කාර්ය සාධන ගැටළුව සොයා ගැනීමට ඔබට Unreal හි තීක්ෂ්ණ බුද්ධිය භාවිතා කළ හැකිය.
දෙවනුව, GPU පැටවීම අඩු කිරීම සඳහා ඔබට ඇතැම් Wave විශේෂාංග හෝ සැකසුම් සකස් කිරීමටද උත්සාහ කළ හැකිය.
- සංදර්ශක නැවුම් කිරීමේ අනුපාතය මන්දගාමීව සකසන්න (3.1.1 කොටස, 4.1.1 කොටස)
- බහු-භාවිතා කරන්නView විදැහුම්කරණය (3.1.4 වගන්තිය, 4.1.4 වගන්තිය)
ඔබගේ යෙදුම MR යෙදුමක් නම්, ඔබට Passthrough සැකසුම් ද සකස් කළ හැකිය.
- Passthrough Framerate එක මන්දගාමීව සකසන්න (3.2.2 කොටස).
CPU කාර්ය සාධනය පිළිබඳ තවත් සැකසුම් සඳහා, ඔබට 2.6 පරිච්ඡේදය වෙත යොමු විය හැක.
2.5 සාරාංශය
අවසාන වශයෙන්, අපි ඉහත කාර්ය සාධන පරීක්ෂා කිරීමේ වැඩ ප්රවාහය රූපය 2-5-1 හි සංවිධානය කර ඇත්තෙමු. අන්තර්ගතයේ FPS පරීක්ෂා කිරීමෙන් ආරම්භ කරන්න. එය දර්ශන රාමු අනුපාතයට වඩා අඩු නම් හෝ අස්ථායීව පවතී නම්, එය GPU-බැඳිද නැතහොත් CPUබද්ධද යන්න තීරණය කිරීමට GPU/CPU භාවිතය විශ්ලේෂණය කරන්න. අවසාන වශයෙන්, pro එකක් භාවිතා කරන්නfileවිභව කාර්ය සාධන ගැටළු හඳුනා ගැනීමට හෝ CPU කාර්ය සාධනය ප්රශස්ත කිරීම සඳහා Wave විශේෂාංග හෝ සැකසුම් සකස් කිරීමට r.

2.6 CPU/GPU පැටවීම වැඩිදියුණු කළ හැකි සැකසුම් පිළිබඳ ඉක්මන් යොමුව
CPU/GPU පූරණයට අදාළ SDK සැකසුම් පහත පරිදි ලැයිස්තුගත කරන්න. යෙදුමේ ඇති බාධකය මත පදනම්ව ඔබට අදාළ ප්රශස්තිකරණ සැකසුම් පරීක්ෂා කළ හැකිය.
CPU හා සම්බන්ධ:
- VIVE Wave SDK සැකසුම
o VR අන්තර්ගතය
▪ 3.1.1 දර්ශන නැවුම් කිරීමේ අනුපාතය
▪ 3.1.4 බහු-View විදැහුම්කරණය
▪ 3.1.6 අනුවර්තන ගුණාත්මකභාවය
▪ 3.1.7 අනුවර්තන චලන සංයුක්තකාරකය
එම්ආර් අන්තර්ගතය
▪ 3.2.2 රාමු අනුපාතය හරහා ගමන් කිරීමේ අනුපාතය සකසන්න - VIVE OpenXR SDK සැකසුම
o VR අන්තර්ගතය
▪ 4.1.1 දර්ශන නැවුම් කිරීමේ අනුපාතය
▪ 4.1.4 බහු-View විදැහුම්කරණය - පොදු ප්රශස්තිකරණය
o 5.5 CPU ස්පයික්
GPU හා සම්බන්ධ:
- VIVE Wave SDK සැකසුම
o VR අන්තර්ගතය
▪ 3.1.1 දර්ශන නැවුම් කිරීමේ අනුපාතය
▪ 3.1.2 අක්ෂි බෆර් විභේදනය
▪ 3.1.3 බහු-View විදැහුම්කරණය
▪ 3.1.4 ෆොවියේෂන්
▪ 3.1.5 රාමු තියුණු බව වැඩි දියුණු කිරීම (FSE)
▪ 3.1.6 අනුවර්තන ගුණාත්මකභාවය
▪ 3.1.7 අනුවර්තන චලන සංයුක්තකාරකය
▪ 3.1.8 Render Mask [Not Support Unreal]
එම්ආර් අන්තර්ගතය
▪ 3.2.1 විනිවිද යාමේ ගුණාත්මකභාවය සකස් කරන්න
▪ 3.2.2 රාමු අනුපාතය හරහා ගමන් කිරීමේ අනුපාතය සකසන්න - VIVE OpenXR SDK සැකසුම
o VR අන්තර්ගතය
▪ 4.1.1 දර්ශන නැවුම් කිරීමේ අනුපාතය
▪ 4.1.2 අක්ෂි බෆර් විභේදනය
▪ 4.1.3 බහු-View විදැහුම්කරණය
▪ 4.1.4 Foveation [Not Support Unreal]
▪ 4.1.5 Render Mask [Not Support Unreal] - පොදු ප්රශස්තිකරණය
o 5.1 ඉහළ කාර්ය සාධන මාදිලිය අක්රිය කරන්න
o 5.2 බහුampලින්ග්
o 5.3 GMEM පැටවීම/ගබඩාව
o 5.4 සංයුති ස්ථරය (බහු ස්ථර)
VIVE තරංග සැකසුම
VIVE Wave යනු විවෘත වේදිකාවක් සහ මෙවලම් කට්ටලයක් වන අතර එය ඔබට පහසුවෙන් VR අන්තර්ගතයන් සංවර්ධනය කිරීමට ඉඩ සලසන අතර තෙවන පාර්ශවීය හවුල්කරුවන් සඳහා ඉහළ කාර්යසාධනයක් සහිත උපාංග ප්රශස්තිකරණය සපයයි. VIVE Wave Unity සහ Unreal ක්රීඩා එන්ජින් සඳහා සහය දක්වයි.
අපි අඛණ්ඩව විවිධ දෝෂ ප්රශස්තිකරණය කර විසඳන්නෙමු, එබැවින් අපි SDK යාවත්කාලීනව තබා ගැනීමට නිර්දේශ කළෙමු.
දැනට, VIVE Wave OpenGL ES සඳහා පමණක් සහය දක්වයි. GPU ක්රියාකාරිත්වයට බලපෑම අනුව අනුපිළිවෙලට සකස් කරන ලද විශේෂාංග මෙහි ලැයිස්තුගත කර ඇත. අපි මෙය කොටස් දෙකකට බෙදන්නෙමු: VR අන්තර්ගතය සහ MR අන්තර්ගතය.
3.1 VR අන්තර්ගතය
3.1.1 සංදර්ශක නැවුම් කිරීමේ අනුපාතය
Higher refresh rates offer smoother visuals, but come at the cost of increased system load. Conversely, lower refresh rates reduce system load, but result in less smooth visuals. If App has CPU/GPU bound issue, you can try decreasing the display refresh rate to alleviate the issue.
- ස්වදේශීය සංවර්ධකයා සඳහා, WVR_SetFrameRate වෙත යොමු වන්න.
- Unity සංවර්ධකයා සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
- Unreal සංවර්ධක සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
3.1.2 අක්ෂි බෆර් විභේදනය
Eyebuffer resolution යනු අන්තර්ගත යෙදුම render කිරීමට නියමිත වයනය ප්රමාණයයි, rendered වයනය පළ කිරීමේ ක්රියාවලිය සිදු කිරීමට ධාවන කාලයට යටත් කර HMD සංදර්ශකයේ ඉදිරිපත් කෙරේ.
විශාල අක්ෂි බෆරයක් තිබීමෙන් පැහැදිලි සහ සවිස්තරාත්මක දෘශ්ය ලබා ගත හැකි වුවද, එය GPU මත සැලකිය යුතු බරක් ද පටවයි. එබැවින්, දෘශ්ය ගුණාත්මකභාවය සහ කාර්ය සාධනය අතර නිවැරදි සමතුලිතතාවය සොයා ගැනීම අත්යවශ්ය වේ.
If App has GPU bound issue, you can try decreasing the eyebuffer size by multiply a scale factor. Howerver, we recommend not reducing the scale factor below 0.7, as this may result in unacceptable visual quality.
- ස්වදේශීය සංවර්ධක සඳහා, WVR_ObtainTextureQueue වෙත යොමු වන්න. ප්රමාණය සකස් කිරීමේදී, ඔබ පළල සහ උස අනුපාතයකින් ගුණ කළ යුතුය.
- Unity සංවර්ධකයා සඳහා, WaveXRSettings වෙත යොමු වන්න.
විකල්පයක් ලෙස, ඔබට belwoe ලෙස කේතය හරහා වෙනස්කම් සිදු කළ හැකිය.
XRSettings.eyeTextureResolutionScale = ResolutionScaleValue; // C# - Unreal සංවර්ධක සඳහා, SetPixelDensity බලන්න.
3.1.3 බහු-View විදැහුම්කරණය
සාම්ප්රදායික විදැහුම්කරණයේදී, අපි වම් සහ දකුණු ඇස් වෙන වෙනම අඳිමු, ඒ සඳහා එකම දර්ශනය සඳහා අඳින ඇමතුම් දෙකක් අවශ්ය වේ. බහු-View රෙන්ඩරින් කිරීම මඟින් මෙම ගැටළුව විසඳනු ලබන්නේ එක් ඇඳීම් ඇමතුමක් පමණක් සිදු කිරීමෙනි.
This feature reduces CPU load by decreasing the number of draw calls. The GPU also has some benefits, vertex shader’s workload is also reduced as it doesn’t need to run an additional shader for the other eye, but the fragment shader’s workload remains unchanged since it still needs to evaluate each pixel for both eyes. We recommand enabling this feature.
- ස්වදේශීය සංවර්ධකයා සඳහා, ඔබට wvr_native_hellovr වෙත යොමු විය හැක.ample.
- Unity සංවර්ධක සඳහා, Render Mode වෙත යොමු වන්න, තනි අවසරය බහු-view ලක්ෂණය.
- Unreal සංවර්ධක සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
3.1.4 ෆොවියේෂන්
Foveated rendering ප්රධාන වශයෙන් නිර්මාණය කර ඇත්තේ GPU භාරය අඩු කිරීම සඳහා ය. එය සංදර්ශකයේ පර්යන්තයේ රාමු විස්තර අඩු කරන අතර ක්ෂේත්රයේ මධ්යයේ ඉහළ විභේදන විස්තර පවත්වා ගනී. view. යෙදුමට GPU බන්ධිත ගැටළුවක් තිබේ නම්, ඔබට Foveation විදැහුම්කරණය eanbling කිරීමට උත්සාහ කළ හැකිය.

ෆොවේෂන් භාවිතා කරන විට අවධානය යොමු කළ යුතු දේවල් තිබේ:
➢ පෙරනිමි ෆොවේෂන් මාදිලිය යොදන පර්යන්ත කලාපවල අඩු වූ විස්තර පරිශීලකයින් සාමාන්යයෙන් නොදකිති. නමුත් ෆොවේෂන් හි පර්යන්ත ගුණාත්මකභාවය ඉතා අඩු නම්, එය පරිශීලකයාට කැපී පෙනෙන විය හැකිය.
➢ පරිශීලකයාගේ අවධානය ආකර්ෂණය කර ගත හැකි ඇතැම් වයනයන්හි ද්රව්ය සමඟ ෆොවේෂන් කිරීමේ බලපෑම් වඩාත් කැපී පෙනෙනු ඇත. සංවර්ධකයින් මේ පිළිබඳව දැනුවත් විය යුතු අතර ඒ අනුව එය ඇගයීමට ලක් කළ යුතුය.
➢ foveated rendering විශේෂාංගය සක්රීය කිරීම මඟින් ස්ථාවර GPU කාර්ය සාධන පිරිවැයක් දැරීමට සිදුවේ, එය අක්ෂි බෆරයේ ප්රමාණය අනුව 1% සිට 6% දක්වා වෙනස් විය හැකිය. දර්ශනයේ සරල සෙවනක් භාවිතා කරන විට, සම්පත් ඉතිරි කිරීමෙන් ලැබෙන කාර්ය සාධන ලාභය ස්ථාවර GPU කාර්ය සාධන පිරිවැයට වඩා අඩු විය හැකි අතර, එහි ප්රතිඵලයක් ලෙස කාර්ය සාධන පහත වැටීමක් ඇති වේ.
- ස්වදේශීය සංවර්ධකයා සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
- Unity සංවර්ධක සඳහා, මෙම මාර්ගෝපදේශය බලන්න. විශේෂයෙන්, ඔබ පසු-සැකසුම් කිරීම හෝ HDR සක්රීය කරන විට, foveation සම්පූර්ණයෙන්ම භාවිතා කළ නොහැක. මක්නිසාද යත්, Unity විසින් foveation සඳහා සහය දක්වන ධාවන කාලයෙන් ජනනය කරන ලද වර්තමානයේ render texture වෙනුවට, තමන්ගේම ජනනය කරන ලද render texture මත වස්තූන් render කරනු ඇත.
- Unreal සංවර්ධක සඳහා, මෙම මාර්ගෝපදේශය බලන්න. සැලකිය යුතු ලෙස, බහු- මත foveation සම්පූර්ණයෙන්ම භාවිතා කළ නොහැක.View රෙන්ඩරින් කිරීම, මන්ද අන්රිල් හට ෆොවේෂන් සඳහා සහය දක්වන ධාවන කාලයෙන් ජනනය කරන ලද රෙන්ඩර් වයනය මතට වස්තූන් සෘජුවම රෙන්ඩර් කළ නොහැක.
3.1.5 රාමු තියුණු බව වැඩි දියුණු කිරීම (FSE)
FSE මඟින් තියුණු කිරීමේ පෙරහන හඳුන්වා දීම හරහා තියුණු කිරීමේ විදැහුම්කරණ ප්රතිඵල ලබා දෙන අතර, එමඟින් අන්තර්ගතය වඩාත් පැහැදිලි කළ හැකි අතර දර්ශනයේ පෙළෙහි පැහැදිලි බව වැඩි දියුණු කිරීමට බෙහෙවින් උපකාරී වේ. යෙදුමට GPU බන්ධන ගැටළුවක් තිබේ නම්, එය අත්යවශ්ය නොවේ නම් FSE අක්රීය කිරීම සලකා බැලිය හැකිය.

- ස්වදේශීය සංවර්ධකයා සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
- Unity සංවර්ධකයා සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
- Unreal සංවර්ධක සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
3.1.6 අනුවර්තන ගුණාත්මකභාවය
බැටරිය සංරක්ෂණය කිරීමට සහ උපාංගයේ විදැහුම්කරණ කාර්ය සාධනය පවත්වා ගැනීමට, මෙම විශේෂාංගය CPU/GPU ඔරලෝසුවේ කාර්ය සාධන මට්ටම් ඒවායේ භාවිතය මත පදනම්ව ස්වයංක්රීයව සකස් කරයි. අතිරේකව, ස්වයංක්රීයව Foveation සක්රීය/අබල කිරීම හෝ ඉහළ/අඩු බර සිදුවීම් ලැබුණහොත් අන්තර්ගතයට එයම සකස් කළ හැකි වෙනත් උපාය මාර්ග ක්රියාත්මක කළ හැකිය.
- ස්වදේශීය සංවර්ධකයා සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
- Unity සංවර්ධක සඳහා, මෙම මාර්ගෝපදේශය බලන්න. අපගේ Unity ප්ලගිනය තුළ, වත්මන් ක්රියාකාරිත්වය මත පදනම්ව අක්ෂි බෆරයේ ප්රමාණය ස්වයංක්රීයව සකස් කළ හැකිය; පෙළ ප්රමාණය විභේදන ලැයිස්තුවේ ඉතා කුඩා පරිමාණ අගයන් පෙරහන් කරනු ඇත. අවම වශයෙන් 20 dmm හෝ ඊට වැඩි ප්රමාණයේ පෙළ අපි නිර්දේශ කරමු.
- Unreal සංවර්ධක සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
3.1.7 අනුවර්තන චලන සංයුක්තකාරකය
මෙම විශේෂාංගය UMC සහ PMC ඇතුළත් පර්යේෂණාත්මක විශේෂාංගයකි. UMC විසින් රාමු අනුපාතය අඩකින් අඩු කර දෘශ්ය සුමට බව පවත්වා ගැනීම සඳහා තත්ය කාලීනව නව රාමු නිස්සාරණය කරනු ඇත. කෙසේ වෙතත්, එය යම් ප්රමාදයක්, කෞතුක වස්තු සහ GPU පැටවීමක් සමඟ පැමිණේ.
PMC ප්රධාන වශයෙන් Depth Buffer භාවිතා කරමින් ATW හට HMD පරිවර්තනය සඳහා ගිණුම්ගත කිරීමට ඉඩ සලසයි, එය 6-dof වන්දියක් දක්වා දිගු කරයි. මෙම විශේෂාංගයට පරිවර්තන ප්රමාදය රාමු 1~2 කින් අඩු කළ හැකි නමුත් GPU පැටවීම වැඩි කළ හැක.
- ස්වදේශීය සංවර්ධකයා සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
- Unity සංවර්ධකයා සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
- Unreal සංවර්ධක සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
3.1.8 රෙන්ඩර් මාස්ක් [යථාර්ථයට සහය නොදක්වයි]
විකෘති වීමෙන් පසු දාරවල ඇති පික්සල පාහේ නොපෙනී යයි, විදැහුම් ආවරණය මෙම නොපෙනෙන පික්සලවල ගැඹුර බෆර අගයන් වෙනස් කරයි. මුල්-z නිසා ඔබ ගැඹුර පරීක්ෂාව සක්රීය කළහොත්, මෙම නොපෙනෙන පික්සල විදැහුම් නොකෙරේ, එමඟින් GPU භාරය අඩු වේ. මෙම නොපෙනෙන ප්රදේශවල අධික ලෙස පටවන විදැහුම්කරණ වස්තූන් තිබේ නම් මෙම විශේෂාංගය ප්රයෝජනවත් වේ; එසේ නොමැති නම්, මෙම ප්රදේශවල විදැහුම්කරණ වස්තූන් නොමැති නම්, එය කුඩා GPU භාවිතයක් පරිභෝජනය කරන බැවින් එය අක්රිය කිරීමට නිර්දේශ කෙරේ.
- ස්වදේශීය සංවර්ධකයෙකු සඳහා, මෙම මාර්ගෝපදේශය බලන්න. RenderMask ඇමතීමට පෙර ඔබ ගැඹුරේ බෆරය බැඳිය යුතුය; එසේ නොමැතිනම්, එය අකාර්යක්ෂම වනු ඇත.
- Unity සංවර්ධකයා සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
- Unreal සංවර්ධක සඳහා, දැනට Render Mask විශේෂාංගයට සහය නොදක්වයි.
3.2 MR අන්තර්ගතය
3.2.1 විනිවිද යාමේ ගුණාත්මකභාවය සකසන්න
passthrough රූපයේ ගුණාත්මකභාවය සඳහා මට්ටම් 3ක් ඇත:
➢ WVR_PassthroughImageQuality_DefaultMode – නිශ්චිත ඉල්ලුමක් නොමැතිව MR අන්තර්ගතයට සුදුසුයි.
➢ WVR_PassthroughImageQuality_PerformanceMode – අතථ්ය දර්ශන විදැහුම්කරණය සඳහා වැඩි GPU සම්පත් අවශ්ය වන MR අන්තර්ගතය සඳහා සුදුසු වේ.
➢ WVR_PassthroughImageQuality_QualityMode – පරිශීලකයින්ට අවට පරිසරය පැහැදිලිව දැකීමට ඉඩ සලසන MR අන්තර්ගතයට සුදුසු වේ, නමුත් අන්තර්ගතයේ අතථ්ය දර්ශනය කාර්ය සාධනය සඳහා වඩාත් සියුම් සුසර කිරීමක් තිබිය යුතුය.
GPU භාවිතය අඩු කිරීම සඳහා ඔබට Passthrough ගුණාත්මකභාවය PerformanceMode වෙත සකස් කළ හැකිය.
- Native, Uunity හෝ Unreal සංවර්ධකයින් සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
3.2.2 විනිවිද යාමේ රාමු අනුපාතය සකසන්න
සංදර්ශක නැවුම් කිරීමේ අනුපාතය මෙන්, ඉහළ Passthrough රාමු අනුපාතය සුමට දෘශ්ය ලබා දෙයි, නමුත් පද්ධති භාරය වැඩි කිරීමේ වියදමින් පැමිණේ. අනෙක් අතට, අඩු නැවුම් කිරීමේ අනුපාත පද්ධති භාරය අඩු කරයි, නමුත් අඩු සුමට දෘශ්ය ප්රතිඵලයක් ලෙස ප්රතිඵලයක් ලෙස. passthrough රාමු අනුපාතයේ ක්රම 2 ක් ඇත: Boost සහ Normal.
- ස්වදේශීය සංවර්ධකයා සඳහා, WVR_SetPassthroughImageRate භාවිතයෙන් passthrough ගුණාත්මකභාවය සකස් කළ හැක.
- යුනිටි සංවර්ධකයා සඳහා, කේතය හරහා වෙනස් කළ හැකිය, උදා.ampසැකසුම් පහත පරිදි වේ // C#
අන්තර්ක්රියා.WVR_SetPassthroughImageQuality(WVR_PassthroughImageQuality.PerformanceMode); - Unreal සංවර්ධක සඳහා, සැකසුම් ක්රමය සඳහා රූපය 3-2-2 හි බ්ලූප්රින්ට් නෝඩය බලන්න.

VIVE OpenXR සැකසුම
OpenXR යනු Khronos සමූහය විසින් සංවර්ධනය කරන ලද පුළුල් පරාසයක VR උපාංග හරහා ධාවනය වන XR යෙදුම් සංවර්ධනය කිරීම සඳහා පොදු API කට්ටලයක් සපයන විවෘත ප්රමිතියකි. VIVE Focus 3 සහ VIVE XR Elite ද OpenXR සඳහා සහය දක්වයි, VIVE OpenXR SDK HTC VR උපාංග සඳහා පුළුල් සහාය ලබා දෙයි, එමඟින් සංවර්ධකයින්ට Allin-One සහ HTC VR උපාංගවල Unity සහ Unreal එන්ජිම සමඟ අන්තර්ගතය ගොඩනැගීමට ඉඩ සලසයි. අපි අඛණ්ඩව විවිධ දෝෂ ප්රශස්තිකරණය කර විසඳන්නෙමු, එබැවින් සංවර්ධකයින් ඔවුන්ගේ උපාංගයේ FOTA අනුවාදය යාවත්කාලීන කිරීම නිර්දේශ කෙරේ. දැනට, VIVE OpenXR SDK OpenGL ES සහ Vulkan සඳහා සහය දක්වයි.
4.1 VR අන්තර්ගතය
4.1.1 සංදර්ශක නැවුම් කිරීමේ අනුපාතය
මෙහි සංකල්පය 3.1.1 දර්ශන නැවුම් කිරීමේ අනුපාතයට සමාන වේ.
- ස්වදේශීය සංවර්ධකයා සඳහා, XrEventDataDisplayRefreshRateChangedFB වෙත යොමු වන්න.
- Unity සංවර්ධකයා සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
- Unreal සංවර්ධක සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
4.1.2 අක්ෂි බෆර් විභේදනය
මෙහි සංකල්පය 3.1.2 Eyebuffer Resolution එකට සමානයි. පරිමාණ සාධකය 0.7 ට වඩා අඩු නොකිරීමට අපි නිර්දේශ කරමු, මන්ද මෙය පිළිගත නොහැකි දෘශ්ය ගුණාත්මක භාවයට හේතු විය හැක.
- ස්වදේශීය සංවර්ධක සඳහා, xrCreateSwapchain වෙත යොමු වන්න. ප්රමාණය සකස් කිරීමේදී, ඔබ පළල සහ උස අනුපාතයකින් ගුණ කළ යුතුය. ,
- Unity සංවර්ධකයා සඳහා, පහත උදාහරණ බලන්නampලෙ // සී#
XRSettings.eyeTextureResolutionScale = 0.7f; //නිර්දේශිත 1.0f~0.7f - යථාර්ථවාදී නොවන සැකසුම් සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
4.1.3 බහු-View විදැහුම්කරණය
මෙහි සංකල්පය 3.1.3 බහු-View විදැහුම්කරණය. මෙම විශේෂාංගය CPU මත පැටවීම අඩු කරයි, GPU හි ද සමහර ප්රතිලාභ ඇත. මෙම විශේෂාංගය සක්රීය කිරීමට අපි නිර්දේශ කරමු.
- ස්වදේශීය සංවර්ධකයා සඳහා, KhronosGroup OpenXR බහු-View exampඑසේ නම්, මෙම මාර්ගෝපදේශය බලන්න.
- Unity සංවර්ධක සඳහා, Render Mode වෙත යොමු වන්න, තනි අවසරය බහු-view ලක්ෂණය.
- VIVE Wave සැකසුම් මෙන්, Unreal සංවර්ධකයා සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
4.1.4 Foveation [Unreal සඳහා සහය නොදක්වයි]
මෙහි සංකල්පය 3.1.4 Foveation ට සමානයි. Foveated rendering ප්රධාන වශයෙන් නිර්මාණය කර ඇත්තේ GPU භාරය අඩු කිරීම සඳහා වන නමුත් එය සක්රීය කිරීම මඟින් ස්ථාවර GPU කාර්ය සාධන පිරිවැයක් දැරීමට සිදුවන අතර foveation ඉතා අඩු මට්ටමක තබා ඇතැම් ද්රව්ය හෝ වයනය භාවිතා කරන්නේ නම්, එය ඉතා
පරිශීලකයාට සැලකිය හැකි ය. එබැවින්, ඔබගේ නිශ්චිත අවශ්යතා සහ කාර්ය සාධන සලකා බැලීම් මත පදනම්ව විශේෂාංගය සක්රිය හෝ අක්රිය කිරීම සුදුසුය. වර්තමානයේ, Foveated ක්රියාකාරීත්වය VIVE OpenXR SDK හි OpenGL ES හි පමණක් සහය දක්වයි.
- ස්වදේශීය සංවර්ධකයින් සඳහා, මෙම විශේෂාංගය ලබා ගත හැකිය, නමුත් දැනට, පෙර නැතamples සපයනු ලැබේ.
- Unity සංවර්ධකයා සඳහා, මෙම මාර්ගෝපදේශය බලන්න.
- Unreal සංවර්ධකයා සඳහා, මෙම විශේෂාංගය දැනට සහාය නොදක්වයි.
4.1.5 රෙන්ඩර් මාස්ක් [යථාර්ථයට සහය නොදක්වයි]
මෙහි සංකල්පය 3.1.8 Render Mask එකට සමානයි.
- ස්වදේශීය සංවර්ධකයෙකු සඳහා, Mesh ලබා ගැනීමට XrVisibilityMaskKHR භාවිතා කරන්න. දර්ශනය විදැහුම් කිරීමට පෙර, දර්ශනය විදැහුම් කිරීමට පෙර ගැඹුර බෆර අගයන් පිරවීමට මෙම Mesh භාවිතා කරන්න.
- Unity සංවර්ධකයා සඳහා, Render Mask විශේෂාංගය OpenGL ES සඳහා පෙරනිමියෙන් සක්රීය කර ඇති අතර, පහත කේතය සමඟ අක්රිය කළ හැක; Vulkan දැනට මෙම විශේෂාංගයට සහය නොදක්වයි. //C# UnityEngine.XR.XRSettings.occlusionMaskScale = 0.0f;
- Unreal සංවර්ධක සඳහා, දැනට Render Mask විශේෂාංගයට සහය නොදක්වයි.
4.2 MR අන්තර්ගතය
OpenXR දැනට Passthrough ගුණාත්මකභාවය සහ රාමු අනුපාතය සැකසීමට සහාය නොදක්වයි. අපි Passthrough විශේෂාංගය ප්රශස්ත කිරීම සහ නිවැරදි කිරීම දිගටම කරගෙන යන්නෙමු, එබැවින් සංවර්ධකයින්ට උපාංගය යාවත්කාලීනව තබා ගැනීම සඳහා එහි FOTA අනුවාදය යාවත්කාලීන කිරීමට නිර්දේශ කෙරේ.
පොදු ප්රශස්තිකරණය
5.1 ඉහළ කාර්ය සාධන මාදිලිය අක්රිය කරන්න
"ඉහළ කාර්ය සාධන මාදිලිය" අක්රිය කිරීමෙන් උපාංගයේ සංදර්ශක ප්රමාණය අඩු කළ හැකි අතර එමඟින් GPU භාවිතය අඩු කළ හැකිය. අවාසිය නම් තිර විභේදනයේ අඩුවීමයි. එය සක්රීය කළ යුතුද යන්න තීරණය කිරීම සඳහා ඔබට ගුණාත්මකභාවය සහ කාර්ය සාධනය සමතුලිත කළ හැකිය.
VIVE Focus 3 සඳහා සැකසුම් ස්ථානය රූපය 5-1-1 හි දක්වා ඇත:

VIVE XR Elite සඳහා සැකසුම් ස්ථානය රූපය 5-1-2 හි දක්වා ඇත:

5.2 බහුampling Anti-Aliasing
බහුampling is an anti-aliasing technique used to smooth out jagged edges, usually is accelerated through hardware, which incurs GPU performance cost. We recommend not setting MSAA higher than 2x because more hight value will consume more gpu usage.
- ස්වදේශීය සංවර්ධක සඳහා, MSAA OpenGL ES exsampමට මෙය යොමු කළ හැකිය; MSAA Vulkan හිටපුampler හට මෙය යොමු කළ හැක.
Adreno GPU මඟින් MSAA ප්රශස්ත කරන දිගුවක් සපයයි. - යුනිටි සංවර්ධකයා සඳහා, මෙම සංසදය වෙත යොමු වන්න.
- For Unreal developer, refer to this guild. Unreal also has provide post processing anti-aliasing, refer to this guild.
5.3 GMEM පැටවීම/ගබඩාව
Adreno GPU ගෘහ නිර්මාණ ශිල්පයේ, Render Target එකක් බන්ධනය කරන විට, Render Target එක හිස් නොකළහොත් හෝ අවලංගු නොකළහොත්, සෑම විදැහුම්කරණයක් සිදුවන අවස්ථාවකම, Render Target හි අගයන් Graphics Memory එකට පටවනු ලබන අතර, එය GMEM Load ලෙස හැඳින්වේ. පෙර අගයන් අවශ්ය නොවේ නම්, විදැහුම්කරණයට පෙර Render Target පැහැදිලි කළහොත් හෝ අවලංගු කළහොත්, GPU කාර්ය සාධනය වැඩි දියුණු කිරීම සඳහා මෙම තත්වය වළක්වා ගත හැකිය.
පහත ක්රම භාවිතා කිරීමෙන් ඔබට GMEM පැටවීම වළක්වා ගත හැකිය. OpenGL ES හි, FBO බන්ධනය කිරීමෙන් පසු, ඔබට වර්ණය, ගැඹුර සහ ස්ටෙන්සිල් බෆරය ඉවත් කිරීමට glClear සහ glClearDepth ඇමතීමට හෝ නිශ්චිත Render Target අවලංගු කිරීමට glInvalidateFramebuffer ඇමතීමට හැකිය. Vulkan හි, අමතර උපදෙස් අවශ්ය නොවේ; VkAttachmentDescription.loadOp හි භාවිතා කිරීමට පෙර ඇමුණුම ඉවත් කළ යුතුද යන්න ඔබට පැහැදිලිව සැකසිය හැකිය.
ඒ හා සමානව, ටයිල් රෙන්ඩර් එකක ප්රතිඵලය ග්රැෆික් මතකයෙන් ප්රධාන මතකයට නැවත ගබඩා කිරීම GMEM වෙළඳසැල ලෙස හැඳින්වේ; මෙම මෙහෙයුම GPU සඳහා ද මිල අධිකය. මෙය වළක්වා ගැනීම සඳහා, අනවශ්ය ගබඩා මෙහෙයුම් වැළැක්වීම සඳහා අවශ්ය රෙන්ඩර් ඉලක්ක පමණක් බන්ධනය කිරීම අපි නිර්දේශ කරමු.
5.4 සංයුති ස්ථරය (බහු ස්ථර)
බහු-ස්ථර භාවිතයෙන් ප්රදර්ශනය කරන ලද වයනය වඩා හොඳ දෘශ්ය ගුණාත්මක භාවයක් ඇත. කෙසේ වෙතත්, මෙම විශේෂාංගය ස්ථර ගණන සහ වයනයෙහි ප්රමාණය සමඟ GPU කාර්ය සාධනය සැලකිය යුතු ලෙස වැඩි කරයි. ස්ථර තුනකට වඩා නොඉක්මවන ලෙස අපි නිර්දේශ කරමු.
- ස්වදේශීය සංවර්ධකයා සඳහා,
vive wave SDK එක එක් එක් ස්ථරය සඳහා දත්ත සම්ප්රේෂණය කිරීමට WVR_SubmitFrameLayers භාවිතා කරයි.
VIVE OpenXR SDK මඟින් ස්ථර දත්ත XrFrameEndInfo වෙත ඇතුළත් කර xrEndFrame හරහා ඉදිරිපත් කරයි. - යුනිටි සංවර්ධකයා සඳහා,
o VIVE Wave SDK සැකසුම්, මෙම මාර්ගෝපදේශය බලන්න,
o VIVE OpenXR සැකසුම්, මෙම මාර්ගෝපදේශය බලන්න. - යථාර්ථවාදී නොවන සංවර්ධකයෙකු සඳහා,
o VIVE Wave SDK සැකසුම්, මෙම මාර්ගෝපදේශය බලන්න.
o VIVE OpenXR සැකසුම්, මෙම මාර්ගෝපදේශය බලන්න.
5.5 CPU ස්පයික්
CPU පැටවීම බරින් වැඩි වූ විට, සමහර පසුබිම් ක්රියාවලි නූල් ඉහළ ප්රමුඛතාවයක් ඇති විට, එය ස්වදේශීය ක්රියාත්මක කිරීමට බාධා කළ හැකිය. අන්තර්ගත යෙදුම වෙනත් නූල් මගින් බාධා නොකරන බවට අපට සහතික විය නොහැක.
If such issues arise, you can try increasing the thread priority to see if it resolves the problem. But if you change the thread configuration to optimize for devices, you need to check if this has any negative impact.
- Unity Developer සඳහා, Android නූල් වින්යාස විශේෂාංගය බලන්න. ඔබ VIVE Wave SDK භාවිතා කරන්නේ නම්, WaveXRSettings හි විශේෂාංගයක් අප සතුව ඇති අතර එය රූපය 5-5-2 හි පෙන්වා ඇති පරිදි ප්රමුඛතාවය සකස් කිරීමට ඔබට ඉඩ සලසයි. කුඩා අගය ඉහළ ප්රමුඛතාවය නියෝජනය කරයි.

- ඔබ එන්ජින් කේතය වෙනස් නොකරන්නේ නම්, බාහිර සැකසුම් හරහා ක්රීඩා නූල්, විදැහුම්කරණ නූල් සහ RHI නූල් ප්රමුඛතාවය වෙනස් කිරීමට කිසිදු ක්රමයක් යථාර්ථවාදී නොවේ.
ප්රකාශන හිමිකම © 2024 HTC සංස්ථාව. සියලුම හිමිකම් ඇවිරිණි.
ලේඛන / සම්පත්
![]() | VR විදැහුම්කරණ කාර්ය සාධනය |
යොමු කිරීම්
- dev.epicgames.com/community/learning/courses/eER/unreal-engine-technical-guide-to-linear-content-creation-production/k8pB/unreal-engine-performance-profiling-and-debugging?locale=dev.epicgames.com
- Anti Aliasing and Upscaling in Unreal Engine | Unreal Engine 5.5 Documentation | Epic Developer Communitydev.epicgames.com
- dev.epicgames.com/documentation/en-us/unreal-engine/API/Runtime/HeadMountedDisplay/IHeadMountedDisplay/SetPixelDensity?application_version=4.27dev.epicgames.com
- Unreal Engine හි ජංගම උපාංග සඳහා කාර්ය සාධන මාර්ගෝපදේශ | Unreal Engine 5.5 ලේඛනගත කිරීම | Epic Developer Communitydev.epicgames.com
- dev.epicgames.com/documentation/en-us/unreal-engine/unreal-insights-in-unreal-enginedev.epicgames.com
- Qualcomm ලේඛනගත කිරීමdeveloper.qualcom.com
- developer.vive.com/resources/openxr/openxr-mobile/tutorials/unity/composition-layer/developer.vive.com
- developer.vive.com/resources/openxr/unity/tutorials/using-foveation-in-your-app/developer.vive.com
- developer.vive.com/resources/openxr/unity/tutorials/using-foveation-in-your-app/#GoldenSampledeveloper.vive.com
- developer.vive.com/resources/openxr/unity/tutorials/using-refreshrate-in-your-app/#GoldenSampledeveloper.vive.com
- පරිශීලක අත්පොතmanual.tools
