Olá, nesta lição, aprenderemos como trabalhar com níveis no Unreal Engine. Os níveis no Unreal Engine são as cenas do seu projeto. Eles podem ser usados de duas maneiras. Você pode salvar versões do seu nível em que está trabalhando. Por exemplo, você pode começar com um nível básico que todo o seu nível será construído a partir de ou salve um nome de nível diferente à medida que você cria mais complexidade em seu nível. Se o seu nível atual estiver com problemas ou o próprio arquivo fica corrompido, você tem a chance de carregar no nível anterior e não começar tudo de novo. A segunda e mais utilizada função dos Níveis é para o jogo ou projeto progredir de um nível para outro. Um exemplo com um jogo é o primeiro nível geralmente é fácil de navegar e concluir, então uma ação final ou ação de teletransporte acontece que leva você para o próximo nível. Você já deve ter ouvido o termo nível de chefe. Esse é geralmente o nível final do jogo onde o inimigo ou inimigos são mais difíceis de combater, mas quando concluído, você ganha o jogo. Vamos começar com o novo projeto que terá ativos para construir dois níveis simples e use um modelo de terceira pessoa para viajar facilmente em torno dos níveis. Inicie um novo projeto. Vamos selecionar GAMES e o modelo de terceira pessoa, e também selecionaremos uma opção de conteúdo inicial. Abra uma pasta na qual você quer salvar o jogo, em seguida, nomeie seu projeto. Vamos nomear este projeto de Níveis. Clique em Criar. Vamos começar este primeiro nível criando duas pastas. Abra a gaveta de conteúdo, em seguida, dentro da pasta Content, vou clicar com o botão direito do mouse, fazer nova pasta. Chamaremos isso de Mapas, é aqui que vamos salvar nossos níveis. Vamos criar outra pasta. Clique com o botão direito do mouse, Nova Pasta. Chamaremos isso de Blueprints. Agora vamos selecionar Arquivo, Salvar nível atual como, navegue até a nossa pasta Mapas, vamos nomear isso Level1. É muito importante anotar de como esse nível é digitado, usaremos isso mais tarde. Clique em Salvar. Enquanto estamos aqui, vamos nos preparar para o que vamos precisar para mais tarde nesta lição. Abra a gaveta de conteúdo, abra a pasta Mapas, selecione Level1 e pressione Ctrl + W no Windows ou Command + W no Mac para fazer um nível duplicado. Renomeie este nível para Level2. Agora vamos decorar nosso nível atual como uma área externa. Vamos começar excluindo as paredes ao redor. Abra a gaveta de conteúdo, navegue até esta pasta StarterContent, em seguida, abra a pasta Props, arraste um arbusto para o nível, em seguida, arraste uma pedra para o nível. Selecione o arbusto, e para fazer cópias ou instâncias, pressione a tecla W, em seguida, segure a tecla Alt enquanto clica e arrasta. Uma instância é uma cópia exata que podemos mover, girar e dimensionar para torná-lo diferente. Se editarmos alguém em uma escova, como remover metade dos polígonos, instâncias serão atualizadas para refletir essa mudança. Faça vários outros arbustos e redimensione-os para variar. Duplique a pedra várias vezes, dimensione alguns em largura e faça mais uma parede de pedra. Estou decorando para guiar o personagem ter que correr ao redor da plataforma para chegar às escadas. Passe alguns momentos para fazer o seu nível. Este é um bom momento para salvar seu nível. Clique no ícone salvar disco. Vamos jogar o nível e ver o que acontece. Primeiro, vamos mover nosso personagem, ou estamos perto das rochas é o melhor ponto de partida. Mais uma vez, vou salvar meu nível então eu vou clicar em Play. Lembre-se de clicar na janela de visualização para iniciar a reprodução. A ideia deste nível é navegar até as escadas e eventualmente colocaremos um portal no final. Além disso, podemos cair da plataforma se formos longe demais. Pressione a tecla Esc para parar o jogo. Pressione a tecla 1 para marcar de volta para onde você começou. Parte do design de níveis é manter seu personagem de cair do seu nível e evitar ficar preso, bem como bloqueá-los de lugares você não quer que eles passem. Para isso, usamos o que chamamos de colisores, que são formas invisíveis em torno de seus atores que impedem o personagem de passar. Há também colisores que permitem que você passe mas desencadeia uma ação no sistema de Visual Scripting do Blueprint quando um caractere entra no volume do colisor. Vamos substituir as paredes externas por Blocking Volumes. Clique em Criar, então Volumes e, em seguida, procure por Volume de bloqueio. Isso adicionará um cubo de wireframe à sua cena. Vamos movê-lo para o lado e dimensioná-lo, e torná-lo a forma da parede que tínhamos lá antes. Não precisa ser exato, vamos usar isso para evitar que um personagem de cair. Mais uma vez, mantenha pressionada a tecla Alt, clique e arraste para fazer uma cópia ou duplicar. Estou arrastando isso para o outro lado. Eu vou arrastar um para o meio, aperte a tecla E para girar, Eu vou girar 90 graus, e mova esta peça para trás, então Alt, clique e arraste, e eu vou mover esta peça para a frente, e que teremos colisores de parede, Jogue o nível novamente e vamos ver se podemos evitar cair da borda. Então agora os colisores parecem estar funcionando. No entanto, ainda podemos correr por entre os arbustos e as rochas. Esc para parar. E vamos consertar as pedras e os arbustos. No World Outliner, selecione qualquer arbusto e clique com o botão direito do mouse e selecione Editar. Isso abre outra janela do editor. Você verá que cada tipo de janela do editor parecerá um pouco diferente. Não nos aprofundaremos muito neste editor, mas adicionaremos uma função útil e isso é adicionar uma forma de colisão ao meu ator. Você pode adicionar a forma mais simples, como uma caixa, e lembre-se, em design de nível que diminui mais. Quanto mais detalhada for qualquer forma no Unreal Engine, mais isso pode afetar o desempenho do seu jogo. Nós não nos importamos neste design se o personagem puder passar por alguns dos galhos, mas queremos pelo menos colidir com o tronco. Então, vamos selecionar Collision e Add Box Simplified. Você verá um contorno de caixa verde. Use a tecla R para dimensionar, torná-lo alto e fino. A Viewport no editor funciona da mesma forma como em sua viewport principal. Isso parece bom o suficiente, então clique em Salvar, e sairemos do editor. Vamos jogar o nível novamente. Observe agora, nós colidimos com os arbustos, e cada arbusto tem um colisor porque fizemos uma instância deles e não tivemos que entrar e individualmente colisões de configuração para cada um. Este é um grande recurso de economia de tempo. No entanto, as rochas ainda precisam ser consertadas. Então selecione qualquer pedra, clique com o botão direito, Edit. E nós vamos fazer a mesma coisa, exceto no menu Colisão, precisamos de um colisor um pouco mais complexo devido ao formato da rocha. E temos diferentes graus de precisão para usar. Vamos para o Auto Convex Collision. Isso vai descobrir automaticamente como envolver a rocha com a menor quantidade de polígonos. Vamos para o Menu, este é Convex Decomp. Deixaremos os padrões e clicaremos em Aplicar. Agora você pode ver, esta rocha é enrolada por uma malha de arame e este é o nosso colisor, e tem muito mais detalhes do que uma caixa. Clicaremos em Salvar, sair, Reproduzir nossa cena mais uma vez. E agora eu não consigo passar pelas pedras com os outros colisores sobre eles. Vamos bater em Esc. Fizemos muitas edições, então vamos para a gaveta de conteúdo e selecione Salvar tudo e, em seguida, SALVAR SELECIONADO.