getTexture() API文档里写返回Texture2D类型的纹理实例,但是我获取到的是RenderTexture类型的对象。
而且我是200200的图片,但是上述对象的宽高却都是20482048,readPixels得到的数组值也全是0
引擎版本:2.0.5
浏览器: chrome 70.0.3538.77(正式版本)(32 位)
环境: 引擎预览(浏览器)
求大神解惑!不胜感谢
getTexture() API文档里写返回Texture2D类型的纹理实例,但是我获取到的是RenderTexture类型的对象。
而且我是200200的图片,但是上述对象的宽高却都是20482048,readPixels得到的数组值也全是0
引擎版本:2.0.5
浏览器: chrome 70.0.3538.77(正式版本)(32 位)
环境: 引擎预览(浏览器)
求大神解惑!不胜感谢
我猜测是,你的图片如果放到图集里,它返回的就是整张图集的png信息
没有放在图集中,是独立的一张图片。
测试了一下,如果是图片直接拉到层级编辑器中生成的精灵,调用spriteFrame.getTexture()的到的宽高就是20482048
但是用new cc.SpriteFrame(tex2d)生成的spriteFrame对象,调用getTexture()得到的就是原图片200200
2.0以后有动态图集的功能,会在自动创建RenderTexture,然后把渲染顺序相近的Texture贴上去的
最后怎么解决的啊?我也发现了这个问题。
cc.dynamicAtlasManager.enabled = false; 可以临时解决