开发平台:Unity 2022
编程平台:Visual Studio
编程语言:CSharp
一、问题背景
如上图所示的 GracityComponent
组件中,引用 AnimationCurve
作为可调属性。但在实际使用中出现数据丢失问题。大致为以下两种情况:
- 运行时,配置的
AnimationCurves
出现丢失情况。 - 非运行下,切换
Selection.gameObject
(选择游戏对象)时出现丢失情况。
二、 源码 + 测试解决
public AnimationCurves m_Curves;
public AnimationCurves Curve2;
public AnimationCurves Curve3;
public void OnStateChanged(bool isGround) {
//....
Debug.Log(this.m_Curves.Evaluate(0.5f));
}
问题测试
- 使用 新建
AnimationCurves
作为替代。反馈:运行时表现正常,无数据丢失。 - 重启 Unity 工程。反馈:表现异常,数据丢失。
目前尚不清楚问题原因。仅记录分享。
推测:编辑器问题。