2.0.2底层纹理大小严重bug

从1.9升级到2.0.2,需要升级自己写的不规则平铺纹理组件,发现2.0.2获取纹理的大小全都是2048x2048,应该是底层错误。以那个HelloWorld为例,在update中调用纹理大小输出的是2048,好像刚初始化时是正确大小。

update: function (dt) {
    var cocos = this.node.getChildByName("cocos").getComponent(cc.Sprite).spriteFrame;
    var texWidth = cocos.getTexture().width, texHeight = cocos.getTexture().height;
    cc.log(texWidth, texHeight);

},

这个是因为纹理资源被整合成动态图集了,这里获取的是动态图集所生成的纹理的大小,动态图集是运行过程中,引擎对纹理进行了合并的产物,可以提高渲染效率。

请问怎么取消这个,我现在升级自己开发的地形组件,不取消这个,没办法进行gl_repeat,那些纹理坐标全是错的。

搞定了,在自己写的渲染脚本里去掉了dynamicAtlasManager,感谢。

关闭动态图集的方法。
cc.dynamicAtlasManager.enabled = false;

这个是关闭所有的,我在自己的渲染组件中删除了那句加入动态图集,问题解决了。

1赞