THREEjs と webvr-boilerplate を使用してゲームを開発しています。常にシーンの上部に留まる HUD (スコア、距離、パワーアップなど) を適切にレンダリングする方法に少し苦労しています。(非表示のキャンバス要素から取り込まれたテクスチャを使用して) 平面を作成しようとしましたが、適切な深さを一致させることができないため、空間に配置するのが困難であることがわかりました。
手がかりはありますか?:)
THREEjs と webvr-boilerplate を使用してゲームを開発しています。常にシーンの上部に留まる HUD (スコア、距離、パワーアップなど) を適切にレンダリングする方法に少し苦労しています。(非表示のキャンバス要素から取り込まれたテクスチャを使用して) 平面を作成しようとしましたが、適切な深さを一致させることができないため、空間に配置するのが困難であることがわかりました。
手がかりはありますか?:)
そうですね、クラシックな HUD を使用するべきではありません。VR はそのようには機能しません。
ダイエジェティックまたは空間 UI と呼ばれるものを探しています。つまり、スコアとその他のアイコンは、固定位置または距離でシーン空間のジオメトリとしてレンダリングされます (これは空間 UIと呼ばれます)。最良の結果を得るには、実際のディスプレイを模倣したゲーム オブジェクトに情報を描画します。たとえば、車のダッシュボードの燃料計や銃の目に見える残りの弾丸 (これはdiegetic UIと呼ばれます) です。
Unity は、これらの概念を説明する素晴らしいページを作成しました。