質問: Unity5.3でゲーム制作をしています。 Oculus Riftを使用したいのですが、 どうやらOculusはGUIに対応していないようで、 通常のゲーム再生ではできているシーン遷移時のフェードアウト・フェードインがOculusを装着して見てみると反映されていません。 そこで、カメラの前に黒いCubeを置いてそれをカメラの子オブジェクトにし、 「その透明度を上げる→シーン切り替え」というようにしてみたいのですが、 いくつか問題があります。 まず、シーンの中に3D Textを配置して、カメラの子オブジェクトにしているのですが、 そのテキストより手前にCubeを配置しているのに常にテキストが前面に見えてしまいます。 (UI TextはOculusに使えません) また、Cubeにライトが当たっているので、 真っ黒の画像を読み込んでいても面にグラデーションがかかってしまいます。 真っ黒な面をテキストより手前に出すにはどうしたらいいですか。 それと、フェードアウトしたいシーンは6枚のPlaneに囲まれた箱のような部屋の中にいる状態なのですが、 それより大きなCubeをカメラのギリギリに配置しているのに、 Oculusで視野を変えるとなぜか部屋の壁が見切れます。 これらを解決する方法または、 GUIを使わない他のフェードアウト・フェードインのやり方はありますか? よろしくお願いします。
回答: 真っ黒なオブジェクト(Cubeでも何でもよい)を作って、カメラのすぐ前に置きます。 そのオブジェクトの透明度を上げ下げすればフェードに見えるかと思います。 参考サイト:オブジェクトの透明度を操作する方法 (2017/01/16質問追記に伴い回答追記) ■常にテキストが前面に見える 「フェード中はテキストを非表示にする」「テキストも一緒にフェードさせる」 「テキストのシェーダーを変える(参考:Unity Community Wiki - 3DText)」 のいずれかで解決するかと思います。 ■Cubeの面にグラデーションがかかる ライトが影響するシェーダーを使っている為かと思われます。 シェーダーを変えてみるか、Cubeオブジェクトにはライトを当てないようにすれば直るかと思います。 参考サイト:Unity3D:ライトを特定のオブジェクトのみに当てる ■部屋の壁が見切れる VRの場合180度以上見えるのでCube(平面)では確かに覆えませんでした、すみません。 それこそ箱のような形になるようにCubeオブジェクトをカメラの左右にも配置し、いっぺんにフェードさせてください。