Something quick and dirty for you to use:
Just add it to your object. Don't forget to remove it when you're not using it. It doesn't do anything outside the Unity editor.
SkeletonPosePreview.cs
using UnityEngine;
using Spine;
using Spine.Unity;
[RequireComponent(typeof(SkeletonRenderer))]
public class SkeletonPosePreview : MonoBehaviour {
[SpineAnimation] public string animationName;
[Space]
[Tooltip("Allow time scrubbing in the inspector according to seconds instead of percentage of the duration.")]
public bool useSeconds;
[Range(0, 1)] public float percentTime;
public float seconds;
SkeletonRenderer skeletonRenderer;
public void OnValidate () {
percentTime = Mathf.Clamp(percentTime, 0, 1);
if (skeletonRenderer == null) skeletonRenderer = GetComponent<SkeletonRenderer>();
if (skeletonRenderer == null) return;
if (!skeletonRenderer.valid) return;
if (string.IsNullOrEmpty(animationName)) return;
Skeleton skeleton = skeletonRenderer.skeleton;
Spine.Animation spineAnimation = skeleton.data.FindAnimation(animationName);
if (spineAnimation == null) return;
float duration = spineAnimation.duration;
if (useSeconds) {
if (duration == 0) {
seconds = 0;
percentTime = 0;
} else {
if (seconds < 0) seconds += duration; // Allow backscrubbing.
seconds = seconds % duration;
percentTime = seconds / duration;
}
} else {
seconds = percentTime * duration;
}
skeleton.SetToSetupPose(); // Spine-Unity 3.4 and below
spineAnimation.Apply(skeleton, 0, seconds, true, null); // Spine-Unity 3.4 and below
//spineAnimation.Apply(skeleton, 0, seconds, true, null, 1f, true, false); // Spine-Unity 3.5
}
}