private void Flash() { _nowTime += Time.deltaTime; if (_nowTime < _fadeSpeed) { return; } switch (_mode) { case FADE_MODE.IN: _alpha = _gage.max; _mode = FADE_MODE.OUT; break; case FADE_MODE.OUT: _alpha = _gage.min; _mode = FADE_MODE.IN; break; case FADE_MODE.NON: break; default: break; } _nowTime = 0; }
/// <summary> /// 如果isBG /// TRUE,会连续接着播放背景长音 /// FALSE, 是音效 /// </summary> /// <param name="name"></param> /// <param name="isBG"></param> public void Play(string name, bool isBG = false) { if (s == null) { s = GetComponents <AudioSource>(); } int sIndex = isBG ? 1 : 0; if (isBG) { mode = FADE_MODE.FADE_IN; s[sIndex].volume = 0; bgPlaying = true; } else { s[sIndex].ignoreListenerPause = true; } for (int i = 0; i < list.Length; i++) { SoundInfo info = list[i]; if (info.name == name) { if (isBG) { bgInfo = info; } SetNextPlay(info, s[sIndex], isBG); return; } } }
// Update is called once per frame void Update() { if (fadeMode != FADE_MODE.FADE_NONE) { // 画面を暗転化する if (fadeMode == FADE_MODE.FADE_OUT) { _child.GetComponent <Image>().color = new Color(color.r, color.g, color.b, color.a); color.a += speed; } // 画面を見えるように戻す else if (fadeMode == FADE_MODE.FADE_IN) { _child.GetComponent <Image>().color = new Color(color.r, color.g, color.b, color.a); color.a -= speed; } // 制御 if (color.a > 1.0f) { Debug.Log("画面暗転終了"); // フェードINへ移行 fadeMode = FADE_MODE.FADE_IN; // シーン移行 SceneManager.LoadScene(nextScene); } else if (color.a < 0) { Debug.Log("フェード終了"); // フェード終了 color.a = 0; fadeMode = FADE_MODE.FADE_NONE; } } }
public void FadeOut() { if (s == null) { return; } mode = FADE_MODE.FADE_OUT; }
// Use this for initialization void Awake() { debugText = ""; mode = FADE_MODE.FADEMODE_NONE; nextScene = null; fadeCount = fadeTime; matFade.SetFloat("_Percent", 0.0f); }
static public void Fade(FADE_MODE fadeMode, string sceneName = "") { mode = fadeMode; if (string.IsNullOrEmpty(sceneName)) { return; } nextScene = sceneName; }
private void FadeOut() { _alpha -= _fadeSpeed * Time.deltaTime; if (_alpha < _gage.min) { _alpha = _gage.min; if (_loop) { _mode = FADE_MODE.IN; } } }
private void FadeIn() { _alpha += _fadeSpeed * Time.deltaTime; if (_alpha > _gage.max) { _alpha = _gage.max; if (_loop) { _mode = FADE_MODE.OUT; } } }
// Use this for initialization void Start() { nextScene = null; // 次のシーン初期化 fadeMode = FADE_MODE.FADE_NONE; // 色の初期化 color.r = _child.GetComponent <Image>().color.r; color.g = _child.GetComponent <Image>().color.g; color.b = _child.GetComponent <Image>().color.b; color.a = 0; SetTexture(texture); }
// フェードをセットする public bool SetFade(string next) { if (fadeMode == FADE_MODE.FADE_NONE) { Debug.Log("フェード呼び出し : " + next); color.a = 0; // アルファ値初期化 nextScene = next; // 次のシーン fadeMode = FADE_MODE.FADE_OUT; // フェードOUTへ return(true); } return(false); }
//フェイドアウトとフェイトインを切り替える public void ChangeFadeMode() { switch (fadeMode) { case FADE_MODE.Out: gage = fadeInDef; fadeMode = FADE_MODE.In; break; case FADE_MODE.In: gage = fadeOutDef; fadeMode = FADE_MODE.Out; break; default: break; } }
void Update() { switch (mode) { case FADE_MODE.NONE: break; case FADE_MODE.FADE_IN: if (s != null && s[1].volume < 1) { s[1].volume += 0.05f; if (s[1].volume >= 1) { mode = FADE_MODE.NONE; } } break; case FADE_MODE.FADE_OUT: if (s != null && s[1].volume > 0) { s[1].volume -= 0.05f; if (s[1].volume <= 0) { mode = FADE_MODE.NONE; StopBg(); } } break; } if (bgPlaying) { if (!s[1].isPlaying) { SetNextPlay(bgInfo, s[1], true); } } }
// Update is called once per frame void Update() { if (mode == FADE_MODE.FADE_IN) { //アルファ値を減らしていく alpha -= FADE_RATE; if (alpha <= 0.0f) { alpha = 0.0f; mode = FADE_MODE.FADE_IN_FINISH; } //実際の色を変更 Image img = GetComponent <Image>(); Color col = img.color; col.a = alpha; img.color = col; } else if (mode == FADE_MODE.FADE_OUT) { //アルファ値を増やしていく alpha += FADE_RATE; if (alpha >= 1.0f) { alpha = 1.0f; mode = FADE_MODE.FADE_OUT_FINISH; } //実際の色を変更 Image img = GetComponent <Image>(); Color col = img.color; col.a = alpha; img.color = col; } }
//------------------------------------------------------------------------- // フェードアウト開始 //------------------------------------------------------------------------- public void FadeOut() { mode = FADE_MODE.FADE_OUT; }
//------------------------------------------------------------------------- // フェードイン開始 //------------------------------------------------------------------------- public void FadeIn() { mode = FADE_MODE.FADE_IN; }
private void Update() { if (Debug.isDebugBuild) { frameCount++; float time = Time.realtimeSinceStartup - prevTime; if (time >= 0.5f) { fps = frameCount / time; frameCount = 0; prevTime = Time.realtimeSinceStartup; } } if (Input.GetKeyDown(KeyCode.Escape)) { #if UNITY_EDITOR EditorApplication.isPlaying = false; #else Application.Quit(); #endif } if (mode == FADE_MODE.FADEMODE_NONE) { return; } bool IsLoad = false; if (mode == FADE_MODE.FADEMODE_IN) { fadeCount -= Time.deltaTime; if (fadeCount < 0) { fadeCount = 0.0f; mode = FADE_MODE.FADEMODE_IN_FINISH; if (!string.IsNullOrEmpty(nextScene)) { IsLoad = true; } } } else if (mode == FADE_MODE.FADEMODE_OUT) { fadeCount += Time.deltaTime; if (fadeCount > fadeTime) { fadeCount = fadeTime; mode = FADE_MODE.FADEMODE_OUT_FINISH; if (!string.IsNullOrEmpty(nextScene)) { IsLoad = true; } } } matFade.SetFloat("_Percent", fadeCount / fadeTime); if (!IsLoad) { return; } string nextSceneBuf = nextScene; nextScene = null; SceneManager.LoadScene(nextSceneBuf); }