読者です 読者をやめる 読者になる 読者になる

テラシュールブログ

旧テラシュールウェアブログUnity記事。主にUnityのTipsやAR・VR、ニコニコ動画についてのメモを残します。

プラットフォーム切替時にbundleIdentifierを変更する

Unity エディタ拡張・エディタ機能 iOS Android 最適化・デバッグ AssetBundle

プラットフォームが切り替わった際にbundleIdentifierを差し替えるサンプル。

やってる事は簡単で、

  1. [InitializeOnLoad]で自動的にインスタンス化する
  2. 現在のプラットフォームを確認してbundleIdentifierを変える処理を定義
  3. EditorUserBuildSettings.activeBuildTargetChangedに2で作った処理を登録
これだけ。

これだけ見ると単純な処理だけだが、実際色々と応用が効きそうだ。例えば

  • PC向けDLLをPC向けビルド時以外はPluginsフォルダから退避
  • プラットフォーム毎にシェーダーを差し替える
  • 構築するシーンを差し替える
  • AssetBundle甩のURL差替え
等々。

この手のイベントを使うとクラッシュしやすくなるけど意外と便利。