はじめに
「Deeplink – Set up deep links into the Unity editor」を Unity プロジェクトに導入することで
ディープリンクで Unity エディタのシーンを開いたりできるようになります
使用例
using Needle.Deeplink; using UnityEditor; using UnityEditor.SceneManagement; using UnityEngine; internal static class Example { // ディープリンクで指定された URL をログ出力します [DeepLink] private static bool LogUrl( string url ) { Debug.Log( url ); return false; } // ディープリンクで指定されたシーンを開きます [DeepLink( RegexFilter = @"com.unity3d.kharma:open-scene\/(.*)" )] private static bool OpenScene( string sceneName ) { Debug.Log( sceneName ); foreach ( var guid in AssetDatabase.FindAssets( "t:scene " + sceneName ) ) { var path = AssetDatabase.GUIDToAssetPath( guid ); EditorSceneManager.SaveCurrentModifiedScenesIfUserWantsTo(); EditorSceneManager.OpenScene( path ); return true; } return true; } }
上記のようなスクリプトを Unity プロジェクトに追加して
そのスクリプトが格納されているフォルダに .asmdef を作成して
「Assembly Definition References」に「Needle.Deeplink」を設定して Apply します
その状態で、例えば Firefox などのブラウザのアドレスバーに
com.unity3d.kharma:open-scene/TestScene
と入力して Enter を押すと
Unity エディタで「TestScene」が開くことができます