Assets no PlayDrop: arquivos incluídos, assets do jogo e packs
Imagens, som, vídeo e 3D no seu jogo: arquivos no pacote, assets do jogo no catalogue.json, assets e packs públicos e consulta em execução com sdk.assets.
Um jogo pode levar sua arte e seu som de três formas. Escolha a mais simples que faça o que você precisa.
| Forma | Bom para | Como |
|---|---|---|
| Arquivos incluídos | Tudo o que só o jogo usa | Inclua-os no pacote e carregue-os por caminho relativo |
| Assets do jogo | Assets que você quer listar no PlayDrop, reutilizar ou vender | Declare-os em ownedAssets |
| Assets e packs públicos | Reutilizar assets que outros criadores publicaram | Faça referência a eles em uses |
Arquivos incluídos
Coloque os arquivos ao lado do jogo e carregue-os com caminhos relativos, como assets/music.mp3. Eles são enviados com o pacote e ficam em cache no navegador e nos apps. Liste os necessários para iniciar em prefetch.required, para que os apps possam baixá-los antes (ciclo de vida). Um jogo em HTML simples precisa incorporar seus assets no próprio arquivo.
Assets do jogo
Declare os assets do jogo na entrada dele no catálogo. Cada um vira um asset do PlayDrop com sua própria página, vinculado a este jogo:
{
"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_3DouCUSTOM;subcategoryeformata refinam.filesassocia papéis a caminhos. Áudio precisa deprimary; spritesheets precisam deatlasemanifest.runtimeKeyé o nome que o jogo usa para encontrá-lo durante a execução.- Opcionais:
visibility,license,tagseshopListedcomshopPriceCreditspara vendê-lo.
Assets e packs públicos
Faça referência a assets publicados pela revisão exata e a packs pela versão:
{
"uses": {
"assets": [{ "ref": "asset:someone/forest-tiles@r3", "runtimeKey": "tiles.forest" }],
"packs": ["pack:someone/ui-kit@1.2.0"]
}
}Explore-os em assets do PlayDrop ou com sdk.assets.catalog.listPublic(), sdk.assets.packs.listPublic() e sdk.search.query(). Um jogo público só pode usar assets e packs públicos; respeite a licença de cada asset.
Encontre assets durante a execução
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);Cada resultado tem assetRef, runtimeKey, sourceType (OWNED, DIRECT ou PACK) e files com role, url, contentType e sizeBytes.
O que o conector aceita
Seu app de IA pode enviar imagens, vídeo, áudio, spritesheets e modelos 3D convertidos em arquivos fixos (bake), incluindo imagens e spritesheets procedurais já convertidas. Modelos 3D executáveis (MODEL_3D com a subcategoria procedural ou o formato CUSTOM) rodam nas ferramentas do próprio PlayDrop, mas são recusados pelo conector, porque a API não executa código do criador para validá-los. Converta-os em um formato padrão, como GLB, ou faça referência a uma versão já publicada no PlayDrop.
Crie arte e som novos com a geração de assets com IA. Para formatos que o PlayDrop não conhece, veja formatos de asset personalizados.