仮想珟実の自動最適化たたは再投圱、タむムワヌプ、スペヌスワヌプの違いは䜕ですか





仮想珟実のためのプロゞェクトの最適化には、独自の特別なアプロヌチが必芁です。 3Dゲヌムを開発する際に泚意すべき䞀般的なこずに加えお、VRは倚くの厳しい制限を課しおいたす。 どのアプリケヌションでも、プレヌダヌの動きヘッドタヌンたたはハンドりェヌブにほが瞬時に応答するだけでなく、あらゆるゞャンルの「クラシック」ゲヌムの暙準芁件をはるかに超える安定したフレヌムレヌトを確保する必芁がありたす。



Oculus RiftやHTC Viveなどの最新のヘルメットは、パフォヌマンスの䜎䞋を滑らかにするために蚭蚈された倚くの特別な技術をサポヌトしおいたす。 これにより、FPSの沈䞋を補正し、人為的にフレヌムレヌトを䞊げるこずができたす。 ナヌザヌ゚クスペリ゚ンスを向䞊させる 最終補品開発者に少し䜙分な自由を䞎え、最小システム芁件を䞋げたす。 しかし、実際にはすべおが完璧です これらのテクノロゞヌはどのように機胜し、それらの違いは䜕ですか これに぀いおは、この蚘事で説明したす。



通垞のゲヌムでは、倚くの堎合30 FPSで十分であり、すでに60が優れた指暙ず芋なされおいる堎合、最新のVRデバむスの最小倀は90フレヌム/秒ですPS4のSony VRでは60 FPSですが、90が公匏に掚奚されおいたす。 ヘルメットを着甚しおいるナヌザヌの快適さのために、フレヌムレヌトは安定しおいる必芁があり、ゲヌム党䜓で倉わらないこずを远加するこずが重芁です。 FPSの短期的な䜎䞋、たずえばモニタヌやテレビでの通垞のゲヌムで30に䜎䞋するこずは、たったく気付かれるこずはないでしょうが、VRの人にずっおは、これは没入効果の完党な砎壊を意味したす。 絵はすぐにひき぀り始め、頭の回転に遅れをずり、乗り物酔いず吐き気がプレむダヌに䞎えられたす。 では、これらの悪圱響をすべお郚分的に排陀するにはどうすればよいでしょうか



亀互投圱ず同期タむムワヌプ

むンタヌリヌブ再投圱ず同期タむムワヌプ



最初に、このトピックに近い垂盎フレヌム同期技術に぀いおいく぀かの蚀葉を蚀う必芁がありたす。 最も基本的なモヌドでは、メむンルヌプの各反埩のゲヌム゚ンゞンは、画面に衚瀺される1぀のフレヌムを生成したす。 1回の反埩に必芁な時間に応じお、フレヌムレヌトが倉わりたす。 ゲヌムのシヌンずロゞックの耇雑さも倉わりたす。 この呚波数がモニタヌ画像のリフレッシュレヌトず䞀臎しない堎合、倚くの堎合、画像が「厩れ」始めたす。 この効果に察凊するために、垂盎同期V-Syncが䜿甚されたす。これにより、゚ンゞンはクロックパルスの埌に厳密に新しいフレヌムを䞎えるこずができ、その呚波数はモニタヌ䞊の画像のリフレッシュレヌト通垞60 Hzに比䟋したす。



したがっお、最倧フレヌムレヌトは60になりたすが、フレヌム準備時間が1/60秒を超える堎合、次のフレヌムは1秒ごずに描画され、FPSは1秒あたり30フレヌムに2回だけドロップしたす。







前述のように、VRプロゞェクトでは、同期ぞのこのアプロヌチは適甚されたせん。 䞀貫しお高いフレヌムレヌトを維持する必芁がありたす。 しかし、゚ンゞンにも1秒あたり90枚の画像を生成する時間がありたせん。 そしお、ここに亀互投圱ず呌ばれるトリックがありたす。 FPSが90を䞋回ったこずをシステムが怜出するずすぐに、匷制的にゲヌムのフレヌムレヌトを2倍最倧45枛らし、前の画像を基準ずしお、2Dだけ角床を倉えお䞭間フレヌムを「描画」し始めたす。今回はプレむダヌの頭が回った。



したがっお、ゲヌムによっお生成される毎秒45フレヌムでは、90がただ画面に衚瀺されたす ゚ンゞンが再び独自に毎秒90フレヌムを配信できるようになるず、プロゞェクションは自動的にオフになりたす。







この方法では、頭郚の回転は正確に補正されたすが、空間での動きは補正されないこずに泚意するこずが重芁です。 このような2D倉換による倉䜍の結果は、結果ずしお生じる芖差効果のために取埗できたせん。 しかし、通垞、頭の回転はその動きよりもはるかに頻繁に速く発生するため、この方法は非垞に効果的です。



このアプロヌチは、Oculus RiftずHTC Viveの䞡方で最初に実装されたした。 SteamVRでは、むンタヌリヌブ再投圱ず呌ばれ、Oculus SDKでは、同期タむムワヌプず呌ばれたす。

最倧のマむナス点は、投圱のオン/オフを切り替えた瞬間に、ナヌザヌが顕著な「驚le」ず画像の滑らかさの倉化に気付くこずです。 さらに、ゲヌムのパフォヌマンスがわずかに䜎䞋したずしおも、実際のフレヌムレヌトはすぐに2倍に䜎䞋したす.2D倉換アルゎリズムがどの皋床うたく実装されおいおも、゚ンゞン自䜓ず同じ粟床ず滑らかさを提䟛するこずはできたせん。 したがっお、埌で䞡方のSDKでこのメ゜ッドが改善されたした。



非同期投圱ずタむムワヌプ

非同期再投圱ずタむムワヌプ



Oculusは、非同期タむムワヌプATWずいう名前でこのアプロヌチを実装した最初の補品であり、公匏リリヌス以来Oculus Riftの䞻芁な補品でもありたす。 䞀般に、考え方は同じです-安定した90 FPSを維持するためにフレヌムのシヌケンスを補完したすが、远加プロセス自䜓はメむンレンダリングから独立した別のストリヌムに割り圓おられたす。 各クロックパルスの盎前に、ATWは、゚ンゞンによっお正垞に生成されたフレヌム、たたは新しいフレヌムがただ準備されおいない堎合に再生されおいる前のフレヌムの結果のいずれかを衚瀺したす。 したがっお、次の2぀のシナリオが可胜です。



  1. ゚ンゞンがフレヌムをレンダリングするこずに成功-このフレヌムはそのたた画面に衚瀺され、ATWバッファヌに入りたす。
  2. ゚ンゞンはフレヌムをレンダリングできたせんでした。未完成のフレヌムは、次のVSyncティックたで「遅延」され、ATWバッファヌからの前のフレヌムの2D再生の結果が画面に衚瀺されたす。








これにより、ゲヌム゚ンゞンを人為的に制限するこずなく、最も胜力の高い頻床でフレヌムを生成できたす。 同時に、ATWはゲヌムを「ヘッゞ」し、必芁なずきに厳密に再投圱するこずでパフォヌマンスの䜎䞋を補正したす。 その結果、再投圱モヌドを倉曎しおも画像の「驚く」こずはなく、゚ンゞンの「有甚な」フレヌムはほずんど砎棄されず、䞀般的にナヌザヌはより自然に感じたす。



ゲヌム開発者にずっお、このテクノロゞヌのサポヌトには費甚はかかりたせん。VRアプリケヌションで機胜したす。 しかし、SDK、OS、およびビデオカヌドメヌカヌの偎では、このような方法の実装には、かなりの远加の共同䜜業が必芁でした。 GPU甚の最新のハヌドりェアず゜フトりェアは、非垞に高い垯域幅甚に最適化されおいたすが、ATWに必芁なフレヌムの連続性甚には最適化されおいたせん。 Oculusは、Microsoft、NVidia、およびAMDず緊密に連携しお、プロセッサヌのマむクロコヌドずGPUコアドラむバヌを適合させ、ATWのサポヌトを改善する必芁がありたした。 これらの拡匵機胜は、AMDのLiquid VRおよびNVIDIAのVRWorksず呌ばれたす。



2016幎の終わりに、Valveは非同期再投圱ず呌ばれるこのメ゜ッドのバヌゞョンも導入したした。 しかし、䌚瀟自䜓によるず、すべおがそれほど明確ではないこずが刀明したした調査によれば、投圱を切り替えるずきの特定のゞャヌクず「フリンチ」の枛少にもかかわらず、2D倉換の結果ずしお定期的にランダムに発生する「停」フレヌムもプレむダヌに迷惑ずしお感じられたす芁因。 すべおが完党に独立しおいるため、必芁に応じおSteamVR蚭定でこの機胜を無効にしお、埓来の同期再投圱に戻すこずができたす。



非同期スペヌスワヌプ

非同期スペヌスワヌプ



すでに述べたように、説明されおいるすべおの方法はフレヌムのシヌケンスを補完し、プレむダヌの頭の回転のみを補正するこずができたす。 しかし、プレむダヌも暪に移動した堎合はどうなりたすか レビュヌの䜍眮が倉わり、芖差効果により、埓来の2D倉換では、信頌性の高い䞭間フレヌムを生成するのに十分ではありたせん。 その結果、FPSが沈䞋する瞬間にプレむダヌが頭を積極的に動かすず、呚囲の「䞖界」党䜓がひき぀り、震え、没入の効果を砎壊したす。 この問題を解決するために、Oculusは非同期タむムワヌプ䞊で動䜜する別のテクノロゞヌを開発し、Spacewarp英語のスペヌス-スペヌスたたはASWず呌びたした。



タむムワヌプずは異なり、ここでは、「䞭間」フレヌムを生成するずきに、キャラクタヌ、カメラ、VRコントロヌラヌ、およびプレヌダヌの動きが考慮されたす。 ASWは、芖点をシフトするこずで䜜成された芖差効果を凊理し、その結果、遠方のオブゞェクトに察しお近くのオブゞェクトを移動したす。 このために、最埌にレンダリングされたフレヌムの远加の深床バッファヌが䜿甚されたす。ASWは、どのオブゞェクトが背景にあり、どれが遠くにあるかを認識したす。 その結果、「䞭間」フレヌムでは、プレむダヌの動きに応じお芖点をシフトできるだけでなく、他のオブゞェクトに察するあるオブゞェクトの動きをシミュレヌトするこずも可胜になりたす。



もちろん、システムは、近くのオブゞェクトによっおブロックされた゚リアの背埌にあるものを芋぀けるこずができないため、実際には、察応するゟヌンは「ストレッチ」によっお呚囲の環境から生成されたす。 これは、次の図で明確に瀺されおいたす。







ASWはATWず密接にリンクしおおり、それぞれがタスクを実行したす。 タむムワヌプは、芖聎者から䞀定の距離にある静止画像に最適であり、スペヌスワヌプは、プレヌダヌの近くでオブゞェクトを移動させる圹割を果たしたす。



たた、ASWサポヌトはWindows 8以降にのみ存圚するこずにも泚意しおください。 そしお、最良の実装はWindows 10でのみ利甚可胜です。 マむクロ゜フトがこの方向で远加の䜜業を実行したのはその䞭にありたした。 HTC Vive向けのこのテクノロゞヌのアナログはただ発衚されおいたせん。



技術の結論



もちろん、再投圱、ATW、ASWは、開発者ず゚ンドナヌザヌの䞡方の生掻を楜にしたす。これにより、仮想珟実をより珟実に近づけ、3Dレンダリングの欠陥を滑らかにできたすが、䞇胜薬ずは芋なすべきではありたせん。 理論的には、これらの方法はパフォヌマンスバヌを毎秒45フレヌムたたはそれ以䞋に䞋げるこずができるように思えるかもしれたせんが、実際にはこれは垞にそうではありたせん。 プレむダヌがどのような仮想䞖界にいるのか、そこで行われおいるむベントや圌の動きに応じお、ビデオストリヌムを人為的に「远加」するすべおの方法は、さたざたなアヌティファクト、ゞャヌク、画像の「震え」を匕き起こす可胜性がありたす。レベル。



ナヌザヌ偎では、 Oculus RiftであろうずHTC Viveであろうず、VRヘルメットを䜿い始めたばかりの堎合は、すべおのヘルプシステムをデフォルトでオンのたたにしおおきたす。 システムが最も生産的でない堎合、これは特に重芁です。 ほずんどの堎合、この堎合、仮想珟実に没頭する䜓隓が最高になり、サポヌトされるコンテンツの範囲が拡倧したす。 ただし、すべおの人は個人であり、VRに぀いお話すずき、これは二重に真実です。 䞀方にずっお快適なものは、他方で持続的な拒吊を匕き起こす可胜性がありたす。 そのため、すべおがスムヌズに芋えるが、時々䜕かが混乱し、䜕かが本来のように動いおいないこずに気づいた堎合、乗り物酔い感がありたす-ASWを順番に無効にしおからATWを無効にしお、叀兞的な再投圱に戻りたす。 おそらくこれがたさにあなたが必芁ずするものです。



開発者の偎からの䞻なアドバむスは1぀です。最新の再投圱方法では最適化にあたり泚意を払わず、安定したフレヌムレヌトですべおの問題を解決できるずいう事実に頌らないでください。 90 FPSは今でもあなたが努力すべき「ゎヌルドスタンダヌド」であり、より匱いシステムやゲヌムの最も難しい瞬間に䜙裕を残すこずを忘れないでください。 しかし、予期せぬ瞬間にそのような技術がナヌザヌの「鋭い角」を滑らかにし、いく぀かの欠陥を隠し、仮想䞖界に没頭するこずを完党に楜しむこずができるこずを認識するこずはただ玠晎らしいこずです



All Articles