PicoVR 開発ガイド



ビデオからのXR チュートリアル
https://www.youtube.com/watch?v=fM0k2n7u8sc&list=PLpEoiloH-4eP-OKItF8XNJ8y8e1asOJud&index=1

Unity - XR


-------------セクション 1、頭部オブジェクト制御--------------
TrackedPoseDriver 基本的な頭部追跡
コンポーネントがカメラ


XR Origin XR 空間に追加されました
- --Origin Base GameObject XR オリジナル オブジェクト
---Camera Floor Offset ゲーム高さオフセット オブジェクト
---カメラ カメラ
---Tracking Origin Mode 原点位置合わせ、(駆動装置または地面)
---Camera Y オフセット高さ 左右のオフセットハンド オブジェクトを追加し、XR コントローラーを追加します。


XR コントローラー
(XR のデフォルト コンポーネントを使用 - XR デフォルト左コントローラー/XR デフォルト右コントローラー) オブジェクトコントロール ハンドル位置---------------セクション 2、ハンドル オブジェクトを追加します。 control---------------------------- C#コントローラー入力クラスPublic InputActionProperty pinsAnimationAction; (XR デフォルト入力アクション プリセット オブジェクトから情報を取得) - Link -XRI RightHand Interaction/Activate Valueトリガー値を取得しますfloattriggerValue =inchAnimationAction.action.ReadValue<float>(); // 変数を取得しますpublic InputActionPropertyグリップAnimationAction; (XR Default Input Action デフォルト オブジェクトから情報を取得します) -Link-- XRI RightHand インタラクション/値の選択グリップ値の取得floatグリップValue =グリップAnimation.action.ReadValue<float>(); ----- -----セクション 3、モバイル----------- -------- XR Origin は LocomotionSystem モバイル システムを追加します。---XR Origin は XR スペースを指します。XR Origin は、Continuous Move Provider の連続移動制御を追加します---システムに基づいたシステム: LocomotionSystem 移動システム、---Move Speed 移動速度---Strafe がモーションをオンにできるようにします---重力を使用して重力をオンにします- --Gravity Application Mode 重力モード: 移動がオン/常にオン---Forward Source 前方基準: カメラ (視点) 駆動オブジェクト (車両) ---Left Hand Move Action (XR Default Input Action デフォルト オブジェクトから情報を取得) -リンク -- XRI 左手移動/左手移動 データ---右手移動アクションXR Origin キャラクター追加 コントローラー キャラクターコライダー-----------回転----------- -------- XR Origin は、Continuous Turn Provider の連続回転制御を追加します。---システムベースのシステム: LocomotionSystem 移動システム、---Turn Speed 回転速度---Left Hand Turn Action 左手回転(取得) XR Default Input からの情報 アクション プリセット オブジェクト) - リンク -- XRI LeftHand Locomotion左手回転データ情報を取得するアクション プリセット オブジェクト) -Link--XRI LeftHand Locomotion/Turn 左手回転データ-------スクワット--------- プロバイダーの移動はアクション連続移動から来ています プロバイダーの連続移動--------セクション 4、テレポーテーション移動----------------追加Ray Interactor レイ入力プレハブ。XRI Default Left Controller をロードし、デフォルト パラメータXR Origin をロードし、Teleportation Provider 送信コンポーネントを追加し、地上に Teleportation Area 送信スペースを追加します。--------動きは掴むことから生まれる


















































































































レイ オブジェクトの XR コントローラー > SelectActions>XRI GightHandInteraction/Select Grasp
XRI RightHand Interaction/Activate Trigger に置き換えられます


------- Teleportation Anchor
Teleportation Anchor をシリンダーに追加します Teleportation Anchor
---Colliders Collision は
---Teleportation Configurationから来ていますテレポート設定
-Match Orientation テレポート後の方向 (World Space Up 世界平面上/TargetUp は上方のターゲットを追跡/TargetUpAndForward は上と前方のターゲットを追跡)
---Teleport Anchor Transform Teleport target


-------Ray が低音に変わります。曲線 -- ----- XR レイ インタラクター>曲線
レイキャスト設定 > 線種 > ベジェインタラクター ハンドルインタラクションインタラクタブル オブジェクトハンドル 追加するハンドルXR Direct Interactor追加するインタラクターオブジェクト XR Simple Interactable シンプルなインタラクション オブジェクト---インタラクタブル イベント インタラクションイベント- ------Hover Entered インタラクションに入る-------Hover Exited インタラクションを終了する------ -選択 掴んでインタラクションする XR Grab Interactable を追加するオブジェクトを選択します。--Movement Type グラブ移動タイプ (Velocity Tracking 速度追従/運動学的衝突インタラクティブ追従/瞬時完全追従) ----XR Grad Interactable がグラブされます ------- Transform グラブ アライメント ポイントのアタッチ---- --- --ピストルが弾を発射---------- UnityEngine.XR.Interaction.Toolkit を使用してヘッダー ファイルを追加; void Start() { //グラブ インタラクティブ プログラムXRGrabInteractable を取得します grabable = GetComponent<XRGrabInteractable>( ); / /Executeプログラムgrabbable.activated.AddListener(Fire); } public void Fire(ActivateEventArgs arg) { } -----------セクション6、カスタマイズ---------- ------ -------左手と右手のグリップ ポイントを揃える. UnityEngine.XR.Interaction.Toolkit を使用してヘッダー ファイルを継承する; public : class XRGrabInteractableTowAttachpublic Transform LeftGrabPos; //右手のグリップpoint public Transform RightGrabPos; //保護オーバーライドを有効にする場合に選択します void OnSelectEntered(SelectEnterEventArgs args) { //把握オブジェクトが左手レイヤーに属している場合if(args.interactorObject.transform.CompareTag( "Left Hand")) { //リンクの掴み位置を左手の点に合わせますattachTransform = LeftGrabPos; } //掴みオブジェクトが右手レイヤーに属している場合、そうでない場合 if(args.interactorObject.transform.CompareTag("Right Hand")) { / /リンクの掴み位置右手の点を揃えますattachTransform = RightGrabPos; } }


























































































おすすめ

転載: blog.csdn.net/qq_21743659/article/details/133745852