0

C# を使用して Oculus VR 用の Unity ゲームを作成しています。

オブジェクトが突然「顔」に現れる単純なジャンプスケアをテストしたいと思います。

このオブジェクトの位置の設定に問題があります。現在、プレイヤーの位置と回転をこの関数に渡しています。

public void ScareMe(Vector3 pos, Quaternion rot){
    girlSmiling.transform.position = new Vector3(pos.x, 0.9f, pos.z-    1.3f);
    //girlSmiling.transform.LookAt (pos);
    girlSmiling.transform.rotation = rot;
   //other irrelevant stuff
}

Oculus では高さが調整可能で、環境に対応していないため、恐怖 (女の子) の y 位置を維持する必要があるため、0.9f のままにしておく必要があります。LookAt 関数を試しましたが、思ったほどうまくいきません。

問題は、私がまっすぐ見たときだけ女の子が目の前に現れるということです. 私が頭を動かすと、Oculus のゲームの状況である可能性が高くなりますが、彼女は少し右または左、あるいは後ろにさえ見えます。

なぜそれが起こっているのかわかりません。彼女が常に私の前を向いているようにするには、どうすれば彼女の位置を設定できますか?

4

1 に答える 1

1

怖い女の子をカメラヘッド オブジェクトの子にすることはいつでもできます。これを行うと、オブジェクトはカメラ ヘッドに追従し、一緒に回転します。

girlSmiling.transform.parent = ...Here you can put the transform of the Camera head.

親にする前または親にした後にオブジェクトを配置できます(ローカル位置を使用する方が簡単です)。

これがお役に立てば幸いです、頑張ってください!

于 2015-03-08T19:43:53.937 に答える