You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity2D Animator报错:已定义的horizontal参数不存在求助

问题描述

我在Animator中设置了两个参数,分别为“horizontal”和“vertical”(参数设置截图:Animator参数界面)。其中“vertical”参数运行完全符合预期,但“horizontal”参数使用相同代码却无法正常工作。

我的代码片段(无需反馈代码效率问题):

void Update()
{
    x = Input.GetAxisRaw("Horizontal");
    y = Input.GetAxisRaw("Vertical");
    animcon.SetInteger("horizontal", Mathf.RoundToInt(x));
    animcon.SetInteger("vertical", Mathf.RoundToInt(y));
}

报错内容:

Parameter 'horizontal' does not exist.
UnityEngine.Animator:SetInteger (string,int)

我确认没有拼写错误,但同类问题的解决方案多围绕拼写问题展开,特此求助。

排查方案
  • 确认animcon变量已正确赋值给目标GameObject的Animator组件,且该Animator绑定的是你添加了horizontal参数的Animator Controller,避免组件未赋值或Controller绑定错误。
  • 严格检查参数名的大小写一致性:Unity Animator参数名区分大小写,仔细对比截图中的参数名与代码里的字符串,确保完全匹配(包括首字母大小写、空格或特殊字符)。
  • 刷新Animator资源:右键点击Animator Controller文件选择Reimport重新导入,或重启Unity项目,解决可能存在的资源缓存问题。
  • 核对参数类型:确认Animator中horizontal参数的类型是Integer,与代码中SetInteger的调用类型一致,类型不匹配也会触发“参数不存在”的报错。
  • 排查多Controller混淆:若项目中有多个Animator Controller,确认当前使用的Controller确实包含horizontal参数,避免误用到未添加该参数的Controller。

内容的提问来源于stack exchange,提问作者spikyllama

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 12:35:20