Esempio n. 1
0
    public void Play(string name)
    {
        frame = 0;
        anim  = animations[name];
        for (int i = 0; i < anim.boneAnimations.Length; i++)
        {
            UgData.BoneAnimationCollect bac = anim.boneAnimations[i];
            Debug.Log(bac.name);
            Debug.Log(bac.frames.Length);
            bones[bac.name].SetAnimData(bac.frames);
        }

        for (int i = 0; i < anim.slotAnimations.Length; i++)
        {
            UgData.SlotAnimationCollect sac = anim.slotAnimations[i];
            slots[sac.name].SetAnimData(sac.frames);
        }

        UpdateFrame(0);
    }
Esempio n. 2
0
    public void UpdateFrame(float deltaTime)
    {
        frame += deltaTime * frameRate;
        frame %= anim.duration;

        for (int i = 0; i < anim.boneAnimations.Length; i++)
        {
            UgData.BoneAnimationCollect bac = anim.boneAnimations[i];
            bones[bac.name].UpdateFrame(frame);
        }

        for (int i = 0; i < anim.slotAnimations.Length; i++)
        {
            UgData.SlotAnimationCollect sac = anim.slotAnimations[i];
            slots[sac.name].UpdateFrame(frame);
        }
        //foreach (UgTrans trans in children) {
        //    trans.updateMatrix();
        //}
        updateMatrix();
    }