启用动画器时,运行时缺少游戏对象精灵

Posted

技术标签:

【中文标题】启用动画器时,运行时缺少游戏对象精灵【英文标题】:Gameobject sprite missing at runtime when animator is enabled 【发布时间】:2020-03-16 20:45:43 【问题描述】:

我发现我的一个 2d 平台游戏对象存在问题,该游戏对象附加了一个动画组件。

平台精灵在运行时丢失,这是由动画师本身直接引起的,以前这不是问题。当我禁用动画师并运行游戏时,精灵不会“丢失”,但一旦我启用它,它就会再次丢失。

这可能是因为我以统一的2019b 启动项目并切换到2018.4.12,因为我遇到了奇怪的 CURL 错误,导致我无法为 android 构建。除了精灵在运行时丢失并且项目没有任何改变的事实之外,受影响的预制件(平台)的功能应该如此。代码像没有问题时一样完美运行。

我刚刚安装了 unity 2019.2.13,希望这能解决它,但没有任何改变。尝试重新导入资产,但没有。这不是碰撞问题。 'z' 轴在运行时不会被修改。它绝对不是代码问题,因为如前所述,功能不受影响,只是精灵丢失了。我现在没有想法,并且用尽了在线资源。任何人都可以以任何方式提供帮助。提前致谢。

【问题讨论】:

在 Animator 中,某个 AnimationClip 中的某处似乎有一个关键帧会更改此属性。只要在某处有一个小关键帧,Animator 就会将此属性“锁定”为默认值,除非它在关键帧中被更改.. 只要启用了 Animator,您甚至无法通过脚本更改它.. 遍历您的所有动画并检查您是否在某个地方有此精灵的关键帧!也许它指的是一个不再存在的精灵,或者默认状态是一个不再存在的精灵 【参考方案1】:

简单的修复。我刚刚创建了一个新的预制件并重新创建了动画......很烦人,但它有效

【讨论】:

以上是关于启用动画器时,运行时缺少游戏对象精灵的主要内容,如果未能解决你的问题,请参考以下文章

创建智能和快速的精灵表

RuPengGame游戏引擎 精灵 createSprite 创建 setSpritePosition 设置位置 playSpriteAnimate 播放动画 setSpriteFlipX设置翻转 精

Unity2D像素游戏开发——Aseprite简单人物绘画+动画制作导出精灵表示例

cocos2dx-深度解析plist文件(游戏对象的数据如何从plist创建获取)

Canvas 入门7 简单精灵创建

在 Unity 中为动画精灵添加帽子或皮肤