cocos2dx 边缘1像素的图片/帧动画,用Texturepacker打包后,移动动作抖动

前言:新项目里有很多边缘是1个像素的图片(头像边框,listView边框,等)。这些图片在用Texturepacker打包成pvr.ccz后,运用在游戏场景中,比如:listView中,滑动view的时候,图片的边缘总是有1-2个像素的消失和抖动。

解决思路:
1,从引擎方面着手,找寻TextureCache加载流程代码未发现异常。到cocoChina寻找cocos引擎组帮助,得到的解答是修改shader的精度。(此修改改后,图片仍然抖动,问题仍然未解决)。附上解答贴地址(http://forum.cocos.com/t/topic/40483/49),如下:
这里写图片描述

2,从lua代码找方向。今天试了下用原生的不经过TP打包的图片,进行图片创建,发现图片在listView中并不会发生特别大的抖动。所以开始从TP方面下手寻找解决方法(最终问题得到解决)

解决方法:
1,在TP打包的时候要选择NPOT模式,将图集打包成2次幂大小:
这里写图片描述

2,在TP打包的时候,调整图片打包后的外边缘大小,和内边缘大小,防止像素被吞:
这里写图片描述

3,一个图集pvr.ccz中,不可以打包太多图片。太多图片会导致图集加载到内存中,压力过大,移动起来图片会发生抖动
4,一个图集pvr.ccz中,不能有1个像素点大小的图片,如(1x4大小的图片),否则也会闪
5,在满足了以上几点之后。问题算是解决了。但是原生引擎的1像素抖动,还是会存在。这个貌似是一直都存在的问题?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值