2018年3月29日木曜日

Rewired

Rewired - Unity Asset Store
パブリッシャーサイト
ドキュメント

インストール


Rewired はインストールプロセスを順を追って行う使いやすいインストーラを提供しています。Rewired パッケージをインストールした後にインストーラが自動的に実行されるはずですが、実行されない場合や、ある時点で再度実行したい場合は、メニューからインストーラを起動することができます:Window -> Rewired -> Setup -> Run Installer
インストール中に、いくつかのことが起こります:
  1. Rewired.InputManager スクリプトは Script Execution Order に追加され、-32000 に設定されるため、他のスクリプトの前に実行されます。これは非常に重要であり、変更すべきではありません。
  2. YourProjectFolder/ProjectSettings の Unity InputManager.asset ファイルには、Rewired が必要とするすべてのジョイスティックとマウスのボタンと軸を含む新しい設定が追加されます。これは、Webplayer、Android、iOS などの Unityの入力システムを使用するプラットフォームで必要です。重要:Unity の入力マネージャでカスタムエントリを作成済みの場合、これらのエントリは Rewired によって上書きされず、元の InputManager.asset ファイルは、インストーラウィンドウに表示される場所にバックアップされます。
  3. Rewired/Data には、Rewired エディタに必要なデータを含むいくつかのファイルが作成されます。

クイックスタート


Rewired Input Manager を作成し、1人プレイ用ゲームの基本入力を設定する方法を説明します。

  1. Rewired をインストールします(上記インストールを参照)。
  2. シーンに Rewired Input Manager を作成します:Window -> Rewired -> Create -> Input Manager
  3. シーンの Hierarchy から Rewired Input Manager を選択します。
  4. Inspector で、"Launch Rewired Editor" をクリックします(詳細な使用方法については "Rewired Editor" を参照)。
  5. Rewired Editor ウィンドウの上部にあるナビゲーションバーで "Players" をクリックします。
  6. 入力を使用するには少なくとも1人の Player が必要です。Players ボックスの下の  "New" ボタンをクリックして、新しい Player を追加します。
  7. 後で Players に戻ってコントローラーマップを割り当てますが、まずいくつかのアクションを作成する必要があります。ナビゲーションバーの "Actions" ボタンをクリックし、Actions ボックスの下にある "New" ボタンをクリックして新しいアクションを作成します。
  8. ゲームに必要な入力ごとに1つのアクションを作成します。選択したアクションのプロパティは "Properties" の右側のフィールドで編集できます。移動動作の場合は Type を "Axis" に変更します。それぞれのアクションに Name (名前)と Descriptive Name (説明)を付けることができます。Type が Axis の場合は Positive Name (正)と Negative Name (負)も付けます。各プロパティラベルの上にマウスを置くと、そのプロパティの説明が表示されます。
    メモ:Actions は最初に Action Categories を作成する(または後に Categories に移動する)ことで分類できますが、例の簡単のため、すべてのアクションを Default カテゴリにしておきます。
  9. 各アクションには、キーボードのキー、ボタン、およびマウスの軸の振る舞いを決定する入力動作 (Input Behavior) を割り当てることができます。デフォルトでは、すべてのアクションに "Default" の入力動作が割り当てられます。いずれかの設定を微調整したい場合、または新しい入力動作を作成する場合は、ナビゲーションバーの "Input Behaviors" ボタンをクリックします。説明のために、各プロパティラベルの上にマウスを置いてください。この手引きの目的のために、デフォルトの動作をそのままにしておきます。
  10. 次に、ジョイスティックマップを作成しましょう。ナビゲーションバーの ”Joystick Maps” をクリックします。
  11. 完全サポートされているコントローラのマップを個別に作成することも、時間を節約することもできます。Dual Analog Gamepad テンプレートのマップを作成すれば、そのテンプレートを使用するすべてのコントローラにマップが自動的に作成されます([T] で始まるジョイスティックはテンプレート)。"[T] Dual Analog Gamepad" テンプレートを選択し "Create Map" をクリックします。
  12. 次に、要素 (Element) を作成し、アクションを割り当てる必要があります。要素を作成するには、"Element" ボックスの下の "New" をクリックします。Element Properties は、選択した要素の右側に表示されます。ジョイスティックの要素を割り当てるには、ドロップダウンの ”Element” をクリックします。"Action" でこの要素に割り当てるアクションを選択します。手順8で作成した各アクションの要素を作成し、各要素に1つのアクションを割り当てます。
  13. 次に、同じことをやってみましょう。今度はキーボードだけです。ナビゲーションバーの "Keyboard Maps" をクリックし、"Create Map" をクリックしてマップを作成し、"Element" ボックスの下にある "New" ボタンをクリックしていくつかの要素を作成します。上のジョイスティックマップで行ったように、各要素にアクションを割り当てます。軸を使用する移動動作の場合、キーボードのキーは軸ではなくボタンのように機能するため、”Axis Contribution” 設定を使用して、キーが最終軸に正または負の値を与えるかどうかを決定します。たとえば、"W" キーでキャラクターを上に移動させる場合、アクションは "Move Vertical" に設定し、"Axis Contribution" は "Positive" に設定する必要があります。"S" キーでキャラクターを下に移動させる場合、アクションは "Move Vertical" で、"Axis Contribution" は "Negative" でなければなりません。
  14. マウスマップを作成する場合は、キーボードとジョイスティックの場合と同じ手順を繰り返しますが、今回はナビゲーションバーの ”Mouse Maps” をクリックします。
  15. ジョイスティック、マウス、およびキーボードマップを作成したので、これを Player に割り当てる必要があります。ナビゲーションバーの "Players" ページに戻り、マップを割り当てる Player を選択します。
  16. "Add Joystick Map" ボタンをクリックして、Player にジョイスティックマップを割り当てます。割り当てようとするジョイスティックマップが複数ある場合は、必要な数だけ追加することができます。このデモでは、上で作成したマップを追加してください。別のジョイスティックマップを選択するには、Category と Layout ドロップダウンを変更します。"Start Enabled" がチェックされていることを確認して、このジョイスティックマップがデフォルトでアクティブになるようにします。ゲームプレイが始まり、この Player にジョイスティックが割り当てられると、そのジョイスティックの適切なマップがロードされます。
  17. あなたが作成したキーボードマップについても同じ操作を行います。
    メモ:キーボードコントロールでは "Assign Keyboard on Start" チェックボックスがオンになっていることを確認してください。そうしないと、スクリプトを使用して手動で割り当てない限り、Player にキーボードは割り当てられません。
  18. マウスマップでも同じ操作を行います。
    メモ:マウスコントロールでは "Assign Mouse on Start" チェックボックスがオンになっていることを確認してください。そうしないと、スクリプトを使用して手動で割り当てない限り、Player にマウスは割り当てられません。
  19. Rewired Editor を閉じてシーンを保存します。
  20. 次に、あなたのキャラクター用の入力を処理するスクリプトを作成する必要があります。スクリプトは作成しているゲームの種類によって大きく異なる可能性があるため、この例では Rewired からの入力方法の基本を示します。この例は、実際のゲームで使用するためのものではありません。
  21. プロジェクトに新しいスクリプト(例:MyCharacter.cs)を作成し、キャラクターゲームオブジェクトにスクリプトをアタッチします。→ソース
  22. 以上です!あなたは Rewired を使ってシングルプレイヤーゲームの基本入力を設定する方法を学びました。Rewired にはさらに強力な機能が用意されているので、その他の高度なトピックについては、残りのドキュメントを必ず読んでください。

Rewired Editor ドキュメント


他のパッケージとの統合

  • Bolt by Ludiq
    1. まず Bolt をインストールします。Bolt がインストールされていない場合は、統合パックのインストール時にエラーが発生します。
    2. Unity エディタで次のメニュー項目を実行します:
      Window -> Rewired -> Integration -> Bolt -> Install Integration Pack
    3. 画面の指示に従います。
    4. Bolt の AOT Safe Mode を無効にします。
      Tools -> Ludiq -> Project Settings -> AOT Safe Mode のチェックを外す
    5. メニューから Unit Options Wizard を実行して、Bolt Assembly Options に Rewired_Core および Rewired_Bolt_Runtime ライブラリ を追加します:
      Tools -> Bolt -> Unit Options Wizard
    6. 次に、使用する予定の Rewired クラスを Type Options ダイアログに追加します。Bolt からアクセスしたい Rewired クラスは、ここに追加する必要があります。
    7. 少なくとも以下のタイプを追加することをお勧めします:
      • Rewired.ReInput
        • Rewired.ReInput.PlayerHelper
          • Rewired.Player
            • Rewired.InputActionEventData
        1. Motion Controller by ootii
        以上

        0 件のコメント:

        コメントを投稿