在 Unity 中导入 plist 动画或提取帧
Posted
技术标签:
【中文标题】在 Unity 中导入 plist 动画或提取帧【英文标题】:Import plist animation in Unity or extract frames 【发布时间】:2017-04-27 02:49:37 【问题描述】:我在 Google 上进行了很多搜索,但没有找到我需要的答案。 我为 ios 创建了很多动画文件,它们带有精灵表和相关的 plist 文件。 我需要在 Unity 中导入这些动画的帧,但我不知道该怎么做,因为与 plist 没有直接兼容性,而且我还没有找到从精灵表中提取正确帧的软件。有谁知道我该怎么做?
【问题讨论】:
.plist 文件只是 XML。最坏的情况,你可以自己解析它们。 感谢您的回复。我知道 plist 是 XML 但我不搜索最坏的情况;-) 我希望其他人刚刚遇到这个问题并解决它;-) 【参考方案1】:使用System.XML.XMLDocument
(与TextAsset.text
)解析.plist
,使用TextureImporter.spritesheet
与SpriteMetaData
读取/写入spritesheet数据。
我在生产中使用 XMLDocument(速度很快)来读取 SVG 文件。对于 TextureImporter,here 你可以看到我直接用它微调 spritesheets 的示例。
【讨论】:
感谢 Geri 的回复。我不想直接从 plist 使用这些动画,我想将它们导入 Unity,然后,我想在 Unity 中重新创建这些所有动画。如果我理解得很好,您建议我直接在 Unity 中运行这些动画,但这不是我的目标 ;-) @LucaPanteghini 我用它来重命名项目中的切片。同样,您可以编写一个编辑器脚本来导入动画数据。 @LucaPanteghini 恐怕你找不到“将我的精灵表信息从 plist 导入 Unity”工具。 不,现在我正在等待一点,但我正在考虑编写一个脚本,从 spritesheet 中提取单个精灵,然后在 Unity 中重新创建所有动画。我正在处理的 plist 和 spritesheet 有点复杂,因为它们使用偏移和旋转。 这次我不能继续工作,因为我必须完成另一个紧急项目,但我尽快回到这个问题并尝试实施我的解决方案。谢谢大家!以上是关于在 Unity 中导入 plist 动画或提取帧的主要内容,如果未能解决你的问题,请参考以下文章