Unity New Input System (experimental) の始め方
0.2.8-preview対応に更新 2019.04.27
※0.1.2-preview対応に更新 2018.12.27
※0.0.13-preview対応に更新 2018.12.8
※パッケージmanifest.jsonを編集する方がお手軽なので記述順を変更
Package Manager から取得
0.2.8-preview(2019年4月27日時点の最新版)ではUnity 2019.1以降が必要になります。
https://github.com/Unity-Technologies/InputSystem/blob/develop/Packages/com.unity.inputsystem/Documentation~/Installation.md
こちらに公式の導入ガイドがあります。
Package Managerを開いて、"Advanced"のドロップダウンメニューから、
"Show preview packages"を選択してpreviewのパッケージが表示されるようにします。
Input Systemが表示されるようになっているはずですので、
そちらをインストールします。
Installをすると、新しいInputSystemを有効にするためはUnityを再起動する必要があると表示されます。
後回しにするとなぜか入力が動かなくて頭を悩ませたりすることもあるので、
ここは素直にすぐ一度再起動しておきましょう。
manifest.jsonを変更してパッケージ取得
パッケージの取得はstaging registryから取得することも可能で、
Package の manifest.jsonに記述します。
既存のパッケージのが列挙されているので、以下の形式になるように書き換えます。
{
"dependencies": {
"com.unity.ads": "2.0.8",
(中略)
"com.unity.modules.xr": "1.0.0", // <= 既存の一番最後の項目の後にカンマ
"com.unity.inputsystem":"0.0.13-preview" // <= inputsystemの参照を追加
}, // <= ここにもカンマ
"registry": "https://staging-packages.unity.com" // <= satging のレジストリを指定するため追加
}
変更後にunity側でパッケージのインポートが行われます。
以下は0.0.13-previewだと発生しなくなっているようです。
0.0.12-previewバージョンだと、スクリプトのコンパイルエラーが出るようです。
com.unity.inputsystem/InputSystem/Editor/InputActionAsset/InputTreeViewLine.cs
の先頭の方で以下の箇所をコメントアウトします。
//using NUnit.Framework;
Githubからパッケージの取得
まず次のGithubのリポジトリを、ローカルにクローンするかDLするなどして取得します。
github.com
お試しで触るのであれば、そのまま取得したプロジェクトを開いてもOK.
Unityのバージョンは 2018.2.5f1 or later.
既存のプロジェクトに導入するか、新規のプロジェクトで使っていくにはパッケージをインポートします。
Packages/com.unity.inputsystemフォルダを、インポート先のプロジェクトのPackagesフォルダへコピー。
Unity側でインポートが行われます。
0.0.12-previewバージョンだと、スクリプトのコンパイルエラーが出るようです。
こちらもInputTreeViewLine.csでコンパイルエラーは起きてしまうので、コメントアウトして対応します。
現バージョンだと、このあと一度エディタを立ち上げ直さないといけないようでした。
パッケージの参照などは解決しているのですが、実行時にInputSystemが動かないようでした。
Player Settingsの変更
Active Input Handling のところを、Input System (Preview) もしくは Both に設定します。Bothだと従来のInputSystemも機能するので、今の所はそちらにしておくのがおすすめです。
wiki (内容が最新に追いついてない箇所が多々あり)
https://github.com/Unity-Technologies/InputSystem/wiki