cocos creator 2.0.10里面 使用Uint8Array去填充出Texture2D的像素数据
在部分手机上正常显示出图片,有些手机上图像不显示
cocos代码:
var imgWidth = 200; var imgHeight = 200; var count = imgWidth * imgHeight * 4; var imgData = new Uint8Array(count); for ( var j = 0; j < count; j += 4) { imgData[j] = Util.randomNum(0, 255); imgData[j + 1] = Util.randomNum(0, 255); imgData[j + 2] = Util.randomNum(0, 255); imgData[j + 3] = 255; } var myTexture2D = new cc.Texture2D(); myTexture2D.initWithData(imgData, cc.Texture2D.PixelFormat.RGBA8888, imgWidth, imgHeight); var node = new cc.Node( '测试图片' ); node.width = imgWidth; node.height = imgHeight; node.parent = Main.node; var sprite = node.addComponent(cc.Sprite); sprite.spriteFrame = new cc.SpriteFrame(); sprite.spriteFrame.setTexture(myTexture2D); |
麻烦给一个能重现的小程序片段?
texture2d的initWithData绘制的图片,android手机可以正常显示图片,但ios手机图片区域都是黑色,马上要2022年了
没有修复吗,我也遇到。
@王召伟 代码片段在上面,是cocos creator里面的JS代码,可以随便测试下,iOS上很多手机都显示不出图片