Three.js の VRControls ( examples/js/controls/VRControls.js
) を使用するか、PositionSensorVRDevice
.
ただし、のPositionSensorVRDevice
状態値は常に(Firefox) または x、y、z = 0 の VRPoint3D/4D (Chrome) のいずれかであるため、カメラの向きは決して変わりません。orientation
position
null
私が試した Firefox と Chrome の VR ビルドは次のとおりです。
Chrome が次のように報告するため、実際のものではないように見えますが、PositionSensorVRDevice OK を取得しています。
- デバイス ID: デバッグ-0
- deviceName: Moculus Rift
- hardwareUnitId: デバッグ-0
そしてFFはそれを次のように報告しています:
- deviceId: somedevid
- deviceName: HMD 位置デバイス
- hardwareUnitId: unknownHMDInfo-0x1351d4000
Leap Motion VR Quickstart demoとThree.js WebGL Effects VR demoで同じ結果が得られます。数か月前に動作していたデモでも同じことが言えます.VRControlsを使用していませんが、PositionSensorVRDeviceを直接扱っています.
言うまでもなく、Rift はすべて接続されており、Oculus Rift Config Util のデモ シーンは正常に機能しています。ファームウェア バージョン 2.12 を使用しています。
VRControls の関連コードは update メソッドです。ここでstate.orientation
との値をチェックしています。state.position
this.update = function () {
if ( vrInput === undefined ) return;
var state = vrInput.getState();
if ( state.orientation !== null ) {
object.quaternion.copy( state.orientation );
}
if ( state.position !== null ) {
object.position.copy( state.position );
}
};
どんな提案もありがたく受け取った!