Cena Loading para carregar proximo Level
2 participantes
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Cena Loading para carregar proximo Level
boa tarde,
já tenho aqui um cena Loading que o Marcos ensina no seu video Cena inicial de carregamento e ela carrega o primeiro level do jogo apos eu sair da cena Main.
mas meu jogo vai ter 7 levels, então queria saber o quê que é melhor, eu criar mais outras cenas Loading especificas para carregar cada level, ou se eu posso aproveitar só a cena Loading que já existe para carregar os outros niveis
se eu puder aproveitar só essa Loading, o quê que eu tenho que mudar no script para fazer com que a cena Level2 seja carregada somente na transição da Level1 para Level2, o mesmo na transição da Level2 para Level3 e assim vai..
já tenho aqui um cena Loading que o Marcos ensina no seu video Cena inicial de carregamento e ela carrega o primeiro level do jogo apos eu sair da cena Main.
mas meu jogo vai ter 7 levels, então queria saber o quê que é melhor, eu criar mais outras cenas Loading especificas para carregar cada level, ou se eu posso aproveitar só a cena Loading que já existe para carregar os outros niveis
se eu puder aproveitar só essa Loading, o quê que eu tenho que mudar no script para fazer com que a cena Level2 seja carregada somente na transição da Level1 para Level2, o mesmo na transição da Level2 para Level3 e assim vai..
Marc7- Mestre
- PONTOS : 3443
REPUTAÇÃO : 28
Respeito as regras :
Re: Cena Loading para carregar proximo Level
Da pra aproveitar a mesma cena passando o parâmetro da cena de destino com Dont destroy on load, mas o gerenciamento de cenas da Unity é leve, e não sei se derrepente não é mais vantajoso usar várias cenas mesmo.
Re: Cena Loading para carregar proximo Level
o script que carrega, por exemplo, o primeiro level (saindo da cena Main e carregando cena Level1) é esse aqui, é o mesmo que vc ensina no video, mas removi algumas linhas porque não vou precisar da barra de carregamento e de progresso:
o problema é que a variavel string 'cenaACarregar' é para pôr o nome da cena que vai ser carregada, então como esse loading é para o Level1, eu setei Level1 lá no inspector, mas se tivesse um jeito de variar esse nome para Level2, Level2, Level4... até o Level7, ficaria bom, assim eu estaria aproveitando a mesma cena Loading para carregar as outras fases, à medida em que eu vou passando de fase.
Marcos o que eu poderia fazer? ou é melhor eu criar outras cenas loading para cada level?
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class LoadingLevel : MonoBehaviour {
public string cenaACarregar;
public float tempoFixoSeg = 5;
public enum TipoCarreg { Carregamento, TempoFixo };
public TipoCarreg tipoDeCarregamento;
private int progresso = 0;
private string textoOriginal;
void Start() {
switch (tipoDeCarregamento) {
case TipoCarreg.Carregamento:
StartCoroutine(CenaDeCarregamento(cenaACarregar));
break;
case TipoCarreg.TempoFixo:
StartCoroutine(TempoFixo(cenaACarregar));
break;
}
}
IEnumerator CenaDeCarregamento(string cena) {
AsyncOperation carregamento = SceneManager.LoadSceneAsync(cena);
while (!carregamento.isDone) {
progresso = (int)(carregamento.progress * 100.0f);
yield return null;
}
}
IEnumerator TempoFixo(string cena) {
yield return new WaitForSeconds(tempoFixoSeg);
SceneManager.LoadScene(cena);
}
void Update() {
switch (tipoDeCarregamento) {
case TipoCarreg.Carregamento:
break;
case TipoCarreg.TempoFixo:
progresso = (int)(Mathf.Clamp((Time.time / tempoFixoSeg), 0.0f, 1.0f) * 100.0f);
break;
}
}
}
o problema é que a variavel string 'cenaACarregar' é para pôr o nome da cena que vai ser carregada, então como esse loading é para o Level1, eu setei Level1 lá no inspector, mas se tivesse um jeito de variar esse nome para Level2, Level2, Level4... até o Level7, ficaria bom, assim eu estaria aproveitando a mesma cena Loading para carregar as outras fases, à medida em que eu vou passando de fase.
Marcos o que eu poderia fazer? ou é melhor eu criar outras cenas loading para cada level?
Marc7- Mestre
- PONTOS : 3443
REPUTAÇÃO : 28
Respeito as regras :
Re: Cena Loading para carregar proximo Level
E melhor criar outras cenas.
Para reaproveitar a variável, você vai ter que passar o parâmetro para este script através de dont destroy on load, ou talvez uma variável estática...
você pode tentar deixar a variável "cenaACarregar" estática... ai você define ela na cena de menu, e quando você carrega a cena de loading, já está com o nome da cena de destino.
Para reaproveitar a variável, você vai ter que passar o parâmetro para este script através de dont destroy on load, ou talvez uma variável estática...
você pode tentar deixar a variável "cenaACarregar" estática... ai você define ela na cena de menu, e quando você carrega a cena de loading, já está com o nome da cena de destino.
Re: Cena Loading para carregar proximo Level
MarcosSchultz escreveu:E melhor criar outras cenas.
Para reaproveitar a variável, você vai ter que passar o parâmetro para este script através de dont destroy on load, ou talvez uma variável estática...
você pode tentar deixar a variável "cenaACarregar" estática... ai você define ela na cena de menu, e quando você carrega a cena de loading, já está com o nome da cena de destino.
Marcos até agora eu criei outras cenas e está funcionando como eu queria, mas eu vou praticar isso que vc falou, em usar o Dontdestroyonload.
Deixando cenaACarregar como estática deve funcionar tambem, vou tentar isso.
abs!
Marc7- Mestre
- PONTOS : 3443
REPUTAÇÃO : 28
Respeito as regras :
Tópicos semelhantes
» [RESOLVIDO] Problema para Carregar cena
» Como faço pra carregar os itens de uma Cena Para outra?
» alguem pode me ensinar como fazer um script para carregar uma cena
» Queria Deixar uma Dica Para Quem Está Tendo Problemas ao Carregar Uma Cena
» [Ajuda] Sistema de Loading Level
» Como faço pra carregar os itens de uma Cena Para outra?
» alguem pode me ensinar como fazer um script para carregar uma cena
» Queria Deixar uma Dica Para Quem Está Tendo Problemas ao Carregar Uma Cena
» [Ajuda] Sistema de Loading Level
SchultzGames :: UNITY 3D :: Resolvidos
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos