ゲームにアセットを追加するには、指定ディレクトリにファイルを追加後 akashic scan asset
コマンドを実行します。
akashic scan asset
ゲームからアセットを削除する場合はこちらを参照してください。
次のコンテンツは、画像を表示します。
アセットを追加するには、指定ディレクトリに配置し、akashic scan asset
コマンドを実行します。
akashic scan asset
コマンドを実行すると、上記のディレクトリ内に新しいファイルが見つかった場合は game.json
に登録し、ディレクトリからファイルが削除された場合は game.json
から登録を解除します。
追加するファイルの種類により配置するディレクトリが下記のように決まっています。
名前 | 役割 |
---|---|
script |
JavaScriptのコードを配置する |
image |
PNG形式またはJPEG形式の画像を配置する |
audio |
OGG形式とM4A形式(あるいはAAC形式)のオーディオファイルを配置する |
text |
その他のデータ(テキスト形式)を配置する |
assets |
上記 4 種類全てのアセットを配置できる (柔軟ですが他と扱いが違うため、詳細は複数アセットをまとめて扱うを参照してください。) |
画像ファイルの player.png
を image
ディレクトリに置いて akashic scan asset
コマンドを実行すると、画面に以下のように表示されます。
INFO: Added (or updated) the declaration for player (image/player.png)
INFO: Done!
game.json
には以下の項目が assets
プロパティに追加されます。
"player": {
"type": "image",
"width": 63,
"height": 53,
"path": "image/player.png"
}
game.json
に登録されたアセット ID を利用し、シーン内でアセットを利用することができます。
アセット ID は game.json
に登録されている名前です。 これはアセットを akashic scan
で登録した場合は、ファイル名から拡張子をのぞいた文字列になっています。
function main() {
var scene = new g.Scene({
game: g.game,
assetIds: ["player"] // シーン内で利用するアセットID
});
scene.onLoad.add(function() {
var sprite = new g.Sprite({
scene: scene,
src: scene.asset.getImageById("player")
});
scene.append(sprite);
});
g.game.pushScene(scene);
}