FPS最適化ガイド
この文書は、PrismStudio 1.16に基づいて作成されました。
FPS最適化ガイド?
PrismStudioを使用すると、以下のようにフレームが不安定な現象を経験した可能性があります:
この現象を最小限に抑え、VRChatとPrismStudioの間のほぼ完璧な接続性を作るためにこのガイドを作成しました。
不安定な理由?
PrismStudioはVRChatとは別に動作するため、2つのプログラム間の動作周期が異なります。
例えば、VRChatでは70FPSのパフォーマンスが出るとき、PrismStudioは120FPSのパフォーマンスが出ると仮定すると、PrismStudioはVRChatに1秒に120回OSCデータを送信し、VRChatは1秒に70回ずつ、これまで受け取ったOSCデータを収集してカメラの位置と角度を変更してフレームをレンダリングします。
もう少し詳しく見ると、以下のようにPrismStudioでOSCデータを完全に転送する前にVRChatでフレームレンダリングを完成するため、VRChatでPrismStudioから完全なデータを受信できないままフレームをレンダリングしたため、フレームのずれ現象が発生します。
VRChatとPrismStudioのFPS設定を適切に調節し、VRChatとPrismStudioのパフォーマンスがほぼ同じになるようにしてフレーム不安定現象を大きく改善することができます。
FPSの設定はどこに?
VRChat: Settings > Graphics > FPS
PrismStudio: PrismStudio
オブジェクトを選択し、StudioSystemで 一般設定 > FPS
UnityエディタでFPS制限ができますが、エディタの性能によりFPS数値が不安定になります! そのため、常にBuild And Runを使って駆動してください。
推奨設定値
おすすめ 1: VRChat 60, Prism 120
私が現在使用中の設定であり、最も安定した性能を提供します。 また、PrismStudioの基本設定となっています。
- VRChatでのFPS設定をCapped、数値を60に設定
- PrismStudioのFPS設定を120に、VSyncはOFF
このようにすると、PrismStudioはVRChatが1フレーム描くときに2つの完全なOSCデータを送ることができるようになります。
おすすめ 2: VRChat VSync, Prism VSync
次におすすめの設定は、VRChatとPrismStudioの両方にVSyncを使用することです。
VSync (垂直同期) とは?: 垂直同期(VSYNC)とは|ドスパラ通販【公式】
- VRChatでのFPS設定をVSyncで
- PrismStudioのFPS設定をモニターのHZに合わせて、VSync 設定をONに
これにより、VRChatとPrismStudioの両方が垂直同期を使用して、モニターの更新頻度に合わせてOSCデータを送信することができ、VR Chatでより安定的にフレームをレンダリングすることができます。
おすすめ 3: 撮ろうとする映像に合わせて
次におすすめする設定は、撮影しようとする映像のFPS数値に合わせて設定し、PrismStudioのFPSを2倍に設定することです。
この方式を使うと、撮影しようとする映像のフレームに合わせて映像撮影ができるようになります。
例えば、24FPS映像 (例: Stellar Stellar / 星街すいせい(official)) を撮影する場合、VRChatのFPSを24に、PrismStudioのFPSを48に設定します。
おすすめ 4: VRChat 60, Prism 無制限
この次におすすめの設定は、VRChatのFPSを60固定で、そしてPrismStudioのFPSを無制限に設定することです。
これにより、VRChatが1フレームをレンダリングする際に、プリズムがその間に数多くのOSCデータを送信できるようになり、もし最後に送信されたOSCデータが完全にVR Chatに送信されなくても、以前に完全に受信したOSCデータを依存することができます。
- VRChatでのFPS設定をCapped、数値を60に設定
- PrismStudioのFPS設定を無制限に(“-1” または大きい数値)、VSync OFF
以前のおすすめ設定とはあまりおすすめしない設定ですが、それでも以前の設定を試してみたところ、良い結果が得られなかったら、この方法が改善に役立つと思います。
おすすめ n: 直接実験してみる
上記の推薦設定をすべて使用してみたにもかかわらず、それでも不安定だと思われる場合、1、2時間ほど時間をかけて本人の環境に合った最適な数値と設定を探してみることをおすすめします。
また、このような設定や問題についてお問い合わせしたい場合は、Discordサーバー (https://prismstudio.haruna.dev) または Twitter DM (x.com/tw_harunadev) からお問い合わせください!