动态加载图像。 Phaser.js

Dynamically load image. Phaser.js

Phaser提供了3个功能:预加载、创建、更新。 create函数如果一开始就全部渲染,那动态加载时怎么强制画图呢?

function preload(src = `images/Num_spin/Num_Spin_00359.png.webp`) {
  this.load.image('background', 'images/table_en.png.webp');
  this.load.image('wheel', 'images/UpperWheel.png.webp');
  this.load.image('roulette', src);
}

function create() {
  this.add.image(0, -160, 'background').setOrigin(0, 0).setScale(0.7);
  this.add.image(20, 30, 'wheel').setOrigin(0, 0).setScale(0.7);
  this.add.image(108, 110, 'roulette').setOrigin(0, 0).setScale(0.7)
}

function update() {
  //Here I call a function that changes url
}

create 不会 运行 直到 preload 函数被调用并且 Loader 完成。如果要在加载图像时显示图像,则需要在 preload 之外加载它们,或者使用各种加载程序事件在每次加载文件时得到通知。

这里有很多示例展示了每种方法:http://labs.phaser.io/index.html?dir=loader/loader%20events/&q=