游戏里需要显示微信的头像,请问如何操作
cc.loader.load('url', function(err, texture){
if(err){
return;
}
var spf = new cc.SpreiteFrame(texture);
sprite.spriteFrame = spf;
})
你试试看
如果是web的话,直接获取会存在跨域问题,webgl目前无法渲染跨域的图片。只能服务器端去拉取头像然后转换成base64发给客户端渲染
不太行,有其他方式吗?
应该是可以的,我在别的框架里直接显示过
cc.loader.load({ url: ‘http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0’, type:‘jpg’ }, function (err, texture) {
if (err) {
cc.log(err);
return;
}
var spf = new cc.SpriteFrame(texture);
});
用这个可以,我试了把jpg改为png,也能正常下载显示,也许type只是用于下载,不用于加载。
我使用egret时,他们webgl是可以显示跨域图片的,应该是有办法处理的
类型是什么无所谓,但必须加
cc.loader.load(cc.vv.userMgr.headimg + '.png', function (err, texture) {
if (err) {
cc.log(err);
return;
}
self.headImg.spriteFrame = new cc.SpriteFrame(texture);
});
你用的这个地址http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0,这是一个特例,因为这个图片服务器返回的response headers设置了Access-Control-Allow-Origin:*,如果没有这一点,从不是自己域名加载的图片都是无法被webgl显示的
那加载不是自己域名的图片 该如何操作!???
我这里只有模拟器可以显示远程图片,但是 web 浏览器无法显示,手机浏览器也无法显示,求助!!!
var url = ‘http://122.233.157.87:8090/appUpload/gjsg/reviews/1501014731_1505380252.jpg’;
cc.loader.load({url:url,type:“jpg”}, function(err, texture){
if (err) {
cc.log(err);
}
var sp = new cc.SpriteFrame(texture);
self.picLoader.spriteFrame = sp;
});
class TextureForWebGLByURLToImg {
private static headBase64Cache: Object = {};
public static getTextureForWebGLByURLToImg(url: string, img: eui.Image) {
if(TextureForWebGLByURLToImg.headBase64Cache[url]){
img.source = TextureForWebGLByURLToImg.headBase64Cache[url];
return;
}
window["fetch"](url).then(response => response.blob()).then(blob => {
const reader = new FileReader()
reader.onloadend = async () => {
egret.BitmapData.create('base64', reader.result.split(",")[1], (bmp_data) => {
let tex = new egret.Texture();
tex.bitmapData = bmp_data;
if(img && img.visible) img.source = tex;
TextureForWebGLByURLToImg.headBase64Cache[url] = tex;
})
};
reader.readAsDataURL(blob)
});
}
}
参考egret的