c#
dotween 두트윈
- 설명 블로그 : https://loadofprogrammer.tistory.com/tag/DOTween
- 두트윈 설명 : https://velog.io/@livelyjuseok/Unity-DOTween-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0
- 두트윈 사용법 : https://postpiglet.netlify.app/posts/unity-dotween/
- 시퀀스 관련내용 : https://blog.naver.com/PostView.naver?blogId=dooya-log&logNo=221332052854&categoryNo=9&parentCategoryNo=6
- 두트윈 공식문서 : http://dotween.demigiant.com/documentation.php
DoTween 설치
- setup dotween 선택하여 설치과정을 진행하여야 함
- create ASMDEF
using DG.Tweening;
Color targetColor = new Color();
float targetAlpha = 0.0f;
transform.GetComponent<Renderer>().material.DOColor(targetColor, 3);
transform.GetComponent<Renderer>().materials[0].DOFade(targetAlpha,1);
Sequence 시퀀스
Sequence _sequence = DOTween.Sequence();
_sequence.Append(transform.DOMoveX(45,1))
.Append(transform.DORotate(new Vector3(0,180,0),1))
.PrependInterval(1)
.Insert(0, transform.DOScale(new Vector3(3,3,3), mySequence.Duration())
);
- NULL 시퀀스 에러가 있어서 다음과 같이 수정
Sequence _sequence = DOTween.Sequence()
.Append(_renderer.materials[0].DOFade(0.0f, 1))
.AppendCallback(change_time)
.Append(_renderer.materials[0].DOFade(1.0f, 1));
private void change_time(){
Debug.Log("change time");
}
- 시퀀스 생성과 동시에 시퀀스 내용을 명시해야함
DOTween.To(() => my_post.weight, x => my_post.weight = x, 1, TWEEN_TIME);
transform.DOMove(default_location, TWEEN_TIME).SetEase(Ease.OutCubic);
transform.DOScale(new Vector3(1, 1, 1), TWEEN_TIME).SetEase(Ease.OutCubic);
Color new_color = new Color(1, 1, 1, 1);
self.material.DOColor(new_color, TWEEN_TIME).SetEase(Ease.OutCubic);
DOVirtual.DelayedCall(1.0f, () =>{setContent(0);});
- RawImage인 경우는 .material빼고 직접 RawImage를 연결하면 됨
OnComplete
.OnComplete(myFunction);