ファイルパッケージングとは、Altseed2で使用するファイルを一つのファイルにまとめる機能を指します。 この機能を使用することで、Altseed2で使用するリソースデータを、ユーザから簡単に見られないようにすることができます。
Altseed2.Tools (.NETツール)を利用して、CLIコマンドまたはGUIを用いてパッケージを作成することができます。
Altseed2を用いてソースコード上から生成する方法を説明します。
パッケージの作成は、Engine.File.Packメソッドで、パッケージ化するディレクトリとパッケージのパスを指定することでできます。 また、Engine.File.PackWithPasswordメソッドによって、パスワード付きでパッケージ化することが可能です。 パスワード付きのパッケージにすることで、パッケージ化されたリソースデータをユーザから抽出されるのを防ぐことができます。
Engine.File.AddRootPackageメソッドでパッケージをルートに指定することが可能で、パッケージ内からファイルを読み込みます。 そして、ルートディレクトリやパッケージは複数指定できます。 ファイルを読み込む時に複数のファイルが見つかった時、後から追加されたルートディレクトリやパッケージから読み込みます。 絶対パスを指定した場合、ルートの指定関係なく絶対パスで指定された先を読み込みます。 パスワード付きのパッケージをルートに指定する場合、Engine.File.AddRootPackageWithPasswordメソッドを使用してください。
Tip
複数のパッケージを読み込んだ時の優先順位を利用することでアップデートパッチを容易に実装できます。 例えば、製品の最初でパッケージXに格納されているファイルAがあるとします。ファイルAに不具合が存在することが発覚し、ファイルAを差し替えることになりました。 このとき、更新した新しいファイルAをパッケージYに格納します。そして、プログラム側ではパッケージX, パッケージYの順に追加するようにしておきます。 すると同じ名前のファイルAを読み込むときにパッケージXからでなく、後から追加したパッケージYから読み込むようになります。 このように更新したファイルのみを別のパッケージにまとめることで、 実際に読み込む際のファイルのパス指定を変更することなく容易にファイルの更新を行えます。
Note
Altseed2のパッケージング機能の内部実装は、Zip圧縮になっています。 したがって、任意のZipファイルをパッケージとして読み込むことができます。
[!code-csharpMain]
[!code-csharpMain]
[!code-csharpMain]