본문 바로가기
유니티

[유니티] 페이드 인 아웃

by SUGI_ 2023. 7. 31.
public class FadeInOut : MonoBehaviour
{
    public float fadeSpeed = 1.5f;
    public bool fadeInOnStart = true;
    public bool fadeOutOnExit = true;

    public Image panel;

    private void Awake()
    {
        //처음시작 방법1
        panel.gameObject.SetActive(true);   
    }

    void Start()
    {
        //StartCoroutine(FadeOut());
        StartCoroutine(FadeIn());
    }

    IEnumerator FadeIn()
    {
        //처음시작 방법2
        if (panel.color.a > 0)
        {
            panel.color = new Color(0, 0, 0, 0);
        }

        float a = 0;

        while (panel.color.a < 1)
        {
            a += Time.deltaTime * fadeSpeed;
            panel.color = new Color(0, 0, 0, a);

            yield return null;
        }
    }

    IEnumerator FadeOut()
    {
        //처음시작 방법2
        if (panel.color.a < 1)
        {
            panel.color = new Color(0, 0, 0, 255);
        }

        float a = 1;

        while (panel.color.a > 0)
        {
            a -= Time.deltaTime * fadeSpeed;
            panel.color = new Color(0, 0, 0, a);
            yield return null;
        }
    }
}
728x90

'유니티' 카테고리의 다른 글

[유니티] 디버깅 방법  (0) 2023.08.08
[유니티] Resources.Load  (0) 2023.08.07
[유니티] 마우스 터치패드 조작  (0) 2023.07.28
[유니티] 사운드 재생하기  (0) 2023.07.28
[유니티] UI Button 무효화 / Sprite 바꾸기  (0) 2023.07.25