Unity混合树第二个Float参数始终显示NaN问题求助
解决Unity 2022.3.13f1中2D混合树参数显示NaN的问题
现象梳理
- Unity版本:2022.3.13f1
- Animator控制器内存在
X、Y两个float类型参数 - 配置2D简单方向型混合树时,其中一个参数显示为
NaN;交换X/Y绑定位置后,另一个参数变为NaN - 若将混合树两个参数槽都绑定为同一参数(全X或全Y),显示正常
- 已尝试操作:重启Unity、重置混合树、直接检查
.controller文件查找NaN,均无效;拆分功能到两个2D混合树,问题仍存在
解决方案
排查参数初始化与赋值逻辑
- 确认
X、Y参数在Animator启动时被赋予合法初始值(如0),避免未初始化导致的异常 - 检查驱动参数的代码,确保没有在运行时写入
NaN(比如除以0、非法数值转换等操作)
- 确认
重建Animator控制器
- 新建空Animator控制器,重新创建
X、Y参数并从头配置混合树 - 旧控制器可能存在序列化层面的隐藏异常,重建可规避这类问题
- 新建空Animator控制器,重新创建
调整Unity版本
- 该问题大概率是2022.3.13f1版本Animator模块的bug,可尝试升级到2022.3系列后续补丁版本(如2022.3.15f1+),或临时降级到2022.3.12f1测试
切换混合树类型
- 若业务允许,暂时改用2D自由方向型混合树,部分场景下该类型不会触发此参数NaN的异常
内容的提问来源于stack exchange,提问作者Haibayle
相关产品推荐
相关产品推荐

