GetAnimationStateData() public method

public GetAnimationStateData ( ) : Spine.AnimationStateData
return Spine.AnimationStateData
Esempio n. 1
0
    public void Initialize()
    {
        mesh = new Mesh();
        GetComponent <MeshFilter>().mesh = mesh;
        mesh.name      = "Skeleton Mesh";
        mesh.hideFlags = HideFlags.HideAndDontSave;

        state = new Spine.AnimationState(skeletonDataAsset.GetAnimationStateData());

        skeleton = new Skeleton(skeletonDataAsset.GetSkeletonData(false));
    }
    public void Initialize(bool overwrite)
    {
        if (this.IsValid && !overwrite)
        {
            return;
        }

        // Make sure none of the stuff is null
        if (this.skeletonDataAsset == null)
        {
            return;
        }
        var skeletonData = this.skeletonDataAsset.GetSkeletonData(false);

        if (skeletonData == null)
        {
            return;
        }

        if (skeletonDataAsset.atlasAssets.Length <= 0 || skeletonDataAsset.atlasAssets[0].materials.Length <= 0)
        {
            return;
        }

        this.state = new Spine.AnimationState(skeletonDataAsset.GetAnimationStateData());
        if (state == null)
        {
            Clear();
            return;
        }

        this.skeleton           = new Skeleton(skeletonData);
        this.spineMeshGenerator = new Spine.Unity.ArraysSimpleMeshGenerator();         // You can switch this out with any other implementer of ISpineMeshGenerator

        // Set the initial Skin and Animation
        if (!string.IsNullOrEmpty(initialSkinName))
        {
            skeleton.SetSkin(initialSkinName);
        }

        if (!string.IsNullOrEmpty(startingAnimation))
        {
            state.SetAnimation(0, startingAnimation, startingLoop);
        }
    }
    void Selector(SerializedProperty property)
    {
        SpineAnimation attrib = (SpineAnimation)attribute;

        GenericMenu menu = new GenericMenu();

        var animations = skeletonDataAsset.GetAnimationStateData().SkeletonData.Animations;

        for (int i = 0; i < animations.Count; i++)
        {
            string name = animations[i].Name;
            if (name.StartsWith(attrib.startsWith))
            {
                menu.AddItem(new GUIContent(name), name == property.stringValue, HandleSelect, new SpineDrawerValuePair(name, property));
            }
        }

        menu.ShowAsContext();
    }