在相位器 3 中重新启动场景时读取未定义'cut'时出错



我正在phaser 3中使用街机物理和画布图形开发一款平台游戏风格的游戏。在我的代码中,我希望完全重新启动当前场景,并且我使用this.scene.restart来执行此操作。每当我尝试这样做时,它都会给我一个错误";无法读取null的属性(读取"cut"("。当使用WebGl图形时,它给了我另一个错误";无法读取null的属性(读取"glTexture"("。如果您能帮助我们了解这意味着什么或如何解决它,我们将不胜感激。第59494行为WebGl,第26816行为Canvas。

如果您想"负载";在场景配置的preload函数之前,您只需将pack属性添加到Scene-config中,然后就可以在preload函数中使用图像。如下面的演示所示。

这是文档链接

在任何情况下,我建议,如果您使用此功能,在场景加载/执行preload功能之前,不要加载太多文件

document.body.style = 'margin:0;';
var config = {
type: Phaser.CANVAS,
width: 536,
height: 183,
scene: {
preload,
pack: {
files: [
{ type: 'image', key: 'logo', url: 'https://labs.phaser.io/assets/sprites/phaser1.png' }
]
}
},
banner: false
}; 
function preload(){
this.add.image(200, 90, 'logo').setOrigin(.5);
}
new Phaser.Game(config);
<script src="https://cdn.jsdelivr.net/npm/phaser@3.55.2/dist/phaser.js"></script>

相关内容

  • 没有找到相关文章

最新更新