PlayDrop のゲームアセット:同梱ファイル、所有アセット、共有パック
PlayDrop ゲームに画像、サウンド、動画、3D を含める方法:同梱ファイル、catalogue.json で宣言するゲーム所有アセット、公開アセットとパック、sdk.assets による実行時の参照。
ゲームにアートやサウンドを含める方法は3つあります。必要なことができる、いちばんシンプルな方法を選びましょう。
| 方法 | 向いている用途 | やり方 |
|---|---|---|
| 同梱ファイル | そのゲームだけが使うものすべて | パッケージに含め、相対パスで読み込む |
| ゲーム所有アセット | PlayDrop に掲載したい、再利用したい、販売したいアセット | ownedAssets で宣言する |
| 公開アセットとパック | ほかのクリエイターが公開したアセットの再利用 | uses で参照する |
同梱ファイル
ゲーム所有アセット
ゲームが所有するアセットは、そのゲームのカタログエントリーで宣言します。それぞれが専用のページを持つ PlayDrop のアセットになり、このゲームに関連付けられます。
{
"ownedAssets": [
{ "name": "moon-theme", "runtimeKey": "music.main", "displayName": "Moon theme",
"category": "AUDIO", "files": { "primary": "assets/moon-theme.mp3" } },
{ "name": "astronaut", "runtimeKey": "sprites.player", "displayName": "Astronaut",
"category": "SPRITESHEET", "files": { "atlas": "assets/astronaut.png", "manifest": "assets/astronaut.json" } }
]
}categoryはIMAGE、VIDEO、AUDIO、SPRITESHEET、MODEL_3D、CUSTOMのいずれかです。subcategoryとformatでさらに細かく指定します。filesはロールとパスを対応付けます。オーディオにはprimary、スプライトシートにはatlasとmanifestが必要です。runtimeKeyは、ゲームが実行時にアセットを見つけるための名前です。- 任意:
visibility、license、tags、販売する場合はshopListedとshopPriceCredits。
公開アセットとパック
公開済みのアセットは正確なリビジョンで、パックはバージョンで参照します。
{
"uses": {
"assets": [{ "ref": "asset:someone/forest-tiles@r3", "runtimeKey": "tiles.forest" }],
"packs": ["pack:someone/ui-kit@1.2.0"]
}
}PlayDrop のアセット、または sdk.assets.catalog.listPublic()、sdk.assets.packs.listPublic()、sdk.search.query() で探せます。公開ゲームが使えるのは公開アセットと公開パックだけです。各アセットのライセンスを守ってください。
実行時にアセットを見つける
const music = sdk.assets.resolveAppAsset("music.main");
const file = music.files.find((entry) => entry.role === "primary");
audioElement.src = file.url;
for (const asset of sdk.assets.listAppAssets()) console.log(asset.runtimeKey, asset.sourceType);各結果には assetRef、runtimeKey、sourceType(OWNED、DIRECT、PACK)と、role、url、contentType、sizeBytes を持つ files が含まれます。
コネクタが受け付けるもの
AI アプリからは、画像、動画、オーディオ、スプライトシート、ベイク済みの 3D モデルをアップロードできます。ベイク済みのプロシージャル画像やスプライトシートも含まれます。実行可能な 3D モデル(procedural サブカテゴリーまたは CUSTOM 形式の MODEL_3D)は PlayDrop 独自のツールでは動きますが、API が検証のためにクリエイターのコードを実行しないため、コネクタでは拒否されます。GLB などの標準形式にベイクするか、PlayDrop ですでに公開されているバージョンを参照してください。
新しいアートやサウンドは AI アセット生成で作れます。PlayDrop が扱っていない形式については、独自アセット形式をご覧ください。