Usando o GIProbe

Introdução

Nota

Este recurso está disponível apenas ao usar o back-end GLES3. Lightmaps Pré-Calculadas(Baked) pode ser usado como alternativa ao usar o renderizador GLES2.

Assim como com Reflection probes, e conforme declarado em Material Spatial, objetos podem mostrar luz refletida ou difusa. As GI Probes são semelhantes às sondas de reflexão, mas usam uma técnica diferente e mais complexa para produzir luz indireta e reflexos.

A força das GI Probes é a luz indireta em tempo real e de alta qualidade. Enquanto a cena precisa de um pré-cálculo rápido para os objetos estáticos que serão usados, as luzes podem ser adicionadas, alteradas ou removidas, e isso será atualizado em tempo real. Objetos dinâmicos que se movem dentro de uma dessas sondas também receberão iluminação indireta da cena automaticamente.

Assim como com ReflectionProbe, GIProbe pode ser misturado (de uma forma um pouco mais limitada), então é possível fornecer iluminação em tempo real para um cenário sem ter que recorrer a mapas de luz.

As principais desvantagens do ''GIProbe'' são:

  • Uma pequena quantidade de vazamento de luz pode ocorrer se o nível não for cuidadosamente projetado. Isso deve ser ajustado pelo artista.

  • Os requisitos de desempenho são maiores do que para mapas de luz, portanto, pode não funcionar corretamente em GPUs integradas de baixo desempenho (pode ser necessário reduzir a resolução).

  • Os reflexos são voxelizados, então eles não parecem tão nítidos quanto com ReflectionProbe. No entanto, eles são volumétricos, portanto, qualquer tamanho ou formato de ambiente funciona para eles. Misturá-los com Screen Space Reflection também funciona bem.

  • Eles consomem consideravelmente mais memória de vídeo do que Reflection Probes, por isso devem ser usados com cuidado nos tamanhos de subdivisão certos.

Configurando

Assim como um ReflectionProbe, basta configurar o GIProbe envolvendo-o em torno da geometria que será afetada.

../../_images/giprobe_wrap.png

Em seguida, certifique-se de habilitar a propriedade Use In Baked Light nas instâncias de geometria no inspetor. Isso é necessário para o GIProbe reconhecer objetos, caso contrário eles serão ignorados:

../../_images/giprobe_bake_property.png

Depois que a geometria estiver configurada, pressione o botão Bake que aparece na barra de ferramentas do editor 3D para iniciar o processo de pré-cálculo:

../../_images/giprobe_bake.png

Aviso

As malhas devem ter paredes suficientemente grossas para evitar vazamentos de luz (evitar paredes unilaterais). Para níveis internos, coloque sua geometria de nível em uma caixa suficientemente grande e una os laços para fechar a malha.

Adicionando luzes

A menos que existam materiais com emissão, o GIProbe não faz nada por padrão. As luzes precisam ser adicionadas à cena para ter um efeito.

O efeito da luz indireta pode ser visualizado rapidamente (recomenda-se que você desligue toda a iluminação do ambiente/céu para ajustar isso, conforme mostrado abaixo):

../../_images/giprobe_indirect.png

Em algumas situações, porém, a luz indireta pode ser muito fraca. As luzes têm um multiplicador indireto para ajustar isso:

../../_images/giprobe_light_indirect.png

E, como a iluminação GIProbe é atualizada em tempo real, esse efeito é imediato:

../../_images/giprobe_indirect_energy_result.png

Reflexões

Para materiais muito metálicos com baixa rugosidade, é possível apreciar reflexos de voxels. Lembre-se de que eles têm muito menos detalhes do que os Reflection Probes ou Screen Space Reflections, mas refletem totalmente volumetricamente.

../../_images/giprobe_voxel_reflections.png

Os GIProbe podem ser facilmente misturados com Reflection Probes e Screen Space Reflections, como uma cadeia de retorno completa de 3 estágios. Isso permite ter reflexões precisas onde necessário:

../../_images/giprobe_ref_blending.png

Interior vs exterior

As GI Probes normalmente permitem a mistura com a iluminação do céu. Isso pode ser desativado ao ativar a configuração Interior.

../../_images/giprobe_interior_setting.png

A diferença fica clara na imagem abaixo, onde a luz do céu deixa de se espalhar por dentro para ser ignorada.

../../_images/giprobe_interior.png

Como edifícios complexos podem misturar interiores com exteriores, a combinação de GIProbes para ambas as partes funciona bem.

Ajustando

GI Probes suportam alguns parâmetros para ajustes:

../../_images/giprobe_tweaking.png
  • Subdiv Subdivisão utilizada para a sonda. O padrão (128) é geralmente bom para áreas pequenas a médias. As subdivisões maiores usam mais memória.

  • Extents Tamanho da sonda. Pode ser ajustado pelo gizmo.

  • Dynamic Range Máxima energia de luz que a sonda pode absorver. Os valores mais elevados permitem a luz mais brilhante, mas com menos detalhes de cor.

  • Energy Multiplicador para toda a sonda. Pode ser usado para tornar a luz indireta mais brilhante (embora seja melhor ajustar isso a partir da própria luz).

  • Propagation Quanta luz se propaga através da sonda internamente.

  • Bias O valor usado para evitar a auto-oclusão ao fazer o traçado do cone do voxel, geralmente deve ser superior a 1.0 (1==tamanho do voxel).

  • Normal Bias Tipo alternativo de bias útil para algumas cenas. Experimente este caso se o bias regular não funcionar.

  • Interior Permite a mistura com a iluminação do céu.

  • Compress Atualmente quebrado. Não use.

  • Data Contém os dados da luz baked após o pré-calculo. Se você estiver salvando os dados, eles devem ser salvos como um arquivo .res.

Qualidade

GIProbe são bastante exigentes. É possível usar rastreamento de cone de voxel de qualidade inferior em troca de mais desempenho.

../../_images/giprobe_quality.png