public class Talk : MonoBehaviour {
public GameObject events;
public Image image;
private float speed = 1f;
private Button goB,goC;
// Use this for initialization
void Start () {
DontDestroyOnLoad(gameObject);//将代码挂某个物体上 可以把他完整的带到下个场景使用
DontDestroyOnLoad(events);//ui 事件系统
//动态获取2个按钮
goB = transform.GetChild(1).GetChild(0).GetComponent<Button>();
goC = transform.GetChild(1).GetChild(1).GetComponent<Button>();
//按钮事件
goB.onClick.AddListener(GoB);
goC.onClick.AddListener(GoC);
}
void GoB()
{
image.color = Color.black;
SceneManager.LoadScene("B");
}
void GoC()
{
image.color = Color.black;
SceneManager.LoadScene("C");
}
// Update is called once per frame
void Update () {
image.color = Color.Lerp(image.color, Color.clear, Time.deltaTime * speed);
}
}
Durante o processo de desenvolvimento, você frequentemente encontra objetos ou interfaces de interface do usuário nesta cena, que também podem ser usados na próxima cena. Neste momento, você precisa usar o método DontDestroyOnLoad, que pode otimizar o código para você.
Aqui eu trago a interface de interface do usuário para a próxima cena a ser usada
BC no código representa o segundo e terceiro cenários
A imagem aqui faz principalmente uma troca de cena, que é o efeito do gradiente de cores