---
title: "Luz"
version: snapshot-2026-10-28
engineGeneration: astra-current
language: C#
status: source-reviewed
reviewedAt: 2026-10-28
appRelease: "0.4.0-preview.20261028"
runtimeVerified: false
platformEvidence: []
url: https://astraengine.com.br/pt-br/snapshot-2026-10-28/componentes/astra-render-light/
---
# Luz
Direcional, pontual ou spot
**Família:** Luz · **Grupo:** Luzes · **Identificador:** `astra.render.light` · **Payload:** 4
:::note[Escopo da evidência]
Este contrato foi extraído dos descritores compilados da engine, incluindo padrões resolvidos. A presença do contrato não substitui a validação do comportamento em um aparelho.
:::
## Para que usar
Luz direcional, pontual ou spot, como o Light da Unity: modo Tempo real, Misto ou Assado, sombra configurada na própria luz, máscara de culling e camadas de renderização.
Crie por + › Luzes. Em Sombra escolha Sem sombra, Dura ou Suave, a Força e os desvios. Modo Assado entra no lightmap e sai do tempo real quando houver lightmap; Misto assa só o rebote. Máscara de culling e Camadas de renderização escolhem o que a luz ilumina.
## Vindo de outra engine
Na Unity, o conceito mais próximo está em [Light](https://docs.unity3d.com/6000.0/Documentation/Manual/class-Light.html). A Astra estudou essa referência; os campos e o comportamento são os desta página, sem paridade garantida. Palavras que a busca de Adicionar componente aceita: `Light`, `DirectionalLight3D`, `OmniLight3D`, `SpotLight3D`, `Point`, `Spot`, `Sol`.
## Criar e configurar
Hierarquia → selecione o objeto → Inspector → Adicionar componente → **Luz** / **Luzes** → **Luz**.
O schema permite uma única instância desse tipo por objeto. A fachada C# correspondente é [Astra.Components.Light](/pt-br/snapshot-2026-10-28/api/astra-components-light/).
A direcional mais brilhante (ou a Fonte do sol da Iluminação da cena) é o sol, com cascatas e disco no céu; as outras viram luzes adicionais sem sombra. Cada objeto soma até 8 luzes (4 no nível C). Ângulos do spot são a abertura total; a cor é sRGB.
**Guia relacionado:** [Céu, luz e materiais](/pt-br/snapshot-2026-10-06/versoes/preview-0-4-0/#céu-luz-e-materiais)
## Exemplo de uso
Uma segunda direcional azulada, intensidade 0,3, sem sombra, ilumina o lado escuro das casas sem apagar o sol. Um poste com Modo Assado e sombra suave aparece no lightmap da praça e libera uma das luzes por objeto.
## Dependências
Nenhuma regra adicional declarada no schema deste componente.
## Conflitos
Nenhuma regra adicional declarada no schema deste componente.
## Edição e ciclo de vida
| Operação | Contrato |
|---|---|
| Adicionar/remover em Play | ponto seguro |
| Alterar propriedades em Play | ponto seguro |
| Múltiplas instâncias | Não |
| Versão do payload | 4 |
Alterações em ponto seguro são aplicadas entre passos da simulação. Um componente exigido por outro não pode ser removido enquanto a dependência existir. Salvar a cena autoral e modificar o mundo de Play são operações distintas; veja [Play e cena autoral](/pt-br/snapshot-2026-10-06/conceitos/play-e-cena-autoral/).
## Propriedades
Valores abaixo são resolvidos pelo descritor de um componente recém-criado. Campos por slot dependem dos recursos atribuídos. Um campo sem padrão significa que o descritor não fornece um valor independente de contexto.
### Emissão
| Propriedade | Tipo / unidade | Padrão | Domínio |
|---|---|---|---|
| [**Cor R**](#field-color-r)
`color.r` | número | 1 | 0 … 1 |
| [**Cor G**](#field-color-g)
`color.g` | número | 1 | 0 … 1 |
| [**Cor B**](#field-color-b)
`color.b` | número | 1 | 0 … 1 |
| [**Temperatura**](#field-color-temperature)
`color_temperature` | número · K | 6500 | 1667 … 25000 |
| [**Intensidade**](#field-intensity)
`intensity` | número | 1000 | 0 … 1000000 |
| [**Filtro por temperatura**](#field-use-color-temperature)
`use_color_temperature` | booleano | falso | verdadeiro \| falso |
| [**Unidade**](#field-unit)
`unit` | enumeração | Lux / lúmen | Relativa (sem unidade) \| Lux / candela \| Lux / lúmen |
Cor R · color.r
**Onde:** Inspector → **Luz** → **Emissão** → **Cor R**.
**Uso e efeito:** Componente sRGB, o mesmo número do seletor de cor; o motor converte para linear
**Valor:** 1 · **Tipo:** número · **Domínio:** 0 … 1.
Aceita tween numérico via contrato de propriedade.
Cor G · color.g
**Onde:** Inspector → **Luz** → **Emissão** → **Cor G**.
**Uso e efeito:** Componente sRGB, o mesmo número do seletor de cor; o motor converte para linear
**Valor:** 1 · **Tipo:** número · **Domínio:** 0 … 1.
Aceita tween numérico via contrato de propriedade.
Cor B · color.b
**Onde:** Inspector → **Luz** → **Emissão** → **Cor B**.
**Uso e efeito:** Componente sRGB, o mesmo número do seletor de cor; o motor converte para linear
**Valor:** 1 · **Tipo:** número · **Domínio:** 0 … 1.
Aceita tween numérico via contrato de propriedade.
Temperatura · color_temperature
**Onde:** Inspector → **Luz** → **Emissão** → **Temperatura**.
**Uso e efeito:** Multiplicada pela cor linear; D65 é 6500 K
**Valor:** 6500 · **Tipo:** número · **Unidade:** K · **Domínio:** 1667 … 25000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade. Capacidade necessária: `render.light.temperature`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Intensidade · intensity
**Onde:** Inspector → **Luz** → **Emissão** → **Intensidade**.
**Uso e efeito:** Energia da luz na unidade selecionada; compare com distância/alcance constantes.
**Valor:** 1000 · **Tipo:** número · **Domínio:** 0 … 1000000.
Aceita tween numérico via contrato de propriedade.
Filtro por temperatura · use_color_temperature
**Onde:** Inspector → **Luz** → **Emissão** → **Filtro por temperatura**.
**Uso e efeito:** Multiplica a cor pela temperatura de corpo negro
**Valor:** falso · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.
Capacidade necessária: `render.light.temperature`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Unidade · unit
**Onde:** Inspector → **Luz** → **Emissão** → **Unidade**.
**Uso e efeito:** Relativa é a intensidade da URP; lux, candela e lúmen são as unidades físicas da HDRP
**Valor:** Lux / lúmen · **Tipo:** enumeração · **Domínio:** Relativa (sem unidade) \| Lux / candela \| Lux / lúmen.
Capacidade necessária: `render.light.photometric`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
### Volume
| Propriedade | Tipo / unidade | Padrão | Domínio |
|---|---|---|---|
| [**Alcance**](#field-range)
`range` | número · m | 10 | 0.01 … 1000 |
| [**Ângulo do spot**](#field-spot-angle)
`spot_angle` | número · ° | 30 | 1 … 179 |
| [**Ângulo interno do spot**](#field-inner-spot-angle)
`inner_spot_angle` | número · ° | 21.799999 | 0 … 179 |
Alcance · range
**Onde:** Inspector → **Luz** → **Volume** → **Alcance**.
**Uso e efeito:** Alcance de contribuição da luz pontual/spot.
**Valor:** 10 · **Tipo:** número · **Unidade:** m · **Domínio:** 0.01 … 1000.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade.
Ângulo do spot · spot_angle
**Onde:** Inspector → **Luz** → **Volume** → **Ângulo do spot**.
**Uso e efeito:** Abertura total do cone (Spot Angle); a luz zera na borda
**Valor:** 30 · **Tipo:** número · **Unidade:** ° · **Domínio:** 1 … 179.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade. Capacidade necessária: `render.light.punctual`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Ângulo interno do spot · inner_spot_angle
**Onde:** Inspector → **Luz** → **Volume** → **Ângulo interno do spot**.
**Uso e efeito:** Abertura total do miolo com intensidade plena (Inner Spot Angle)
**Valor:** 21.799999 · **Tipo:** número · **Unidade:** ° · **Domínio:** 0 … 179.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade. Capacidade necessária: `render.light.punctual`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
### Sombra
| Propriedade | Tipo / unidade | Padrão | Domínio |
|---|---|---|---|
| [**Força da sombra**](#field-shadow-strength)
`shadow_strength` | número | 1 | 0 … 1 |
| [**Desvio**](#field-shadow-bias)
`shadow_bias` | número · texel | 0.05 | 0 … 2 |
| [**Desvio na normal**](#field-shadow-normal-bias)
`shadow_normal_bias` | número · texel | 0.4 | 0 … 2 |
| [**Plano próximo da sombra**](#field-shadow-near-plane)
`shadow_near_plane` | número · m | 0.2 | 0.01 … 10 |
| [**Tipo de sombra**](#field-shadow-mode)
`shadow_mode` | enumeração | Sem sombra | Sem sombra \| Sombra dura \| Sombra suave |
| [**Resolução da sombra**](#field-shadow-resolution)
`shadow_resolution` | enumeração | Automática | Automática \| Baixa \| Média \| Alta \| Muito alta |
Força da sombra · shadow_strength
**Onde:** Inspector → **Luz** → **Sombra** → **Força da sombra**.
**Uso e efeito:** 1 é sombra opaca; abaixo disso a luz vaza pelo oclusor
**Valor:** 1 · **Tipo:** número · **Domínio:** 0 … 1.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade. Atlas em quadtree: spot ocupa um mapa, pontual seis faces Capacidade necessária: `render.shadow.punctual`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Desvio · shadow_bias
**Onde:** Inspector → **Luz** → **Sombra** → **Desvio**.
**Uso e efeito:** Afasta a comparação de profundidade e some com a acne; 0,05 é o desvio da política do aparelho
**Valor:** 0.05 · **Tipo:** número · **Unidade:** texel · **Domínio:** 0 … 2.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade. Atlas em quadtree: spot ocupa um mapa, pontual seis faces Capacidade necessária: `render.shadow.punctual`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Desvio na normal · shadow_normal_bias
**Onde:** Inspector → **Luz** → **Sombra** → **Desvio na normal**.
**Uso e efeito:** Desloca a amostra ao longo da normal; 0,4 é o deslocamento da política do aparelho
**Valor:** 0.4 · **Tipo:** número · **Unidade:** texel · **Domínio:** 0 … 2.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade. Atlas em quadtree: spot ocupa um mapa, pontual seis faces Capacidade necessária: `render.shadow.punctual`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Plano próximo da sombra · shadow_near_plane
**Onde:** Inspector → **Luz** → **Sombra** → **Plano próximo da sombra**.
**Uso e efeito:** Perto demais perde precisão; longe demais corta o que está junto da lâmpada
**Valor:** 0.2 · **Tipo:** número · **Unidade:** m · **Domínio:** 0.01 … 10.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade. Atlas em quadtree: spot ocupa um mapa, pontual seis faces Capacidade necessária: `render.shadow.punctual`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Tipo de sombra · shadow_mode
**Onde:** Inspector → **Luz** → **Sombra** → **Tipo de sombra**.
**Uso e efeito:** Dura usa uma busca; suave filtra a borda. A política do aparelho pode desligar a sombra
**Valor:** Sem sombra · **Tipo:** enumeração · **Domínio:** Sem sombra \| Sombra dura \| Sombra suave.
Atlas em quadtree: spot ocupa um mapa, pontual seis faces Capacidade necessária: `render.shadow.punctual`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Resolução da sombra · shadow_resolution
**Onde:** Inspector → **Luz** → **Sombra** → **Resolução da sombra**.
**Uso e efeito:** Automática escolhe pelo tamanho da luz na tela
**Valor:** Automática · **Tipo:** enumeração · **Domínio:** Automática \| Baixa \| Média \| Alta \| Muito alta.
Campo condicional: o modo/forma/recurso selecionado controla a disponibilidade. Atlas em quadtree: spot ocupa um mapa, pontual seis faces Capacidade necessária: `render.shadow.punctual`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
### Geral
| Propriedade | Tipo / unidade | Padrão | Domínio |
|---|---|---|---|
| [**Acesa**](#field-enabled)
`enabled` | booleano | verdadeiro | verdadeiro \| falso |
| [**Tipo**](#field-kind)
`kind` | enumeração | Pontual | Direcional \| Pontual \| Spot |
| [**Modo**](#field-mode)
`mode` | enumeração | Tempo real | Tempo real \| Misto \| Assado |
Acesa · enabled
**Onde:** Inspector → **Luz** → **Geral** → **Acesa**.
**Uso e efeito:** Ativa a contribuição desta luz
**Valor:** verdadeiro · **Tipo:** booleano · **Domínio:** verdadeiro \| falso.
Tipo · kind
**Onde:** Inspector → **Luz** → **Geral** → **Tipo**.
**Uso e efeito:** Direcional ilumina a cena inteira numa direção; pontual e spot partem de um ponto
**Valor:** Pontual · **Tipo:** enumeração · **Domínio:** Direcional \| Pontual \| Spot.
Modo · mode
**Onde:** Inspector → **Luz** → **Geral** → **Modo**.
**Uso e efeito:** Tempo real ilumina a cada quadro; Misto assa só o rebote; Assado grava luz e rebote no lightmap
**Valor:** Tempo real · **Tipo:** enumeração · **Domínio:** Tempo real \| Misto \| Assado.
Assado: direta e rebote no lightmap; Misto: só o rebote; o sol da Hora do dia fica sempre em tempo real Capacidade necessária: `render.light.baked`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
### Renderização
| Propriedade | Tipo / unidade | Padrão | Domínio |
|---|---|---|---|
| [**Máscara de culling**](#field-culling-mask)
`culling_mask` | enumeração | Tudo | máscara: Padrão + Camada 1 + Camada 2 + Camada 3 + Camada 4 + Camada 5 + Camada 6 + Camada 7 + Camada 8 + Camada 9 + Camada 10 + Camada 11 + Camada 12 + Camada 13 + Camada 14 + Camada 15 + Camada 16 + Camada 17 + Camada 18 + Camada 19 + Camada 20 + Camada 21 + Camada 22 + Camada 23 + Camada 24 + Camada 25 + Camada 26 + Camada 27 + Camada 28 + Camada 29 + Camada 30 + Camada 31 |
| [**Camadas de renderização**](#field-rendering-layers)
`rendering_layers` | enumeração | Padrão | máscara: Padrão + Camada 1 + Camada 2 + Camada 3 + Camada 4 + Camada 5 + Camada 6 + Camada 7 |
Máscara de culling · culling_mask
**Onde:** Inspector → **Luz** → **Renderização** → **Máscara de culling**.
**Uso e efeito:** Camadas de objeto que esta luz ilumina
**Valor:** Tudo · **Tipo:** enumeração · **Domínio:** máscara: Padrão + Camada 1 + Camada 2 + Camada 3 + Camada 4 + Camada 5 + Camada 6 + Camada 7 + Camada 8 + Camada 9 + Camada 10 + Camada 11 + Camada 12 + Camada 13 + Camada 14 + Camada 15 + Camada 16 + Camada 17 + Camada 18 + Camada 19 + Camada 20 + Camada 21 + Camada 22 + Camada 23 + Camada 24 + Camada 25 + Camada 26 + Camada 27 + Camada 28 + Camada 29 + Camada 30 + Camada 31.
Capacidade necessária: `render.light.layers`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
Camadas de renderização · rendering_layers
**Onde:** Inspector → **Luz** → **Renderização** → **Camadas de renderização**.
**Uso e efeito:** Ilumina só renderers com uma camada de renderização em comum
**Valor:** Padrão · **Tipo:** enumeração · **Domínio:** máscara: Padrão + Camada 1 + Camada 2 + Camada 3 + Camada 4 + Camada 5 + Camada 6 + Camada 7.
Capacidade necessária: `render.light.layers`; veja [estado do renderer](/pt-br/snapshot-2026-10-06/roadmap/capacidades-do-renderer/).
## Roadmap deste componente
[Renderização e materiais](/pt-br/snapshot-2026-10-06/roadmap/renderizacao-e-materiais/). Presente na 0.4.0. Cookie e luz de Área não existem.
Os campos acima pertencem ao contrato existente; novas funções dependem do fechamento da família. Não há datas individuais prometidas para cada propriedade.
## Conferir na sua cena
1. Crie **Luz** pelo fluxo indicado e resolva as dependências.
2. Altere uma propriedade por vez e observe o efeito esperado na cena.
3. Salve, reabra e confira os valores autorais.
4. Entre em Play e verifique o comportamento com os recursos reais do projeto.
5. Pare o Play e confira a cena autoral.
Este é um roteiro de conferência; não representa um teste executado nesta publicação.
## Limitações da referência
A tabela cobre os tipos de propriedade disponíveis no descritor de reflexão. Não presume persistência de campos transitórios, equivalência com outras engines ou suporte em todos os aparelhos. Recursos, coleções e operações podem exigir APIs específicas.
**Referência de arquitetura registrada pela engine:** [documentação oficial](https://docs.unity3d.com/6000.0/Documentation/Manual/class-Light.html). Essa referência não representa paridade funcional.