在 Unity 中来自 spritesheet 的动画异相
Posted
技术标签:
【中文标题】在 Unity 中来自 spritesheet 的动画异相【英文标题】:Animation from spritesheet out of phase in Unity 【发布时间】:2017-09-22 23:58:04 【问题描述】:我正在使用 Unity 的精灵编辑器将精灵表加载为动画。我不知道为什么精灵最终会出现异相,导致动画期间出现抖动效果。
这是其中一个精灵表
Idle animation spritesheet
这是统一加载的样子
Idle animation in Unity
我已经尝试过这个网站中的 spritesheet 是否正确:http://is.si/animator/,它是(配置为每帧 432 x 407,25 帧和帧时间 1)。
我在一个空白项目中试了一下,也有同样的问题
注意:Unity 的精灵编辑器中的配置是 5 列、5 行(按单元格计数)或 432x407(按单元格大小)。枢轴无关紧要,使用任何枢轴位置都会出现相同的错误。
感谢您的宝贵时间
【问题讨论】:
【参考方案1】:我发现了问题所在。 spritesheet 大于 2048(宽度),默认情况下 Unity 将所有纹理压缩为 2048。因此压缩后的图像不再能被 5 整除。 我通过将压缩设置为 4096 来解决它(大小无关紧要,因为使用 sprite packer 时所有的空白都被消除了)。
【讨论】:
以上是关于在 Unity 中来自 spritesheet 的动画异相的主要内容,如果未能解决你的问题,请参考以下文章
使用 Unity EditorWindow 从 Spritesheet 创建动画?
unity3d 从 web 和内存问题加载 spritesheet
来自 TexturePacker 的 EaselJS Spritesheets