Overview
テクスチャーはグローバルなTexture Managerで管理されます。Texture Managerはシングルトンのクラスで、読み込みやゲームオブジェクトのフレームで使えるようにする管理をします。
Texture Managerのインスタンスは一つだけ生成されて、Phaserのゲームと結び付けられます。
Loaderは、Texture Managerにイメージを渡す役目で、渡されたイメージはそれ自身のローカルなキャッシュに蓄えられます。テクスチャーはkeyとなる文字列を使って指定できます。
Texture Managerはいくつもの異なるパースを持ちます。これらはCanvasやImage, JSON配列内のTextureアトラス、JSONのハッシュフォーマット, Pyxelファイル、Starling XMLアトラスファイル、そしてスプライトシートなど、異なるフォーマットに対応するための処理に使われます。
全てのゲームオブジェクトとレンダラーは、必要なテクスチャーデータをTexture Managerから取得することができます。
Examples
Texture Managerは一般的にGame Objectによって自動的に利用されます。キー文字列を使ってリクエストされます。
this.textures.get('mario');
上記は、mario
というキーが存在したら、それのPhaser.Textureオブジェクトのインスタンスを返します。もしキーがなければデフォルトの’missing’を表すイメージを返します。
Texture Managerは、Canvasオブジェクトを生成すると行った多くのユーティリティー関数を持ちます(これは、Phaser内部のCanvas Poolで利用されます)。
var canvas = this.textures.createCanvas('fill', 256, 256);
上記は、256×256ピクセルのキャンバスを返して、fill
というキー文字列で参照できます。