从移相器中的其他服务器加载图像资源

时间:2016-02-27 11:40:21

标签: javascript html5-canvas phaser-framework

我正在尝试从报表服务器加载图像,但是当我将其添加到精灵中时它没有显示出来。

preload: function () {
    game.load.baseURL = 'http://somthing.com/';
    game.load.crossOrigin = 'anonymous';
},
create: function () {
    var data = new Image();
    data.src = sessionStorage.getItem("game_icon0");
    game.load.image('newIcon','game_icon0',data);
    game.add.sprite(0, 0, 'newIcon');
},

当我尝试将其加载到游戏中时,它没有显示在那里。请帮忙

1 个答案:

答案 0 :(得分:3)

首先,虽然它可以按原样运行,但最佳实践表明您应该将资产加载移动到预加载功能中。这可以确保它们在使用之前可用。

下一个问题是远程加载图像。如果会话项目已经包含该项目的URL,我认为您应该能够直接加载它。

preload: function () {
    game.load.baseURL = 'http://somthing.com/';
    game.load.crossOrigin = 'anonymous';
    game.load.image('newIcon',sessionStorage.getItem("game_icon0"));
},

create: function () {
    game.add.sprite(0, 0, 'newIcon');
},

以某种其他方式处理来自会话的信息可能是有意义的,例如设置变量或创建对象,具体取决于您需要进行多少API调用。