3Dwidgetの座標スペースのscreenとworldの違いについて

こんにちは。私はVRウィジェットを描画したいと考えています。そこで3dwidgetを使用してウィジェットを描画しているのですがscreenとworldの違いについて教えて頂けますでしょうか

こんにちは!

screenとworldの大きな違いは、2D空間と3D空間のどちらでUIを表示されるかという所にあります。まず先に設定による違いを見てみましょう。下の画像は同じUMGをScreen(右)World(左)で表示させた時の結果です。カメラを移動させた場合、WorldはUIの見た目(大きさや向きなど)が変化しますがScreenは変化していません。

World設定の場合は3D空間にUIが配置・表示されます。つまり、この画像の場合だと配置されているキャラクタや壁と同じ扱いになります。その為、カメラの動きに応じて見た目が変化します。また、ポストプロセスなどの影響を受けます。

Screen設定の場合は2D空間にUIが配置・表示されます。つまり、一見Widgetコンポーネントを使った三次元的なUIに見えますが、本質的には「Widget作成ノード→Add to Viewportノード」で表示する2DWidgetと同じものです。3DWidgetのように見えるのはWidgetコンポーネントの3D空間座標を元に2D空間座標を計算しているためです。2DWidgetなので、カメラやキャラクタの動きにより表示位置は変わりますが大きさ・向きは変化しません。また、ポストプロセスなどの影響は受けません。

VRコンテンツの場合は基本的にWorld設定を使います。試してみると分かるのですが、Screen設定の場合は正常に画面に映りません。これはScreen設定はVRには適していない2DWidgetだからです。もしUIにポストプロセスが影響することを避けたい場合は、StereoLayerコンポーネントを使用してみて下さい。詳細はこちらの記事で紹介しています。
http://pafuhana1213.hatenablog.com/entry/2016/12/24/202106

これでご回答になっていますでしょうか?
よろしくお願いします。