Unityでのゲーム開発では、スクリプトというプログラムを書くことが必要です。でも、スクリプトをちょっと変えるたびにゲーム全体を再び作り直さないといけないことがあります。これは時間がかかるので、もっと早くできたらいいなと思います。この記事では、スクリプトをすぐにゲームに反映できるアセットを紹介します。これを使うと、スクリプトをリアルタイムに編集できて、作業がとても速くなります。
これを使うと、スクリプトを変更してもすぐにゲームに反映されるので、再び作り直す時間が節約できます。この記事では、Hot Reloadの使い方や導入方法、どんなふうに便利なのかをわかりやすく説明します。
ホットリロードとは?
ホットリロード(Hot Reload)とは、ゲームのプログラムを一部変更しても、ゲーム全体を止めたり再スタートさせたりせずに、その変更をすぐにゲームに反映させる仕組みのことです。
例えば、キャラクターの動きを変えた場合、ホットリロードを使うと、ゲームを止めなくてもその変更がすぐに見られます。
従来のコンパイルとホットリロードの違い
従来のコンパイル
- プログラムの一部を変更すると、ゲーム全体をもう一度作り直す必要があります。
- これは時間がかかり、その間ゲームを止めておかなければなりません。
- 例えば、キャラクターの動きを少し変えたら、ゲームを止めて、全体を作り直し、もう一度ゲームを始めて確認しなければなりません。
ホットリロード
- プログラムの一部を変更しても、全体を作り直す必要がありません。
- 変更がすぐにゲームに反映されるので、時間が節約できます。
- 例えば、キャラクターの動きを変えたら、そのままゲームを続けながら変更を確認できます。
ホットリロードのメリット
- 作業が早くなる
- スクリプトの変更がすぐにゲームに反映されるので、何度もゲームを止めて作り直す必要がありません。これでたくさんのアイデアをすぐに試せます。
- バグを早く直せる
- ゲームを作っているときにエラーやバグを見つけたら、すぐに修正してその場で確認できます。これでゲームをもっと良くできます。
- ストレスが減る
- 毎回ゲームを再スタートしなくていいので、作業がスムーズに進み、楽しくなります。
- 簡単に使える
- ホットリロードは使い方が簡単なので、すぐにゲーム作りに取り入れることができます。
ホットリロードを使うと、Unityでのゲーム作りがもっと速くて楽しくなります。次に、「Hot Reload」というアセットを使って、ホットリロードを実現する方法を紹介します。
アセットの導入
アセットストアにて購入後、Window > Package Managerから、アセットをインポートします。
アセットストアの使い方は詳しくはこちらをご覧ください。
インポートが完了すると、以下のウィンドウが出てくるので、Startを押すだけで完了します。
実際にスクリプトを編集する
ホットリロードをスタートしたら、ゲームを実行します。試しにキャラクターのジャンプ力を変えてみると、ゲームに反映されました!
さらに、スクリプトを編集していてエラーが出ていても、ゲームは停止することなく実行されますので、落ち着いて編集ができます。
もちろん、ゲーム実行中にStart関数を編集しても、再度Start関数は実行されません。
実行開始時のロード時間をなくすには
今回紹介したアセットは、実行中にコンパイル時間を待たずにスクリプトが編集できるようになりましたが、実行開始時のコンパイルも自動的に行わない設定にしてくれます。
それでもシーンのロードには時間がかかるため、さらに実行開始時間を無くすには、こちらの記事を参照してください。アセットと併用することで、非常に便利な環境を作ることができます!
設定できると、瞬時に実行できるようになるので試してみてください。