【Unity】オブジェクトのフェードイン・フェードアウトの実装方法

Unityでオブジェクトにフェードイン・フェードアウトの効果を追加する方法。

using UnityEngine;

public class ObjectFade : MonoBehaviour
{
    public float fadeInTime = 1f; // フェードインにかかる時間
    public float fadeOutTime = 1f; // フェードアウトにかかる時間
    private Renderer objectRenderer; // レンダラーコンポーネント

    void Start()
    {
        objectRenderer = GetComponent<Renderer>(); // レンダラーコンポーネントを取得
        StartCoroutine(FadeIn()); // フェードイン開始
    }

    IEnumerator FadeIn()
    {
        float currentTime = 0f;
        Color objectColor = objectRenderer.material.color;
        while (currentTime < fadeInTime)
        {
            float alpha = currentTime / fadeInTime;
            objectRenderer.material.color = new Color(objectColor.r, objectColor.g, objectColor.b, alpha);
            currentTime += Time.deltaTime;
            yield return null;
        }
    }
}

コメント

タイトルとURLをコピーしました