龙骨使用自定义SpriteFrame尺寸不一致导致的bug

问题表现

后续反馈一个问题,局部换肤后,图片非常大

问题排查

对比了前后的ske.json,龙骨工程调整了龙骨的长度

为了减小龙骨的整体体积,制作人员使用了更小的图片,这也是为了龙骨整体看起来变小的原因。

龙骨的纹理和tex.json也发生了变化,比如下图中

yu10.png这个纹理在换肤的plist龙骨的tex.json中的width/height是一致的,龙骨调整后,两者就不一致了。

并且我发现换肤的局部纹理,比龙骨的纹理,到这里基本就确认了就是换肤的散图纹理尺寸不一致导致的这个bug。

如何修复

既然换肤纹理时等比例放大了,那么我只需要知道龙骨在运行时显示的width/height即可

对比发现,在龙骨的导出数据中记录的有这个width/height信息,尝试者修改:

最终修改

修改后就正常了

总结

这个问题虽然修复了,但是也暴露制作过程中的不规范,换肤就应该尺寸一致

相关推荐
时物留影1 分钟前
不写代码也能开发 API?试试这个组合!
前端·ai编程
试图感化富婆3 分钟前
【uni-app】市面上的模板一堆?打开源码一看乱的一匹?教你如何定制适合自己的模板
前端
卖报的小行家_3 分钟前
Vue3源码,响应式原理-数组
前端
牛马喜喜3 分钟前
如何从零实现一个todo list (2)
前端
小old弟8 分钟前
jQuery写油猴脚本报错eslint:no-undef - '$' is not defined
前端
Paramita8 分钟前
实战:使用Ollama + Node搭建本地AI问答应用
前端
一天睡25小时9 分钟前
前端の骚操作代码合集 (二)| 让你的网页变得有趣
前端·javascript
王林不想说话11 分钟前
Zustand状态管理库
前端·javascript
清风ai明月12 分钟前
vue模板语法中使用冒号: 什么时候使用,什么时候不使用呢?
前端·javascript·vue.js
少卿13 分钟前
uniapp run使用指南 - VSCode 开发 Uni-app 项目
前端·vue.js