Цветное наложение анимации позвоночника - PullRequest
0 голосов
/ 14 мая 2019

Я использую Unity3D и анимацию персонажей, импортированную из Spine.Я хочу добавить цвет наложения на этих персонажей.Например, у меня есть один символ, я хочу сделать его «теневым», поэтому я добавляю черный цвет таким образом:

GetComponent<SkeletonAnimation>().Skeleton.color = new Color(0f,0f,0f);

Тем не менее, я хочу анимацию между обычным цветоми новый цвет.Но, к сожалению, я не могу сделать это с помощью метода DOColor DOTween.Я пытаюсь

GetComponent<SkeletonAnimation>().Skeleton.DOColor(Color.Black,1);

Но метод DOColor для Skeleton не существует.Так какой же путь для достижения этой цели?

1 Ответ

1 голос
/ 15 мая 2019

DoColor, DoMove и т. Д. - это ярлыки и методы расширения, написанные для встроенных компонентов Unity.SkeletonAnimation не поддерживается методами расширения DoTween.Вы можете настроить его свойство color следующим образом:

Color yourColor = Color.white; //GetComponent<SkeletonAnimation>().Skeleton.color
Color targetColor = Color.black;
float duration = 1f;
DOTween.To(() => yourColor, co => { yourColor = co;  }, targetColor, duration);

Также вы можете написать собственное расширение:


public static class MyExtensions{

    public static Tweener DOColor(this SkeletonAnimation target, 
    Color endValue, float duration)
    {
    DOTween.To(() => target.color, 
               co => { target.color = co; }, 
               endValue, 
               duration);   
    } 


}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...