Depending on where you are issueing the instantiation call (e.g. from coroutines, etc.), it might be missing a call to Update()
before LateUpdate()
.
So you could add the following after your instantiation call:
GameObject instance = Instantiate(clickEffectPre, transform);
var skeletonAnimation = instance.GetComponent<SkeletonAnimation>();
skeletonAnimation.Update(0); // this line should help
skeletonAnimation.LateUpdate(); // you could also check if this additional line is also necessary
This thread explains it in more detail:
How to set first frame before animation starting in Unity?
We will modify the runtime in a future update so that this manual call is no longer necessary, regardless of where the instantiation took place.
This issue should be fixed now.
New unitypackages can be downloaded here as usual:
Spine Unity Download
Please let us know if this resolves your case as well. Thanks for reporting!
The issue has been tracked under this id:
[unity] Update potentially not called after Initialize · #1646