C# 从代码设置动画参数时发出警告?
我在Youtube上观看了一段学习团结的视频, 我犯了一个奇怪的错误,我不明白C# 从代码设置动画参数时发出警告?,c#,unity3d,C#,Unity3d,我在Youtube上观看了一段学习团结的视频, 我犯了一个奇怪的错误,我不明白 公共类玩家:单行为 { [序列化字段] 专用浮动跳线移动=11f; [序列化字段] 私人浮动运动=10f; 私人浮动移动X; [序列化字段] 私人刚体2d mybody; 私人动画师; [序列化字段] 私有字符串Walk_Ani=“玩家正在行走”; 私人喷泉老大; 私人无效警报1() { mybody=GetComponent(); anim=GetComponent。我准确地跟踪了视频,甚至尝试使用视频的源代码。这
公共类玩家:单行为
{
[序列化字段]
专用浮动跳线移动=11f;
[序列化字段]
私人浮动运动=10f;
私人浮动移动X;
[序列化字段]
私人刚体2d mybody;
私人动画师;
[序列化字段]
私有字符串Walk_Ani=“玩家正在行走”;
私人喷泉老大;
私人无效警报1()
{
mybody=GetComponent();
anim=GetComponent。我准确地跟踪了视频,甚至尝试使用视频的源代码。这不是错误,而是错误。Unity告诉您,在脚本所在的对象上,指定给动画师的动画不存在名为Player is walking
的动画参数
与此代码一起,您需要创建一个名为“玩家正在行走”的特定文件。如果您已经有了此文件,并且遵循了您提到的本教程,则很可能是输入错误,并且您需要删除额外的尾随空间,因为您当前有玩家正在行走
,则可能需要删除此文件玩家正在行走
编辑:此外,如本问题的评论中所述,您很可能希望将函数Awake1
更改为Awake
,而不从更新调用它
private void Awake()
{
mybody = GetComponent<Rigidbody2D>();
anim = GetComponent<Animator>();
sr = GetComponent<SpriteRenderer>();
}
// Update is called once per frame
private void Update()
{
Playerkeymove();
animateplayer1();
}
private void Awake()
{
mybody=GetComponent();
anim=GetComponent是所有MonoBehavior使用的一种特殊方法,通常用于初始化引用。在每一帧调用它是非常浪费的,因为当这些对象不改变时,您会不断地重新分配这些对象的引用。这是第66行?Unity有一个唤醒函数,它会自动调用一次ave与Awake1并在每一帧调用它是非常浪费的。GetComponent并不便宜。@CaiusJard行号66应该是文件的结尾。抛出的警告是Unity本身发出的内部警告,因此行号在这里没有太大帮助。感谢有关awake的信息,但是当主题为m时,我的动画是如何工作的我相信它会有动画效果(就像走路一样)如果它空闲,它将是标准的,但现在发生了,主题正在移动,但动画没有发生,如果你能看一下这段视频,我会很高兴的,时间戳是3:54:20@SaranRajS您链接的教程没有命名函数Awake1
,它甚至在ti发布后不到一分钟就讨论了您的实际问题已链接的mestamp。它指定参数区分大小写。