Carregar um spritesheet em Pixijs não funciona

0

Pergunta

Estou tentando carregar um spritesheet em pixijs de acordo com a documentação oficial: http://pixijs.download/release/docs/PIXI.Spritesheet.html

O seguinte é o meu código:

PIXI.Loader.shared.add('sheet', require('../assets/spritesheet.json')).load(spriteSetup)

function spriteSetup() {
    let sheet = PIXI.Loader.shared.resources['sheet'].spritesheet;
    console.log(sheet)
}

Quando tento registrar o valor da 'folha', é indefinido. Então, eu tentei o registo o valor de PIXI.Carregador.compartilhada.recursos['folha'], que não está indefinido, mas sim o seguinte:

{
"_onLoadBinding": null,
"_elementTimer": 0,
"_flags": 2,
"name": "sheet",
"url": "sheet",
"extension": "sheet",
"data": "<!DOCTYPE html>\n<html lang=\"\">\n<head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta name=\"viewport\" content=\"width=device-width,initial-scale=1.0\">\n    <link rel=\"icon\" href=\"/favicon.ico\">\n    <link href=\"https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css\" rel=\"stylesheet\"\n          integrity=\"sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3\" crossorigin=\"anonymous\">\n    <title>medease</title>\n<link href=\"/js/app.js\" rel=\"preload\" as=\"script\"><link href=\"/js/chunk-vendors.js\" rel=\"preload\" as=\"script\"></head>\n<body>\n<noscript>\n    <strong>We're sorry but medease doesn't work properly without JavaScript enabled.\n        Please enable it to continue.</strong>\n</noscript>\n<div id=\"app\"></div>\n<!-- built files will be auto injected -->\n<script type=\"text/javascript\" src=\"/js/chunk-vendors.js\"></script><script type=\"text/javascript\" src=\"/js/app.js\"></script></body>\n</html>\n",
"crossOrigin": "",
"timeout": 0,
"loadType": 1,
"xhrType": "text",
"metadata": {},
"error": null,
"xhr": {},
"children": [],
"type": 6,
"progressChunk": 100,
"onStart": {},
"onProgress": {},
"onComplete": {
    "_tail": null,
    "_head": null
},
"onAfterMiddleware": {}
}

Isso é muito confuso para mim, pois parece que ele carregue o index.html arquivo em vez do arquivo json estou tentando carregar (Veja o campo de dados).

Alguém tinha um problema semelhante aqui: https://github.com/pixijs/pixijs/issues/5965 No entanto, estou a utilizar o meu código através de um servidor web e ele ainda não funciona para mim.

A impressão require('../assets/spritesheet.json') imprime o arquivo json apenas multa. Talvez isso é um pouco de uma pergunta noob, mas eu sou completamente preso. Se isso ajuda, eu estou usando vue 3 e configurar este projeto usando vue-cli, mas eu não vejo como isso seria relacionado.

ecmascript-6 pixi.js typescript vue.js
2021-11-23 20:05:23
1

Melhor resposta

0

Eu tive o mesmo problema. A solução é mover spriteSheet.json com spriteSheet.png a partir de ativos para a pasta pública.

E definir o caminho images/spriteSheet.json (público/imagens/spriteSheet.json) de acordo com a documentação oficial.

2021-12-22 13:34:35

Em outros idiomas

Esta página está em outros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................