サーバーからダウンロード
投稿日:2017年2月28日 | 最終更新日:2024年5月27日
スマートフォンのアプリを作る場合は、アプリサイズを決められたサイズ以下に抑えないとWifiでのダウンロードが必須になったり、ファイル分割の設定が必要になったりします。
こういったときのために、宴にはサーバーから必要なファイルをダウンロードする機能があります。
また、サーバーからファイルをダウンロード する形にしておくと、アプリの更新をせずにゲームの内容を更新できるという利点もあります。
スマートフォンアプリで、会話シーンに「宴」を使っているケースではより役に立つと思います。
ただし、ファイルサーバーは各自で用意する必要があるので、その点は注意してください。
以下に、作成手順をまとめます。
アセットバンドルを作成
Tools > Utage > ResourceConverter からリソースコンバーターを開きます。
ResourceConverterの設定は、このようにします。
Resouces Directoryに「プロジェクト名/Reources/プロジェクト名」のフォルダをドラッグ&ドロップで設定。
ProjectSettingsに、今のシナリオのプロジェクト設定ファイルを。
OutPut Pathに、アセットバンドルを出力する任意のディレクトリを指定します。
(ここに出力したファイルをあとでサーバーに移動させます)
Convertボタンを押すと、設定した出力先のディレクトリ以下に、プラットフォーム名のフォルダが作られ、それぞれのフォルダ以下にアセットバンドルが作成されます。
サーバーにファイルを置く
出力されたアセットバンドルをフォルダごとサーバーに置きます。
ロードの設定
AdvEngineStarterの設定で
Storage Typeを「Sever」に、
ServerUrl に、フォルダを置いたサーバーのURLを記述します。
ServerUrlのURLは、WindowsやAndoridなどのプラットフォーム名のフォルダ名ではなく、その一つ上のフォルダのURLです。
実機での確認
実機で確認するには、対象プラットフォームのアセットバンドルを作成する必要があります。
「Budild Mode」をAllPlatFormにして、実機のプラットフォームもビルド対象にします。
「Budild Target Flags」で対象プラットフォームを設定します。
Convertをすると、設定したすべてのプラットフォームに対してのアセットバンドルの作成が始まります。
ただし、プラットフォームの切り替え時にかなり長時間かかってしまいますので、ご注意ください。
ビルド時の注意
アセットバンドルのもとになったアセットがResources以下にあるとアプリに含まれてしまうので、
Resourcesフォルダをリネームするなどして、アセットバンドル以外はアプリに含まれないようにしましょう。
章ごとにダウンロードする場合
初回のDL負荷を減らしたり未実装の追加データに対応するために、章に分けたDLデータを作ることも可能です。
章データの設定方法はこちら
章ごとに分けてDLする場合は、アセットバンドル作成時にリソースコンバーターの設定で
「Separate Chapter」にチェックを入れてください
また、AdvEngineStarterの設定で
「Use Chapter」にチェックを入れてください。
「Chapter Names」は起動時にロードする章データの名前です。
起動時には章データをロードせずに、任意のタイミング(つまり手動で)ロードする場合は設定が0のままでもかまいません。
また、起動時にはシステムセーブデータのオートセーブ機能をオフにして、DLが終わってからプログラムからオンにするようにしてください。
(これをしないと、パラメーターシート等が未DLの不完全な状態でシステムセーブデータを上書きしてしまい、システム系のパラメーターを消してしまうおそれがあります)
宴Version3.4.4からこの処理をしていない場合は、エラメッセージを出すようにしました。
実際の使い方は、Utage/SampleOthers/SampleChpaterシーンを確認してください。
SampleChpaterシーンで使っているソースコードは、Utage/Sample/Scripts/SampleChapterTitle.csです。
章データをDLするコードが載っていますので参考にしてください。
その他
その他、詳細については、各項目のドキュメントを確認してください。
ビルド、ファイル管理、DL対応について
リソースコンバーター
AdvEngineStarter