
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class fadeInOut : MonoBehaviour
{
public float fadeSpeed = 1.5f;
private bool sceneStarting = true;
private GUITexture tex;
void Start()
{
tex = this.GetComponent<GUITexture>();
tex.pixelInset = new Rect(0, 0, Screen.width, Screen.height);
}
void Update()
{
if (sceneStarting)
{
StartScene();
}
}
private void FadeToClear()
{
tex.color = Color.Lerp(tex.color, Color.clear, fadeSpeed * Time.deltaTime);
}
private void FadeToBlack()
{
tex.color = Color.Lerp(tex.color, Color.black, fadeSpeed * Time.deltaTime);
}
private void StartScene()
{
FadeToClear();
if (tex.color.a <= 0.05f)
{
tex.color = Color.clear;
tex.enabled = false;
sceneStarting = false;
}
}
public void EndScen()
{
tex.enabled = true;
FadeToBlack();
if (tex.color.a >= 0.95f)
{
SceneManager.LoadScene("Demo");
}
}
}
uj5u.com熱心網友回復:
而且這個public權限的fadeSpeed變數為何不能在unity界面上更改uj5u.com熱心網友回復:
這一大坨代碼,看著腦殼疼。。。。uj5u.com熱心網友回復:
場景都切換了,還fadeout個鬼??就是說你把水龍頭關了,然后說我明明讓他水流少點,!!你已經把水龍頭關了。。。。。!!程式就是這么一回事。。。。。。你以為是少一點,其實整個關了,就是一行代碼的事情uj5u.com熱心網友回復:
場景沒有切換啊……
uj5u.com熱心網友回復:
還沒解決嗎?那你基本是沒救了,建議轉行。你呼叫fadeout是在當前場景,然后呼叫loadScene(""),怎么還沒切換場景呢,當你呼叫loadScene(""),你以為是到下一個場景,沒切換
實際是,把前一個場景(當前場景)殺了,也把當前場景的fadein fadeout都殺了,才去下一個場景,所以在這個場景做什么都沒有效果的。這就是代碼,這就是程式開發。。。。。。。。
uj5u.com熱心網友回復:
入門的時候,要多試,錯錯,多做,而不是多問雖然我最近經常吐槽,很多團隊里程式員亂做,越做越錯,很沒用
但是這批程式員確實是入門了,也能找到一份薪水不錯的作業
雖然這批程式員還難免自以為是,多試的,結果是,能多自己理解,雖然理解是錯的,但必須是自己理解,自己寫出來的代碼才有效果
從無知到-》自以為是-》多問,多聽-》綜合應用,才能最終成才,基本是只能沿這個路徑走
也沒有人能未學走就學跑的
也其實很多程式員都不會跑
就一直靠走混日子,所以這行不太需要再多的混日子的人了。。。。。
uj5u.com熱心網友回復:
謝謝您能花費您寶貴的時間給我一番教誨,然后我來學校一年了,期間接觸了一些感興趣的東西,所以假期學了一點c#,想應用到unity里面,但是遇到很多不懂的地方,不懂之處太多又遲遲未能解決,激情自然也被沖淡了,看到您的不吝賜教,讓我感觸頗深,還是自己學習之心不夠堅定啊!uj5u.com熱心網友回復:
上面那個兄弟,他寫的這段代碼確實沒有呼叫這最后一個EndScene()方法啊(你這個scen應該是打錯了吧),問題不是出在這的轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/29130.html
標籤:Unity3D
