Primeiras aulas do curso Unreal Engine parte 4: Controlando Iluminação com Level Streaming

Unreal Engine parte 4: Controlando Iluminação com Level Streaming

Separando Levels e Sub-Levels - Introdução

Seja bem-vindo ao curso "Unreal Engine parte 4: Controlando Iluminação com Level Streaming".

Caso você não tenha feito os anteriores, volte lá e faça, para não chegar aqui mais perdido do que cego em tiroteio.

No curso passado, a gente aprendeu a criar a iluminação artificial, posicionando luzes Spot como principal contra luz e luz de preenchimento. Trabalhamos, ainda, com a iluminação indireta emitida dos refletores de luz, que são muito usados na fotografia de estúdio em geral para vários termos. Já nesse curso aqui, vamos começar falando da diferença entre Levels e Sub-levels.

Primeiro, pelo Level persistente que está sempre aí, e depois criando Sub-levels com outras opções de luz, e até com novos elementos de cenário, que a gente pode carregar e descarregar conforme a necessidade, para economizar recursos do dispositivo. Seja lá qual for o projeto, é sempre útil não processar o que a gente não está vendo.

Nessa parte vamos aprender a separar os objetos para os Levels novos que a gente vai criar e, também, habilitar o Level com modo "Lighting Scenario", que serve para usar a iluminação de um conjunto no outro.

Indo para o nosso Level Blueprint do Persistate, vamos ver como carregar e descarregar esse Sub-levels sobre demanda, e depois adicionar um Content Pack para mobile, que já vem cheio de objetos, materiais, texturas otimizados. E, para facilitar o processo, vamos criar um novo cenário com os elementos desse pacotão, sem ter que importar um monte de .fbx, ou ter que criar elemento do zero só para compor nossos set de luz novo que a gente vai usar.

Os builds de Static Light, a gente vai atualizar tanto individualmente, como todos de uma vez, a gente vai ver isso. Em seguida, vamos ver como ajustar a orientação das UVs pelo Material Editor, sem ter que editar o arquivo de imagem original, Jpeg, PNG e etc. E visualizar o material com o preview do objeto final, invés daquelas esferinhas de material que são muito rápidas e úteis, mas deixam a desejar.

Vamos colocar também os Inputs manuais para controlar a câmera sem usar template pronto, como a gente já viu antes, e habilitar o Pawn Control Rotation, que muita gente esquece quando cria os Inputs manualmente e fica travado.

Finalmente, vamos para o que interessa, que é a criar o Widget 3D para controlar a cena toda. No caso aqui, o menu com canvas horizontal, que vai controlar a nossa iluminação alternando entre os Sub-levels que a gente acabou de criar. Vamos alterar as cores dos botões e do Hovered State, que é quando o mouse ou visor apontam para o botão, sem ter que usar nenhum complicado, que nem a gente viu no primeiro curso.

Ainda no nosso menu minimalista, vamos aprender a quebrar as linhas de texto para melhorar a diagramação e, em seguida, vamos habilitar o eventos de controle de mouse e touch desse set de luz pelas blueprints do Widget 3D.

Concluindo, vamos trabalhar com Camera Manager do player, que é o nosso character, e criar uma transição suave entre essas trocas de iluminação, os famosos Fade In e Fade Out de cinema, segurando a execução com delay, para evitar corte seco no nosso efeito de transição.

Já com esse blueprint finalizado, vamos facilitar a visualização e controle de vários valores com os Reroute Nodes. No geral é um projeto bem conciso, mas com features muito úteis para várias aplicações de mobile ou realidade virtual.

Por enquanto é isso. Não esqueça de baixar os arquivos do curso antes, se quiser começar direto desse. O recomendado é que você faça os cursos anteriores para não ficar mais perdido que surdo em bingo. Agora, vamos parar de rodeio, colocar as luvas de boxe, o protetor bucal e voltar para o ringue nesse quarto round Unreal Engine.

Está preparado? Então vamos lá!

Separando Levels e Sub-Levels - Trocando Iluminação

Estamos começando aqui o nosso curso. Você deve ter baixado os arquivos do curso, eu tenho aqui na minha pasta "Cursos”. A gente estava no AutoVR, esse curso é para quem já fez a parte anterior. Então vamos criar a pasta “AutoVR parte 2”, ou similar, e dentro dela você deve ter baixado os arquivos do curso parte 2, que era um zip, alguma coisa próxima disso. Dentro dele tem esse projeto aqui, que eu já abri, já descompactei, “AutoVR_p2_unr”. Então vamos vamos executar o AutoVR parte 2, o project aqui. Clica duas vezes e vamos lá.

Pronto, estamos de volta no nosso projeto de iluminação, mas agora a gente aprender outras coisas. Primeiro, porque tem essa esfera aqui? Eu coloquei ela só para a gente diferenciar do outro projeto, para aparecer no thumbnail. Se tiver dois projetos iguais, vai ver que o que tem bola azul é o projeto novo, a parte dois fica mais fácil de visualizar.

No curso passado a gente fez uma iluminação aqui, os sets de luz, fizemos os cinematics. Mas agora, e se eu quisesse fazer outro set de luz com luzes de outro lugar, de outras cores e etc. que não fosse essa, mas sem perder essa para ter um seletor que eu pudesse clicar e mudar de uma luz para outra, inclusive ver o resultado aqui no nosso cinematics? Como fazer isso? Trabalhando com os Levels, então onde estão os Levels?

Tem aqui o “LeveL: autoVR (Persistent)", a gente vai abrir a janela de Levels aqui no “Window” e vamos em “Levels”. Ele geralmente abre aqui. Ele vai abrir para vocês aqui, vocês dão um doc, vocês coloquem onde quiserem. Eu prefiro que ele fique ali, então clica e arrasta até ele ficar aqui no meio. Eu acho bom aqui porque continua o World Outliner no lugar dele, e não vou ter muitos Levels, eu vou ter dois ou três no máximo aqui, fica fácil para a gente controlar os Levels.

E o que são os Levels? A gente vai aprender agora. Primeiro, a gente tem uma iluminação toda e toda cena aqui no mesmo Level, que é o “autoVR_parte 2”, com o Build de luz dele aqui também. Mas agora vamos criar outro Level. Onde criar o outro Level? Na janela de Levels, que a gente acabou de abrir aqui, do Levels colocamos ali. E vamos no “Level” e “Create New”.

Então, sem nada selecionado aqui, eu criei umas pastinhas só para organizar, se você tivesse um projeto anterior. Eu vou aqui no “Levels” e dou um “Create New”. Quando você pede para criar um novo Level, ele tem que salvar esse Level, uma cena. Então vamos dar o nome para ela de “set_de_luz_A”. Por que “set_de_luz_A”? Vou explicar já, porque essa cena que a gente tem, essa numeração que a gente tem, vai ser a set de luz A. A gente vai criar a set de luz B depois dela.

Então, como separar a luz que está aqui para o Level novo? A gente tem que achar todas as luzes, que eu já coloquei na pastinha “luzes”, “Spotlights”, inclusive “Estudio_teto_luz”, que é esse objeto aqui. Ele também faz luz, então ele faz parte desse set de luz. A gente vai ter eles aqui, clica no primeiro daqui com o “Shift” no último, e já estamos aqui no Level “set_de_luz_A”, que a gente criou ele. O que está em azul é o que está selecionado, estamos trabalhando nele. Clica com direito aqui, vou dar um “Move Selected Actors to Level”. Pronto, não aconteceu nada.

Aconteceu sim. Aqui nesse Level, se você for no olhinho e desligá-lo, some tudo que estava nele. Então é para isso que a gente vai fazer os Levels, para ter um controle de luz separado. O reflexo nós vamos deixar no Level persistente, que é o base, ele não vai não vai mudar para o set de luz, as câmeras também pode deixar, e essa bola azul de referência a gente pode deletar. Então clica nela, pronto. Se quiserem deixar ela, deixem.

Vamos voltar para o nosso Level, olhozinho, “Toogle”, a luz está aqui. Só que, para ele ser o Level de iluminação, tem um iconezinho aqui que é o “Lighting Scenario”, quer dizer, ele vai criar um Build novo de luz para esse Level aqui. Então, se eu habilitar o Lighting Scenario, ele vai usar o Build de luz do Level que a gente tiver usando. Então, quando eu criar outro Level, ele vai usar outro Build de luz e a gente pode alternar entre um Build de luz com essas luzes, que está nesse Level aqui, no luz A, e do luz B também.

Então agora, antes de criar o Level novo, vamos esconder essas câmeras que a gente não vai precisar delas agora, e elas estão só atrapalhando. Então vamos aqui no nosso “Câmeras” e vamos no olhinho desligar todas elas. Desligamos e vamos deixar o reflexo aqui, ou a gente vai tirar o reflexo também. Se quiserem tirar o reflexo, é só desabilitar todos aqui. Clica e arrasta que ele vai desabilitando para a gente não ver.

Vamos criar, então, um novo Level aqui no “Levels”, então “Create New”, e vamos chamar ele de “set_de_luz_B” e “Enter”. Temos o set de luz A, o set de luz B. Eu fiz uma besteira aqui, o Sphere Reflection tem que ficar ligado sim, porque se não ele não aparece aqui, a gente quer ver eles na iluminação. Então deixa só as câmeras desligadas, que elas não fazem diferença, então, pronto.

Luzes, essas luzes são do set de luz A, então eu posso renomear essa pasta para a “set de luz A”. E agora vamos criar as luzes do set de luz B. Clica com direito em “New Folder”, não precisa criar a pasta antes, mas eu faço para organizar. Tudo que eu criei agora já está no set de luz B. Porque a gente está trabalhando nele, está azul aqui. Então, se eu desligar o set de luz A, eu vejo que some as luzes, some até o objeto lá de cima. O Build não está reconstruído, por isso que ele está com essa sombra. A gente vai construir o Build já já.

E vamos agora no nosso set de luz A. Se eu clicar aqui, eu trabalho no set de luz A, e ele mostra tudo de novo. Se eu clicar duas vezes aqui, ele vai para o set de luz B, e é esse que a gente vai trabalhar. Então vou desligar o A, ele demora um pouquinho mesmo, e vamos criar uma luzinha aqui no “World Outliner”, “Modes”, vamos lá no “Lights”, vamos criar uma Spotlight. Então vamos colocar mais Spotlight aqui, e lembra como faz o Pilot? Vamos clicar com direito aqui e dar um Pilot.

O que acontece é que a gente pode controlar a luz daqui, então eu vou por uma luz de frente, do jeito que ela está vamos dar uma Eject aqui, olhar ela de lado. Vamos ver agora a intensidade dela. O World Outliner está com amarelinho, ela está no estacionário, a gente não quer estacionário, a gente quer só Static. A gente já viu isso antes, a gente não vai ver mover ela, então vou deixar no estático, Static. 5.000 está bom, vamos deixar ela meio azulada, o azul que vocês preferirem. Eu coloco o azul extremo, depois eu deixo aqui meio para o meio, para não ficar tão azulão. E primeiro é só isso para a gente ver a diferença de luz.

Vamos ver agora o set de luz B funcionando. Isso aqui está no set de luz B, então vamos clicar e arrastar o set de luz B. O que está aqui na pasta não faz diferença, só faz diferença o que está aqui, mas para organizar visualmente no Outliner é bom deixar umas pastinhas.

Então podemos usar o Build? Sim. O set de luz está desligado, “Build”, qualidade de produção, não, vamos colocar em “Preview”, porque senão vai demorar muito. Eu vou dar um “Preview” e vou dar um “Build”. Quando a gente dá um “Build” com o Level desligado, ele avisa que não vai fazer o Build para aquele set de luz, então a gente vai dar um “Yes” assim mesmo e ele vai pedir mais um Build aqui. Pronto, a gente dá mais um Build assim mesmo.

Ele vai calcular só o set de luz B agora, e vai ignorar o A, senão ele teria calcular duas vezes. Sempre lembre de desligar os Level que vocês não querem atualizar o Builds, senão ele fazer dois Builds, um para cada Level. Pronto, terminou os nossos overlaps de center, que estavam no outro, porque a gente já viu. É tudo pouquinho, então não faz diferença. Vamos fechar.

Porque eu deixo sempre o meu time desligado, então ele não mostra, só quando eu mexo ele mostra. Se quiserem ligar o “Realtime”, eu prefiro não ligar. Não mostrou nada, sim, mostrou um pouquinho. Ele vai mostrando à medida que a gente vai mexendo, porque o “Exposure” está no automático, então ele não está fixo, ele tem que atualizar a exposição como se fosse o nosso olho, a câmera.

E agora temos um set de luz diferente, temos aqui uma luzinha nova, e o set de luz A e o set de luz B. Então vamos ligar o A. Se a gente mostrar os dois vai ficar uma bagunça aqui. Eu vou mostrar a diferença de habilitar agora o “Lighting Scenario” também aqui. E se eu desligar essa, a gente vê, depois de um tempinho passado, a gente vê o set de luz B.

Vamos salvar essa cena, então “Save All”, “Save Selected”. E no próximo vídeo a gente vai ver como controlar melhor esse set de luz e como alternar de um para o outro.

Então até breve e tchau, tchau.

Separando Levels e Sub-Levels - Builds Simultâneos

Continuando, o nosso set de luz B está feito, mas ele está muito sem gracinha, só tem uma luzinha azul aqui.

Então antes da gente melhorar um pouco ele em relação ao primeiro, vamos mexer na organização do projeto aqui. O autoVR, que é a cena base persistente, "Persistent Level", clica duas vezes aqui, que é a nossa é original, está com seu Build Data aqui, e onde estão os mapas que a gente criou, os dois Levels e Sub-levels, os set de luz A e B? Eles estão aqui na pasta "Maps", é automático que ela chame essa pasta de "Maps".

Só que eu quero trabalhar neles toda hora, então eu vou clicar aqui, com o "Shift" no último, e vou arrastá-los para "Content". A gente pode depois dar um Move, não Copy, e a gente pode depois colocar na pasta "Materials", nossa pasta de Levels, tanto faz, mas eu vou deixar tudo na "Content" para ter a visualização aqui do que são esses Builts que a gente está fazendo e ir atualizando aqui.

Então vamos lá. Temos uma luzinha azulada aqui, agora vamos fazer um Duplicate, então clica com direito aqui no "SpotLight" e "Edit", "Duplicate", ou "CTRL + W" no teclado. A gente pega essa luz nova, move ela, "SpotLigh2". Ela caiu no meu autoVR_parte2, então isso é muito importante. Se sem querer você fizer alguma operação de duplicar alguma coisa com o Level selecionado aqui, ele vai colocar nesse Level, então você tem que clicar duas vezes no agora no set de luz B e clicar com o direito aqui, essa aqui selecionada, clica com direito aqui e dá um você vai trazer aqui "Move Selected Actors to Level".

Pronto, agora eles estão no Level, a gente pode dar um "Pilot" aqui e colocar essa luz mais ou menos aqui. Vou dar um Eject e ver para onde vai ficar o Spectra dela aqui. O meu número 1 que eu tinha gravado mais ou menos aqui, está bom ali. Deixa eu tirar esse reflexo da frente só um pouquinho, não mudou muito, e vamos colocar ela branca.

Então, clica aqui, branco puro, 10,000 ao invés de 5, para ela ficar mais forte, estourada Eu vou tirar esse glow daqui, então vamos nos "Settings", "Project Sttings", vamos no "Rendering"e vamos desligar este Bloom, que eu chamo de Glow mas é Bloom, também. "Rendering", então vamos lá tirar o Bloom, vamos tirar também o Occlusion, que estava ligado aqui, vou desligar o Occlusion para ficar mais rápido, e vou desligar o Motion Blur também, e o TemporalAA pode deixar, então o botão do meio aqui fechou.

Ficou tudo um pouco mais rapidinho, branca, e agora vamos criar mais uma luz, então "Alt" e clica, também é outro jeito de duplicar. Já estamos no set de luz B, então está correto, sem problema. Clica com direito, dá um "Pilot"e vamos por ela mais ou menos aqui. É tudo mais ou menos, vocês podem fazer outro set de luz diferente, porque a iluminação é de gosto também, mas eu estou fazendo uma diferente daquela anterior para a gente ter um contraste.

O "g" de gato ajuda a posicionar ela sem esses artefatos na frente, então aperta o "g" de gato, vem no Mode para posicionar o Pilot aqui. O "g" voltou, vamos dar um Eject, e essa luz eu quero amarelada, então eu vou clicar aqui, vamos colocar o amarelo forte, descer um pouco aqui para metade para ficar um amarelado assim. Eu vou em volta do meu um e já ficou diferente, uma luz aqui. Posso dar um Rotate nela, clico nela e dá um Rotate aqui para ela não pegar tanto o piso, assim mais ou menos. Essa aqui, deixa eu ver, desse ângulo está okay. Podemos dar um Build geral com os dois ligados. Então, se eu ligar aqui agora o A, ele mostra todas as luzes juntas, fica essa bagunça, e eu dou um Build aqui. Ele não vai pedir dessa vez, não pediu nada porque ele está fazendo o Build dos dois de uma vez, atualizando tudo, então vamos deixar rolar. Ele calcula o A primeiro, “Building lighting for set_de_luz_A” e depois ele vai fazer o B, então ele vai começar a calcular em seguida. Agora começou o set de luz B, isso é normal porque a gente deixou dois ligados dessa vez. Deixou dois ligados, ele faz um, termina um, e começa o outro. E segue, na edição vai sair tudo isso.

Pronto, terminou o set de luz B, então ele calculou os dois. Ele atualizou esses dois Build Data aqui, do set de luz e do set de luz B, por isso que eu deixei aqui para gente ver. Eu vou dar um “Save All” aqui, os Build novos aqui, vou salvar, pronto, e vamos checar a diferença. Vamos voltar para o nosso lugarzinho o A, “G” de gato para não ver as coisas do Mode, e vamos desligar o A, vai ficar só o B. Pronto, a gente atualiza, mexe um pouco e ele atualiza aqui. Ainda não está o melhor do mundo, mas está diferente, e o A é o que estava vendo lá.

Então, vamos ver se isso aqui funciona com o Cinematics, nossa luz nova, meio esquisitona. Vocês podem refinar isso, mas para a gente aqui está bom agora. Vamos no nosso “Cinematics” na pasta e vamos no nosso “MASTER_LevelSequence”, para quem fez o curso passado já vai saber o que é isso aqui, e vamos colocar essa câmera como “Cinematic Viewport” e marcar aqui o lock de câmera. Então, a nossa animação anterior que a gente tinha, clica aqui, botão para baixo, então Play. Temos o nosso Cinematic atualizado. “G” de gato aqui, eu esqueci de tirar, para cima. “G” de gato, pronto, agora sim, para baixo e foi.

O nosso Cinematic é o mesmo, só que está com o set de luz B agora. Ver se já está bem mais bonito, ele ainda não está. Eu vou dar uma melhorada nisso e no próximo vídeo essa luz vai estar ajustada. Não tem muito porque a gente deixar a luz aqui, eu vou voltar para o Default, porque se eu ficar afinando luzes a gente vai demorar um tempão. É melhor é só falar o que eu fiz e no próximo vídeo a gente tem uma luzinha melhor para o set de luz B.

Pode fechar o “Sequencer”, ele abre sozinho quando a gente entra aqui no “MASTER_LevelSequence”. Vou dar um “Save”de novo e no próximo a gente continua. Até breve e tchau, tchau.

Sobre o curso Unreal Engine parte 4: Controlando Iluminação com Level Streaming

O curso Unreal Engine parte 4: Controlando Iluminação com Level Streaming possui 107 minutos de vídeos, em um total de 33 atividades. Gostou? Conheça nossos outros cursos de 3D em UX & Design, ou leia nossos artigos de UX & Design.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda 3D acessando integralmente esse e outros cursos, comece hoje!

Plus

  • Acesso a TODOS os cursos da plataforma

    Mais de 1200 cursos completamente atualizados, com novos lançamentos todas as semanas, em Programação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

  • Alura Língua (incluindo curso Inglês para Devs)

    Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.

12X
R$85
à vista R$1.020
Matricule-se

Pro

  • Acesso a TODOS os cursos da plataforma

    Mais de 1200 cursos completamente atualizados, com novos lançamentos todas as semanas, em Programação, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.

  • Alura Challenges

    Desafios temáticos para você turbinar seu portfólio. Você aprende na prática, com exercícios e projetos que simulam o dia a dia profissional.

  • Alura Cases

    Webséries exclusivas com discussões avançadas sobre arquitetura de sistemas com profissionais de grandes corporações e startups.

  • Certificado

    Emitimos certificados para atestar que você finalizou nossos cursos e formações.

  • Alura Língua (incluindo curso Inglês para Devs)

    Estude a língua inglesa com um curso 100% focado em tecnologia e expanda seus horizontes profissionais.

12X
R$120
à vista R$1.440
Matricule-se
Conheça os Planos para Empresas

Acesso completo
durante 1 ano

Estude 24h/dia
onde e quando quiser

Novos cursos
todas as semanas