【unity】HotReloadアセットの使い方と注意点

コンパイルの時間をなくすアセットが登場しました。その名もHotReload。

以下の特徴があります。

  • コード修正したときに即座に反映
  • 再生中にコードを変更することで即座に反映

使い方

購入後、パッケージマネージャーからインポート。

そして、HotReloadウインドウのStartをクリックするだけです。ウインドウは、Window > HotReloadから表示できます。

ただ、少し使ってみたところ、注意点があることがわかりました。

注意点

visualstadioで、コードの変更を反映させた後、ブレイクポイントで停止されなくなる、という問題が発生しました。

visualstadio2019、2022と試しましたが、どちらもダメでした。

サポートに問い合わせたところ、Issues(課題)として扱ってくれ、返金対応してくれました。

なので、visualstadioを使っている場合は要注意です。

また、現段階で、フィールド(クラス内の変数)の追加、編集、削除、enumなど、HotReloadしてくれません。

一瞬、unsupportedという表示が出て、通常のコンパイルをします。

これはバグではなく、サポートしてないということみたいです。

ドキュメントの特徴を見てみると、ロードマップのところにフィールドの追加、編集、削除、新しいクラス/構造体の追加、列挙体などの記載があります。

つまり将来的にサポートしていきます、ということでしょう。

やや残念ですが、それでも、メソッドの追加やローカル変数などはサポートされているので、小さなコード修正では高速化が期待できそうです。

また、実行中に反映がされるため、キャラクターなどの動作を試すときに使えそうです。

unityアセットストアの詳細で、新機能の追加を続けており、最終的には(すべてではないにせよ)可能な限りのC#の変更をサポートしたいと考えています、とあるので、今後に期待ですね。

タイトルとURLをコピーしました