2017-10-19 12 views
3

ThreeJS r87で現像します。standard example WebVR scriptを使用してください。私の携帯電話でGoogleのボール紙を使って3DシーンをChromeでレンダリングしてみました。Three.js + WebVRは、カメラの視認位置の「高さ」を設定します。

VRを使用しているとき、カメラ/ビューアの視点は世界の中心(0、0、0)にあります。床面は私の視線を横切って水平に走り、すべてのオブジェクトを見上げています。

私が使用してVRヘッドセットの視点を変更しようとしました:

camera.position.set(0, 15, 0); 

しかし、ちょうどそれを上書き/無視しているようです。

現在の位置は固定されていますか?すべてのシーンオブジェクトをグループに入れて、そのシーンを移動/飛行するユーザーの効果を作り出す必要がありますか?

ThreeJSライブラリを見ると、ユーザーの身長などの概念が他のヘッドセットに存在することがわかります。https://github.com/mrdoob/three.js/blob/dev/examples/js/controls/VRControls.js#L58しかし、それらのサポートは薄れているようです。

ThreeJSからVRDisplayまで深く掘り下げて、VRPoseのインスタンスを取得するためにVRDisplay.getPose()のようなものが見つかりましたが、廃止されつつあり、その理由はわかりません。

説明と解決策は高く評価されます。

答えて

1

カメラをグループに入れてみましたか?

var user = new THREE.Group(); 
user.position.set(0, 15, 0); 
scene.add(user); 
user.add(camera); 

See from Line #60 here.

関連する問題