Cave: Guia de Introdução
Cave: Guia de Introdução
Lesson 11 of 19 • 10 XP
Keep your place in this quest
Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.
Entity Templates são o sistema de entidades reutilizáveis do Cave.
Eles permitem que você construa uma configuração de entidade uma vez, salve-a como um asset e coloque instâncias dela em várias cenas.

Se você vem de outro engine, pode pensar em Entity Templates como o fluxo de trabalho tipo prefab do Cave. Se é novo em engines de jogos, pense neles como receitas de objetos reutilizáveis.
Ao invés de reconstruir a mesma porta, inimigo, item colecionável ou widget de UI toda vez, você cria a configuração uma vez e reutiliza onde precisar.
O Que São Entity Templates?
Um Entity Template é um asset que armazena uma estrutura de entidade.
Ele pode incluir:
- Uma entidade raiz (todo Template DEVE ter uma e apenas uma Entidade Raiz).
- Entidades filhas.
- Componentes.
- Configurações dos componentes.
- Referências a assets.
- Propriedades.
- Tags.
Quando você coloca um template em uma cena, o Cave cria uma instância daquele template.
A instância usa o asset do template como base, o que significa que mantém a mesma estrutura interna enquanto existe como um objeto posicionado em uma cena específica.
Por Que Entity Templates São Importantes
Muitos objetos de jogo não são apenas uma malha.
Um item colecionável pode incluir:
- Um modelo visível.
- Um gatilho.
- Uma luz.
- Um efeito de partículas.
- Um som.
- Lógica que concede a recompensa.
Um template permite manter toda essa configuração agrupada.
Use Entity Templates para coisas como:
- Personagens jogadores.
- Inimigos.
- Itens colecionáveis.
- Portas.
- Balas.
- Veículos.
- Portais.
- Volumes de dano.
- Objetos decorativos.
- Peças de UI.
- Objetos de gameplay reutilizáveis.
Templates economizam tempo e mantêm objetos repetidos consistentes. Se todo item de vida vem do mesmo template, você pode melhorar o template uma vez e manter o projeto organizado.
Criando um Entity Template
Você pode criar um Entity Template a partir do Asset Browser, ou promover uma entidade existente na cena a template clicando com o botão direito no Scene Graph ou pressionando Ctrl + T para promover a entidade selecionada.
Um fluxo comum é construir o objeto diretamente em uma cena primeiro, testar, e só depois transformá-lo em um template quando a configuração estiver útil. Funciona assim:
- Construa uma entidade em uma cena.
- Adicione os componentes e filhos necessários.
- Ajuste suas configurações.
- Promova-a a Entity Template.
- Reutilize esse template na mesma cena ou em outras.
Mas assim que você tiver certeza que vai reutilizar algo como jogador, inimigos, power-ups, etc., é uma boa prática criar o template imediatamente, seja no Asset Browser ou promovendo como sugerido.
No Scene Graph, o menu de edição rápida pode promover uma entidade a template. O atalho mostrado pelo editor é Ctrl + T.
Asset de Template vs Instância de Template
É útil separar o asset do template da instância colocada.
| Conceito | Significado |
|---|---|
| Asset de template | A configuração reutilizável armazenada no Asset Browser. |
| Instância de template | Uma cópia colocada daquele template dentro de uma cena. |
O asset define a estrutura reutilizável.
A instância é onde essa estrutura aparece em uma cena específica.
Editando um Entity Template
Templates são editados como seus próprios assets.
Quando você abre um template para edição, o Cave troca para uma cena de edição do template para que você edite diretamente a estrutura interna da entidade do template.
A ideia importante é:
> O template possui sua hierarquia interna.
As instâncias na cena usam essa hierarquia, mas não possuem diretamente cada filho dentro dela. Isso mantém todas as instâncias conectadas à mesma configuração reutilizável.
Vale mencionar que isso deixa de valer quando o jogo começa, pois ao iniciar, toda a hierarquia do template fica disponível para você customizar. Então, ao programar a lógica do jogo, você pode interagir com a instância do template, filhos, etc.
Por exemplo, se abrir um template Enemy e adicionar um novo filho Health Bar nele, todas as instâncias daquele template de inimigo se beneficiam da estrutura atualizada.
Por Que Filhos de Template Não São Editados Diretamente na Cena
Quando uma instância de template é colocada em uma cena, os filhos internos ainda pertencem ao template. Por isso o Cave protege esses filhos de edição direta na cena.
Por exemplo, se um template de inimigo contém:
Enemy
Body Mesh
Detection Area
Health Bar
Você deve editar esses filhos internos dentro do template, não como objetos separados pertencentes à cena.
Isso mantém a consistência das instâncias. Se cada inimigo colocado pudesse editar livremente seus filhos, o template deixaria de ser um objeto reutilizável confiável.
Instanciando um Template em uma Cena
Depois que um template existe, você pode colocá-lo em uma cena.
Por exemplo, você pode arrastar um template do Asset Browser para a 3D View.
Quando o template é colocado:
- Ele aparece no Scene Graph como uma instância de template.
- O Cave usa uma cor diferente para o template (verde) na instância.
- A instância mantém a conexão com o asset do template.

Do ponto de vista do fluxo de trabalho, essa é uma das formas mais rápidas de construir níveis. Você cria uma porta, item, inimigo ou objeto reutilizável uma vez, então coloca instâncias onde o nível precisar.
Customização Local do Template
Instâncias de templates ainda podem ser customizadas localmente:

A principal forma de fazer isso é através de propriedades expostas pela entidade raiz do template.
Isso oferece um equilíbrio útil:
- A estrutura permanece reutilizável.
- Cada instância colocada pode ter seus próprios valores.
Por exemplo, vários inimigos podem usar o mesmo template, mas cada instância tem saúde, velocidade, configurações de patrulha ou opções de comportamento diferentes.
Exemplos de Propriedades Locais de Template
Propriedades úteis locais incluem:
| Propriedade | Uso Exemplo |
|---|---|
| Saúde do inimigo | Fazer um inimigo mais fraco ou mais forte. |
| Velocidade do inimigo | Criar variantes lentas e rápidas. |
| Quantidade de dano | Reutilizar uma armadilha com diferentes níveis de perigo. |
| Cena alvo do portal | Enviar cada portal para uma cena diferente. |
| Valor do item colecionável | Fazer moedas, gems ou recompensas valerem quantias diferentes. |
| Estado de porta trancada | Reutilizar uma porta para estados trancado e destrancado. |
| Texto da UI | Reutilizar um widget de UI com rótulos diferentes. |
Por exemplo, um template Portal pode ser usado em vários lugares se cada portal colocado tiver uma propriedade local que escolha a cena alvo.
Exemplos de Templates em Projetos Iniciais
Projetos iniciais podem incluir vários templates úteis dependendo das opções selecionadas.
Você pode encontrar exemplos como:
- Template de jogador.
- Template de inimigo.
- Template de dano.
- Template de portal.
- Template de veículo.
- Peças de gameplay reutilizáveis.
Vale a pena inspecionar esses templates. Abra-os, analise a hierarquia, examine os componentes e veja quais propriedades estão expostas.
O conteúdo gerado não está só para ser usado, está também para lhe ensinar como objetos reais do Cave podem ser construídos.
Bons Casos de Uso para Entity Templates
Crie um template quando um objeto for:
- Repetido muitas vezes.
- Usado em várias cenas.
- Construído a partir de múltiplos componentes.
- Construído a partir de múltiplas entidades filhas.
- Projetado para se comportar de forma consistente.
- Útil como peça de gameplay reutilizável.
Bons candidatos incluem:
- Inimigos.
- NPCs.
- Armas.
- Projetéis.
- Itens colecionáveis.
- Portas.
- Checkpoints.
- Armadilhas.
- Portais de nível.
- Veículos.
- Props destruíveis.
- Widgets de UI.
- Peças reutilizáveis de design de nível.
Quanto mais você reutiliza um objeto, mais valioso um template se torna.
Quando Não Usar um Template
Nem tudo precisa ser um template.
Um objeto único que aparece uma vez e só faz sentido em uma cena pode ficar como uma entidade normal na cena.
Por exemplo:
- Um objeto de cena único para uma cinemática.
- Um gatilho especial específico de nível.
- Uma decoração única que nunca será reutilizada.
- Um objeto temporário de teste.
Templates são poderosos, mas são mais úteis quando o reaproveitamento realmente importa. Transformar tudo em template muito cedo pode dificultar o gerenciamento do projeto, não facilitar.
Uma Regra Simples para Templates
Se você se pegar copiando a mesma configuração de entidade mais de uma vez, considere transformá-la em um Entity Template.
Esse hábito pode salvar muito tempo e manter seu projeto mais organizado à medida que cresce.