Closed1
WebXR:スティックでオブジェクトを前後に移動する

// 接続されているすべてのコントローラーに対して処理
let stickY = 0;
for (const inputSource of session.inputSources) {
// スティックの状態を取得
if (inputSource.handedness === 'left' && inputSource.gamepad) {
const gamepad = inputSource.gamepad;
// axes[2]がX軸、axes[3]がY軸(Meta Quest等のVRコントローラー用)
stickY = gamepad.axes[3];
console.log(`左スティック - X: ${gamepad.axes[2].toFixed(2)}, Y: ${gamepad.axes[3].toFixed(2)}`);
}
}
// スティックのY軸の値に基づいて移動量を計算(-1から1の値を-2から2の範囲にマッピング)
const offsetZ = stickY * 2.0;
// モデル行列を作成
const modelMatrix = new Float32Array([
1, 0, 0, 0,
0, 1, 0, 0,
0, 0, 1, 0,
0, 0, -1 + offsetZ, 1 // Z軸を-1に移動し、さらにスティックの入力分を加算
]);
このスクラップは2ヶ月前にクローズされました
ログインするとコメントできます