Exemplo n.º 1
0
 // Start is called before the first frame update
 void Start()
 {
     red   = GetComponent <Image>().color.r;
     green = GetComponent <Image>().color.g;
     blue  = GetComponent <Image>().color.b;
     fade  = FADE.FADE_IN;
 }
Exemplo n.º 2
0
    //// 実際の動作 ////
    void Update()
    {
        // フェード実行メソッド実行済み
        if (state != FADE.STAY)
        {
            // フェードインとフェードアウトで逆動作
            if (state == FADE.OUT)
            {
                time += Time.deltaTime;
            }
            else if (state == FADE.IN)
            {
                time -= Time.deltaTime;
            }

            // 今回はフェードがUIの透明度でのフェードなのでこの動作
            float a     = time / fadeTime;
            var   color = image.color;
            color.a     = a;
            image.color = color;

            // フェード終了
            if (state == FADE.OUT && color.a >= 1 || state == FADE.IN && color.a <= 0)
            {
                state = FADE.STAY;
            }
        }
    }
Exemplo n.º 3
0
    IEnumerator FadeEffect(FADE mode, Image img)
    {
        Color colorSource;      // 초기 색상
        Color colorDestination; // 끝 색상

        if (mode == FADE.IN)    // 점점 맑아지는 효과
        {
            colorSource      = Color.black;
            colorDestination = Color.clear;
        }
        else // 점점 어두워지는 효과
        {
            colorSource      = Color.clear;
            colorDestination = Color.black;
        }

        float startTime = Time.realtimeSinceStartup;    // 시작시간
        float endTime   = startTime + fadeTime;         // 끝 시간

        while (endTime > Time.realtimeSinceStartup)
        {
            img.color = Color.Lerp(colorSource, colorDestination, (Time.realtimeSinceStartup - startTime) / fadeTime);
            yield return(null);
        }
    }
Exemplo n.º 4
0
    IEnumerator FadeEffect(FADE mode)
    {
        Color colorSource;
        Color colorDestination;

        Time.timeScale = 0f;
        if (mode == FADE.IN) // 점점 맑아지는 효과
        {
            colorSource      = Color.black;
            colorDestination = Color.clear;
        }
        else
        {
            colorSource      = Color.clear;
            colorDestination = Color.black;
        }
        GameObject obj = Instantiate(preSceneFade);

        DontDestroyOnLoad(obj);
        Image img = obj.GetComponentInChildren <Image>();

        float startTime = Time.realtimeSinceStartup;
        float endTime   = startTime + 1f;

        while (endTime > Time.realtimeSinceStartup)
        {
            img.color = Color.Lerp(colorSource, colorDestination, (Time.realtimeSinceStartup - startTime) / fadeTime);
            yield return(null);
        }
        Destroy(obj);
        Time.timeScale = 1f;
    }
Exemplo n.º 5
0
 //// フェードイン実行用メソッド ////
 public void FadeInPlay()
 {
     // 待機状態(フェード実行前)の時
     if (state == FADE.STAY)
     {
         time  = fadeTime;
         state = FADE.IN;
     }
 }
Exemplo n.º 6
0
    private float fadeTime = 0.5f;  // かける時間


    //// フェードアウト実行用メソッド ////
    public void FadeOutPlay()
    {
        // 待機状態(フェード実行前)の時
        if (state == FADE.STAY)
        {
            time  = 0f;
            state = FADE.OUT;
        }
    }
 /// <summary>
 /// <para> 작 성 자 : 이승엽 </para>
 /// <para> 작 성 일 : 2020.04.04 </para>
 /// <para> 내    용 : 텍스트를 Fade처리하는 메서드 </para>
 /// </summary>
 public void Func_Fade(FADE _fade, Text _fadeText)
 {
     if (_fade == FADE.In)
     {
         _fadeText.DOFade(0f, fadeTime);
     }
     else
     {
         _fadeText.DOFade(1f, fadeTime);
     }
 }
 /// <summary>
 /// <para> 작 성 자 : 이승엽 </para>
 /// <para> 작 성 일 : 2020.04.04 </para>
 /// <para> 내    용 : 이미지를 Fade처리하는 메서드 </para>
 /// </summary>
 public void Func_Fade(FADE _fade, Image _fadeImage)
 {
     if (_fade == FADE.In)
     {
         _fadeImage.DOFade(0f, fadeTime);
         _fadeImage.raycastTarget = false;
     }
     else       // Fade Out
     {
         _fadeImage.raycastTarget = true;
         _fadeImage.DOFade(1f, fadeTime);
     }
 }
Exemplo n.º 9
0
    public void Fade(FADE fadeDir, float fadeDuration, float StartDelay)
    {
        if (img != null)
        {
            if (fadeDir == FADE.FadeIn)
            {
                StartCoroutine(FadeCoroutine(1f, 0f, fadeDuration, StartDelay, true));
            }

            if (fadeDir == FADE.FadeOut)
            {
                StartCoroutine(FadeCoroutine(0f, 1f, fadeDuration, StartDelay, false));
            }
        }
    }
Exemplo n.º 10
0
    //페이드인아웃 관리
    #region ------------------------------[UIEffect]------------------------------

    //들어간 게임오브젝트가 어떤형식의 이미지인지 확인해서 페이드 인 아웃
    IEnumerator FadeInOut(Image _image, FADE _inout, float _time)
    {
        float resettime = Time.time;

        Color color;

        color = _image.color;

        while (color.a < 1 || color.a > 0)
        {                                                                                          //러프로 부드럽게 페이드 관리
            color.a = Mathf.Lerp(1 - (byte)_inout, (byte)_inout, (Time.time - resettime) / _time); //이미지의 알파가 1이면 페이드아웃 0이면 페이드인

            _image.color = color;

            if (color.a == (byte)_inout)
            {
                break;
            }

            yield return(null);
        }
    }
Exemplo n.º 11
0
    // Update is called once per frame
    void Update()
    {
        if (fade != FADE.FADE_NONE)
        {// フェード処理中
            if (FADE.FADE_OUT == fade)
            {
                // フェードアウト処理
                alfa += speed; // α値を加算して画面を消していく

                if (alfa >= 1.0f)
                {
                    // フェードアウト終了
                    alfa     = 1.0f;
                    m_bChage = true;
                }

                // テクスチャ更新
                GetComponent <Image>().color = new Color(red, green, blue, alfa);
            }
            else if (FADE.FADE_IN == fade)
            {
                // フェードイン処理
                alfa -= speed; // α値を加算して画面を浮き上がらせていく

                if (alfa <= 0.0f)
                {
                    // フェード処理終了
                    alfa     = 0.0f;
                    fade     = FADE.FADE_NONE;
                    m_bChage = false;   // 終わり
                }
            }
            // テクスチャ更新
            GetComponent <Image>().color = new Color(red, green, blue, alfa);
        }
    }
Exemplo n.º 12
0
	// Update is called once per frame
	void Update () {
		switch (NowFade) {
		case FADE.FADE_OUT:
			if(OutAnimation()){
				NowFade = FADE.FADE_ANIMATION;
			}
			break;
		case FADE.FADE_ANIMATION:
			if(FadeAnimation()){
				GameMain.NowScene = NextScene;
				NowFade = FADE.FADE_IN;
			}
			break;
		case FADE.FADE_IN:
			if(FadeIn()){
				TopGear.transform.localEulerAngles = new Vector3(0,0,0);
				BottomGear.transform.localEulerAngles = new Vector3(0,0,0);
				NowFade = FADE.FADE_NONE;
			}
			break;
		case FADE.FADE_NONE:
			break;
		}
	}
Exemplo n.º 13
0
 // フェード開始
 public void SetFade()
 {
     fade = FADE.FADE_OUT;
 }
Exemplo n.º 14
0
	public static void FadeRun(GAME_SCENE scene){
		NextScene = scene;
		NowFade = FADE.FADE_OUT;
	}