Obrigada pela resposta! Desculpe a demora. Vamos lá:
Isso ocorre em todo e qualquer projeto?
Só tenho esse!
Consegue testar em um projeto “vazio” (só a câmera e um cubo, por exemplo).
Sim. Nas Scenes em que só há o Canvas por exemplo. Funcionam normalmente, apesar de demorar uns 2 a 3 segundos pra carregar a scene. Estou achando que sejam os textos TMPro, mas enfim. A bronca mesmo é essa do Vulkan, pois é ela que não está deixando a scene do jogo ser aberta.
O projeto dá problema ao rodar no computador, ou só no celular?
No PC ele demora um tempo e depois abre. Mas no Celular quando chega na Scene do Jogo ele trata, fica com a tela preta e fecha o jogo.
Seu projeto usa imagens/texturas muito grandes? Pode ser o caso de testar com imagens menores (em termos de resolução) pra ver se isso está causando o problema.
Então. No começo do projeto enquanto eu estava aprendendo e implementado as coisas, coloquei imagens grandes sem nem saber que a Unity tem um limite no tamanho das imagens. Quando vi isso, reduzi o tamanho delas (diminuiu bastante), mas mesmo assim quando chega na scene do jogo que até então contem essas imagens, mesmo com os tamanhos pequenos, ele trava.
Até então eu não sabia que esse problema do Vulkan era as imagens, daí fiz um teste, fui nos scripts que contem as imagens nos atributos e passei uma imagem com o tamanho muito pequeno em todos eles, e o jogo abriu! Enfim descobri o que era essa parada do Vulkan. As imagens pelo visto ainda assim estão grandes, se não é isso, não sei oq é. Elas estão com o tamanho muito abaixo do limite máximo que uma imagem pode ter, que são 2M. As imagens maiores estão com o tamanho menor que 1M!
Daí pra tentar de outra forma, fiz um script só com as imagens, coloquei ele num objeto com uma TAG, coloquei um script nesse objeto para que ele não seja destruído ao mudar de uma scene para outra e coloquei ele na scene de carregamento do jogo. Essa scene é rodada antes da scene do jogo. Na scene do jogo eu pego esse objeto que contem o script que contem as imagens, pego ele pela TAG. Uso esse script em vários outros scripts na scene do jogo. Fiz isso no intuito de carregar as imagens antes do jogo, para quando entrar no jogo elas já estarem carregadas, mas dá no mesmo. Ele que antes tratava o jogo, agora está travando no carregamento. Com isso eu já sei que não são os scripts do jogo, mas este que contem as imagens. Quando as imagens estavam na scene do jogo ele dava muitos erros antes e depois da linha Vulkan - Out of memory! (allocating memory for image), mas agora que está na scene do carregamento, não está mais aparecendo essa linha, mas os outros erros que vinha junto estão aparecendo.
Pode também mudar o projeto para OpenGL, em vez de Vulkan, e ver se isso resolve. Veja como em: Unity - Manual: Graphics API support .
Já mudei. Não resolve.
Por fim, pode testar com outras versões da Unity (2022, 2023), atualizando o projeto. Não é incomum algumas das versões da Unity terem bugs que só são corrigidos na próxima versão.
Tentei a 2022, ainda não instalei a 2023. Estou com a 2021 por ser LTS, mas se não me engano quando eu mudei pra 2022 aconteceu o mesmo erro também. Vou tentar a 2022 novamente e vou tentar a 2023 também. A questão é que esse problema, quando rodo o jogo no pc, ele consome muita CPU no 1º frame pra depois abrir. Depois de aberto se o jogador voltar do jogo para a scene antes da scene do carregamento e ir pro jogo novamente, não demora mais. Mas no celular ele já trava de primeira, então nem dá pra saber se ele faria isso no celular. No celular trava pq está passando do limite da memória do celular, é isso que estou entendendo. Acredito que usando outras versões vai dar na mesma, pois o problema desse vazamento de memória não foi resolvido.
Como resolver essa parada?