Hi,
my Unity project using Timeline was recently updated to Spine 4.0
migration went smoothly, but it seems I was using a referenceasset in one of my timelines that no longer exists in the spine project, but still exists as an asset in my unity project.
So when we updated our animations to 4.0 that one wasn't changed to 3.8
Unfortunately this has some annoying consequence when trying to open the timeline, because it causes some NullReferenceExceptions and as a result, the graph in its entirety can't load.
I thus can't fix the timeline by removing the clip referring to the obsolete asset.
I've had this kind of problem before, when my animator changed the name of some animations in the spine project. But I always managed to open the graph to fix it. This here is more problematic as I just can't fix the problem.
Hi again,
I made a temporary fix to AnimationReferenceAsset to work around the problem, just adding a null check in Initialize before calling FindAnimation
public void Initialize ()
{
if (skeletonDataAsset == null) return;
this.animation = skeletonDataAsset.GetSkeletonData(AnimationReferenceAsset.QuietSkeletonData)?.FindAnimation(animationName);
if (this.animation == null)
Debug.LogWarningFormat("Animation '{0}' not found in SkeletonData : {1}.", animationName, skeletonDataAsset.name);
}
That fixed the problem for me and allowed me to find out that I was referencing a legacy skeleton. This wasn't giving me any trouble prior to the 4.0 migration. I suppose the joke's on me in this case :-) still I think adding a null check after GetSkeletonData is definitely an improvement that should make its way into your next update.