Zenn
Closed1

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

appendChildappendChild

https://www.youtube.com/watch?v=nShjEagFuSQ

https://bitbucket.org/appendchild/study-raw-web-xr/src/0b94992e8a8be267e1b5bc589f2bf9af2128c634/?at=scrap%2Fスティックで前後に移動する

    // 接続されているすべてのコントローラーに対して処理
    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ヶ月前にクローズされました
ログインするとコメントできます