排查plist中offset字段导致的抖动问题
💡
原文中文,约2800字,阅读约需7分钟。
📝
内容提要
最近遇到一个bug,plist制造的动画在creator中会颤动。排查发现是plist里的offset导致的。offset是trim通明像素前后,中心点的偏移。问题关键在于trimWidth-originWidth的结果是否能被2整除。使用TexturePacker来打包plist可以避免这个问题。测试例验证了creator能够正常处理offset为小数的情况。
🎯
关键要点
- 遇到bug,plist制造的动画在creator中颤动,原因是plist里的offset导致的。
- offset是trim透明像素前后的中心点偏移,关键在于trimWidth-originWidth的结果是否能被2整除。
- 使用TexturePacker打包plist可以避免offset导致的问题。
- 测试例显示,offset计算中小数部分会被丢弃,导致bug出现。
- 不同软件打包plist时,宽度可能出现偏差,根本原因是TrimDiff无法被2整除。
- 建议尽量使用TexturePacker打包plist,以减少问题发生。
- TexturePacker可能会自动调整尺寸以处理小数offset,确保解析功能正常。
- Cocos Creator能够正常处理offset为小数的情况,验证了结论的正确性。
🏷️
标签
➡️