VRアプリにおけるジッタ(揺れ)やジャダ(カクつき)を防ぐための設定
VRで物理演算時にカクつきとかが生じるときがあったりします. それを防ぐための設定例です.
ジッタ,ジャダってどういう意味?
こちらの記事を参照してください.
Fixed Timestep のデフォルト設定
Edit > Project Settings > Time を見ると
デフォルトではこんな設定になっています. Fixed Timestepが0.02となっていますが,これは50fpsを意味します.
Oculus Quest での Fixed Timestep 設定
Oculus Quest のディスプレイは 72fps なので,Quest専用にFixed Timestepを設定するとこんな感じになります.
これでQuestのディスプレイの72fpsで同じになるので(毎回同じになるとは限りませんが),カクつきは減ると思います. 残りのMaximum Allowed Timestep,Time Scale,Maximum Particle Timestepを1に設定しております.
他のVRヘッドセットの場合
Oculusヘッドセットはこんな感じです.
50Hz (Default) = 0.2 60Hz (Gear VR) = 0.0167 72Hz (Quest/Oculus Go) = 0.0138 80Hz (Rift S) = 0.0125 90Hz (Rift) = 0.0111
ヘッドセットのフレームレートをxとして, Fixed Timestep = 1/x となります.
ヘッドセッドごとのFPS表はこちらで把握しましょう. xr-comparison.yutokun.com
ということはHoloLens 2の場合は 1/60 = 0.0167 にしっかり設定しなおした方がいいかもしれないようなしれないような.
参照記事
野生の男さんのこちらの記事を読むと理解が進むと思います. yaseino.hatenablog.com
あとはこのOculusのドキュメントとかも読みたい.
こちらの記事だとQuestでもジッタ対策に1/90に設定している.
1/72と1/90どっちがええやろか.72fps以上ならいいのかな.(混乱)