Python for Unityは、UnityプロジェクトでPythonを利用することが可能になります。これにより、以下のようなメリットが得られます:
- Unityをリアルタイムレンダラーとして使用する際のシーンとシーケンスのassembly自動化。
- 大量アセットの複製や変更など、時間のかかるタスクの自動化。
- 複雑なUIを使用して他のDCCツールとネイティブに連携できるカスタムエディターツールの作成。
Python for Unityのインストールは、Unityプロジェクト直下のPackagesディレクトリにあるmanifest.jsonを開き、dependenciesに以下を追記します。
{
"dependencies": {
(略)
"com.unity.scripting.python": "2.1.1-preview.1"
}
}
追記して保存したらUnityを開けばWindow>Generalに「Python Console」が追加されます。また、PackageManagerにも表示されるようになり、こちらからはサンプルをインポートすることもできます。
次に使用するPythonの実行ファイルを指定します。Edit>Project Settings>Python for Unityを選択し、「…」をクリックしてpythonの実行ファイルを指定します。
Python for Unityを使ってPythonスクリプトを実行するには、PythonRunner.RunFileまたはPythonRunner.RunStringを使用します。
import UnityEditor
import UnityEngine
guids = UnityEditor.AssetDatabase.FindAssets("t:prefab", None)
for guid in guids:
path = UnityEditor.AssetDatabase.GUIDToAssetPath(guid)
print(str(path))
UnityEngine.Debug.Log(path)
このようなコードを書いて「Execute」を実行、もしくはCtrl+Enterをすると、Python Consoleの上部のログ表示エリアとConsoleにログが表示されます。
以上がPython for Unityの基本的な使い方です。これにより、UnityプロジェクトでPythonを活用することが可能になります。