본문 바로가기
유니티강좌

페이드인(Fade In) 페이드아웃(Fade Out). 키와 버튼으로 오브젝트 투명하게 만들기(유니티 2D기초강좌) - Unity & C# Script(Alpha, Opacity)

by Ncube 2020. 12. 8.

 

 

특정 키보드의 키를 누르거나 버튼을 만들어서 클릭을 해서 해당 게임오브젝트의 투명도(Alpha, Opacity)를 조절해서 나타나게 하거나 사라지게 만들 수 있습니다.

 

#페이드인 #페이드아웃 #유니티기초강좌

 

 

[FadeInOut.cs]

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class FadeInOut : MonoBehaviour
{
    SpriteRenderer sr;
    public GameObject go;

    // Start is called before the first frame update
    void Start()
    {
        sr = go.GetComponent<SpriteRenderer>();
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown("i"))
            StartCoroutine("FadeIn");

        if (Input.GetKeyDown("o"))
            StartCoroutine("FadeOut");
    }

    IEnumerator FadeIn()
    {
        for (int i = 0; i < 10; i++)
        {
            float f = i / 10.0f;
            Color c = sr.material.color;
            c.a = f;
            sr.material.color = c;
            yield return new WaitForSeconds(0.1f);
        }
    }

    IEnumerator FadeOut()
    {
        for (int i = 10; i >= 0; i--)
        {
            float f = i / 10.0f;
            Color c = sr.material.color;
            c.a = f;
            sr.material.color = c;
            yield return new WaitForSeconds(0.1f);
        }
    }

    public void FadeInBtn()
    {
        StartCoroutine("FadeIn");
    }

    public void FadeOutBtn()
    {
        StartCoroutine("FadeOut");
    }
}

 

댓글