我正在尝试从报表服务器加载图像,但是当我将其添加到精灵中时它没有显示出来。
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');
},
当我尝试将其加载到游戏中时,它没有显示在那里。请帮忙
答案 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调用。