Pico SDK が Unity の動きを制御する方法

Unity に Pico SDK をインポートした後、実際の開発を行うにはどうすればよいですか? 誰もがとても好奇心を持っているはずです。昨年の県大会から今年の全国大会まで、約 1 年間 Pico を勉強してきました。学び始めた当初はブロガーの記事をたくさん読みましたが、欲しい知識は見つかりませんでした。覚悟が決まったら、全国大会後の仮想デバイスの使い方について書こうと思いますので、Pico SDKの正しい使い方を私の視点から解説していきます。

今日のメイン内容はUnityでのPico SDKの一人称視点での動かし方です

下の図は、Pico SDK が Unity3D にインポートされたことを示しています

1. Unity に付属の Camera カメラを削除し、Pvr_UnitySDK サブフォルダー Prefabs を見つけて、Prefabs フォルダーの下にある Pvr_UnitySDK プレハブをシーンにドラッグすると、カメラの準備が整います。

2. Pvr_Controller フォルダーで ControlManager プレハブを見つけてシーンに配置します。これは Pvr_UnitySDK の子オブジェクトとなり、Pvr_UnitySDK の Head と同じレベルになります。Pvr_UnitySDK はヘッドセットを指し、Head はプレーヤーの頭を指し、ControllerMannager はハンドル コントローラーを指します。PvrController0 は左側のコントローラー、PvrController1 は右側のコントローラーです。

3. Pvr_Controller フォルダーの下にある Scenes フォルダーを見つけて、Scenes フォルダー内の Pvr_Controller_Demo シーンを開き、Pvr_UnitySDK のサブオブジェクト HeadControl を見つけて Assets ディレクトリに置き、前のシーンに戻ります。手順は次のとおりです。下の図

4. Assets ディレクトリの下にある HeadControl を、Head および ControllerManager と同じレベルにある Pvr_UnitySDK に配置します。レンダリングは次のようになります。

5. スクリプト Pvr_Input Module (Script) を Event コンポーネントに追加します。このスクリプトは PicoSDK に付属しています。直接追加できます。Pvr_Input_Module スクリプトには、確認ボタン オプションがあります。ここで、プレイヤーが対話するイベント ボタンを選択できます。デフォルトでは、ハンドルの黒い丸いボタンである TouchPad が選択されます。

6. Pvr_Controller Demo (Script) スクリプトを ControllerManager コンポーネントに追加します Pvr_Controller Demo (Script) スクリプトは PicoSDK フォルダーに付属しているので、直接追加するだけです。

7.ControllerManager コンポーネントで Pvr_Controller Demo (Script) のスクリプトを開き、スクリプトにレイ クリック移動メソッドを追加します。追加されたコードは図に示されています。

 

 図に示すように、追加された光線検出移動コードが完成しました。コードは次のとおりです。

   //
    public Transform personを追加;//移動キャラクター
    public string moveLayer;//移動可能なレイヤー
    public LineRenderer rayLine_zengjia;//ハンドルの下に ray_LengthAdaptive;

//新規追加

 if (1 << hit.transform.gameObject.layer == LayerMask.GetMask(moveLayer))
 {             rayLine_zengjia.material.color = Color.green;//レイが移動可能になったとき                       if ( Controller.UPvr_GetKeyDown(0 , Pvr_KeyCode.TRIGGER) ) || Controller.UPvr_GetKeyDown(1, Pvr_KeyCode.TRIGGER) || Input.GetMouseButtonDown(0) )                         {                             person.position = new Vector3(hit.point.x, person.position.y, hit.point. z);                         }  }                     それ以外の場合は                     {








                        rayLine_zengjia.material.color = Color.red;//光線が動かなくなると赤くなります
                       
                    }

8. ControllerManager コンポーネントで次の操作を実行します。手順と効果の図は次のとおりです。

9. 地面を作成します。ここでは 3D オブジェクト Cube を作成し、Cube オブジェクトの Layer プロパティを設定し、Layer プロパティを moveLayer に設定して、これが移動可能なレイヤーであることを示します。手順は次のとおりです。

 10. この時点で、PicoSDK は Unity3D での一人称ローミングを完了しました。ハンドル トリガーが引かれると、ハンドル レイが指す点が一人称プレーヤーの移動のターゲット ポイントになります。

11. Alt + マウスの左ボタンは Pico のトリガー ボタン、

        今後、Picoの別の動かし方についてもお伝えしていきます。

        Pico に興味がある場合は、私の他の記事を読んでください。

ご質問がございましたら、yf15536​​53788 まで WeChat でのチャットに私を追加してください。

おすすめ

転載: blog.csdn.net/Ai1114/article/details/125209941