Cave: Guia de Introdução
Entendendo Entidades
Lesson 9 of 19 • 25 XP
Keep your place in this quest
Log in or sign up for free to subscribe, follow lesson progress, and access more learning content.
Entendendo Entidades
Agora vamos entender o conceito de uma Entidade no Cave. Entidades são os objetos básicos dentro de uma cena do Cave.
Se uma cena é um nível, menu ou espaço de teste, entidades são as coisas que existem dentro desse espaço. Por exemplo, um jogador, inimigo, porta, luz, câmera, gatilho, botão de UI, fonte de som e pasta podem ser todas entidades.
Nesta lição, você aprenderá sobre:
- Nomes.
- IDs.
- Estado ativo.
- Hierarquia.
- Pastas.
- Ordem hierárquica.
- Tags e propriedades.
- Instâncias de templates.
Esses detalhes podem parecer pequenos, mas fazem uma grande diferença quando uma cena cresce de alguns objetos para um nível real.
O Que É uma Entidade?
Uma Entidade é um objeto em uma cena.
Uma entidade pode representar:
- Um objeto 3D visível.
- Um auxiliar invisível.
- Um gatilho de jogabilidade.
- Um elemento de UI.
- Uma fonte de som.
- Ou simplesmente uma pasta usada para organização.

Por exemplo, uma caixa é uma entidade visível. Um ponto de spawn pode ser invisível durante a jogabilidade, mas ainda é uma entidade porque marca onde algo deve acontecer.
O Cave mantém essa ideia simples: as cenas são construídas a partir de entidades.
Entidades São Contêineres de Componentes
Entidades não fazem muito sozinhas, suas funcionalidades vêm de componentes. Por exemplo:
| Entidade | Componentes Que Pode Ter |
|---|---|
| Caixa | Transform, Mesh, Rigid Body. |
| Jogador | Transform, Character, Camera, Python, Audio. |
| Porta | Transform, Mesh, Rigid Body, Logic Bricks. |
| Tocha | Transform, Mesh, Light, Audio. |
| Botão | Transform, UI Element, Logic Bricks ou Python. |
| --- |
É por isso que as entidades são flexíveis. Uma porta não é um tipo de objeto codificado separadamente. É uma entidade feita a partir de peças: uma malha para visualizá-la, colisão para bloquear o jogador e lógica para abri-la ou fechá-la.
Quando você entende isso, construir objetos se torna mais prático. Você para de perguntar "qual tipo de objeto eu preciso?" e começa a perguntar "quais componentes essa entidade precisa?"
Nomes de Entidades
Toda entidade tem um nome. Você pode renomear uma entidade a partir do seu menu de edição rápida no Scene Graph ou na aba Properties.
Vale mencionar que os nomes são para humanos primeiro:
- Eles facilitam a leitura do Scene Graph.
- Eles tornam o depuramento mais fácil.
- Eles tornam mais fácil falar sobre objetos com colegas de equipe.
- Eles te ajudam a entender sua própria cena mais tarde.
O Cave não exige que cada nome de entidade seja único. Múltiplas entidades podem compartilhar o mesmo nome, o que é útil para objetos repetidos, como pedras, moedas, caixas ou inimigos.
No entanto, não trate o nome como o único identificador confiável para uma entidade.
Nomes bons são simples e descritivos:
| Nome Fraco | Nome Melhor |
|---|---|
Mesh |
Caixa de Madeira |
Vazio |
Início do Jogador |
Luz |
Luz da Entrada da Caverna |
Pasta |
Grupo de Inimigos |
O objetivo não é tornar os nomes elaborados. O objetivo é tornar a cena legível.
Os nomes das entidades também podem ser usados em código para carregar uma entidade específica da sua cena, mas como você já sabe que múltiplas entidades podem ter o mesmo nome, você também deve estar ciente de que, se você carregar uma entidade pelo seu nome, se houver múltiplas entidades com esse nome, isso pode levar a um comportamento indefinido porque você não tem garantia de qual entidade a cena retornará para esse nome. Ela retornará a primeira que encontrar ao buscar sua consulta. Portanto, se for importante para você obter um objeto específico através do código, como o jogador, certifique-se de dar um nome único a ele.
IDs de Entidades
O Cave rastreia entidades internamente com IDs exclusivos.
Você geralmente não precisa editar ou se preocupar com esses IDs. Eles existem para que o motor possa identificar entidades de forma confiável, mesmo quando os nomes se repetem. De fato, IDs únicos são imutáveis, o que significa que você não pode alterá-los. Eles são atribuídos automaticamente pelo motor.
Lembre-se disto:
| Coisa | Propósito |
|---|---|
| Nome | Ajuda você a ler a cena. |
| ID | Ajuda o Cave a rastrear o objeto internamente. |
Se dois inimigos se chamam Inimigo, o Cave ainda pode diferenciá-los nos bastidores.
Estado Ativo da Entidade
Entidades podem estar ativas ou inativas.

No Scene Graph e na aba Properties, isso é mostrado com um controle de ativo em estilo olho.
| Estado | Significado |
|---|---|
| Ativo | A entidade participa da cena normalmente. |
| Inativo | A entidade permanece na cena, mas está desativada. |
Dependendo da entidade e seus componentes, desativar pode afetar:
- Renderização.
- Física.
- Lógica.
- Atualizações em tempo de execução.
- Comportamento de componentes.
Uma entidade desativada não terá nenhuma de suas atualizações de componente chamadas em nenhum momento, e no momento em que você desativar uma entidade, ela também chamará o método de fim do componente, e quando você a ativar novamente, chamará o método de início do componente.
Você pode assumir com segurança que uma entidade desativada não contribuirá para os cálculos físicos da cena, lógica, gatilhos, etc. A menos que você consulte manualmente essas entidades da cena e ignore o fato de que estão desativadas, é claro.
A ideia prática é simples: inativo significa "mantido aqui, mas não participando no momento."
Desativando vs. Deletando
Desativar e deletar não são a mesma coisa.
| Ação | Resultado |
|---|---|
| Desativar | Mantém a entidade na cena, mas a desliga. |
| Deletar | Remove a entidade da cena. |
Desative uma entidade quando você pode querer usá-la novamente mais tarde. Deletar uma entidade quando você tiver certeza de que ela deve ser removida.
Para testes, desativar é frequentemente mais seguro. Se um encontro com inimigos parecer muito difícil, desative alguns inimigos primeiro e teste o nível. Se a mudança parecer certa, você pode limpar a cena depois.
Hierarquia de Entidades
Entidades podem ser parentadas a outras entidades.
Quando uma entidade tem um pai, ela se torna parte da hierarquia desse pai. Se você mover o pai, os filhos se movem junto com ele.
A parentagem é útil para:
- Uma espada anexada a um personagem.
- Uma luz anexada a uma tocha.
- Uma câmera anexada a um veículo.
- Um grupo de props organizados sob uma pasta.
- Elementos de UI agrupados sob um painel pai.
A parentagem também afeta a transformada. A transformada de uma entidade filha é avaliada em relação à hierarquia do pai.
Esta é uma das maneiras mais simples de manter objetos relacionados juntos.
Pastas de Entidades
Entidades de pasta são usadas para organização. Elas são especialmente úteis quando sua cena começa a conter muitos objetos.
Por definição, o que torna uma entidade uma pasta é praticamente a ausência de componentes nela, particularmente um Transform e um componente de Elemento de UI, porque se uma entidade não tem uma transformada no mundo e não tem um elemento de UI, provavelmente será usada como uma pasta. Mas isso é mais uma convenção de nomenclatura, então mantenha isso em mente.
Grupos de pastas comuns incluem:
- Ambiente.
- Gatilhos de Jogabilidade.
- Inimigos.
- Props.
- Iluminação.
- UI.
- Áudio.
- Auxiliares de Depuração.
Pastas não são apenas sobre organização. Um Scene Graph limpo ajuda você a trabalhar mais rápido porque você pode encontrar o objeto que precisa sem procurar entre centenas de entidades soltas.
Ordem Hierárquica de Entidades
A ordem das entidades no Scene Graph é importante para organização, e em alguns casos pode importar para como as coisas são processadas ou exibidas.
Se você abrir uma pasta e ver a estrutura abaixo, isso é mais difícil de escanear:
Caixa
Jogador
Luz
Inimigo
Câmera
Pedra
Gatilho
Mas isso é mais fácil:
Jogador
Câmera
Iluminação
Inimigos
Ambiente
Gatilhos de Jogabilidade
O objetivo não é tornar a hierarquia elaborada, mas torná-la útil.
Se você pode abrir uma cena depois de uma semana distante e imediatamente entender onde estão os objetos importantes, sua hierarquia está fazendo seu trabalho.
Nota importante aqui: devido à forma como o motor otimiza seu grafo interno de cena, a ordem em que as entidades aparecem no nível superior, ou seja, entidades que não têm nenhum pai, será aleatória, mas entidades filhas, os filhos, podem ter um conjunto de ordem específica, e você pode organizá-las clicando com o botão direito em cada entidade individual no editor e movendo-a para cima ou para baixo ou para o topo ou para a parte inferior.
Propriedades e Tags de Entidades
Entidades podem armazenar propriedades e tags personalizadas.
| Recurso | Propósito |
|---|---|
| Propriedade | Armazena um valor editável. |
| Tag | Adiciona um rótulo usado para identificação ou agrupamento. |
Por exemplo, um inimigo pode ter:
- Uma tag
Dañável. - Uma propriedade
saúde. - Uma propriedade
equipe. - Uma propriedade
raioPatrulha.
Scripts e lógica podem usar esses dados para tomar decisões.
Um sistema de dano pode procurar entidades com a tag Dañável. Um script de inimigo pode ler raioPatrulha para decidir quão longe o inimigo pode vagar.
Propriedades e tags permitem que você anexe significado de jogabilidade a uma entidade sem precisar de um componente especial para cada pequena peça de dado.
Tags são mais rápidas para consultar do que propriedades, portanto, são melhores, por exemplo, para identificar uma entidade que pode receber dano ou é um inimigo, etc. Mas não carregam nenhum valor. Uma propriedade é mais lenta para consultar, mas você pode adicionar um valor. Em termos de codificação, as propriedades de entidade são literalmente dicionários Python.
Prévia de Template de Entidade
Algumas entidades são instâncias de Templates de Entidade. O Jogador que você encontrará no novo Projeto padrão do Cave, por exemplo, é uma instância deste template aqui:

Instâncias de template são mostradas de maneira diferente no Scene Graph, usando a cor de template do Cave. Isso ajuda você a reconhecer que a entidade vem de um ativo de template reutilizável.
Quando uma entidade é uma instância de template:
- Seus filhos internos pertencem ao template.
- A instância colocada pertence à cena.
- A estrutura do template é editada abrindo o ativo do template.
- Valores locais ainda podem ser ajustados quando expostos como propriedades.
A próxima lição explica os Templates de Entidade em mais detalhes.
O Modelo Mental da Entidade
Pense em uma entidade como um pequeno contêiner:
- O nome ajuda você a entendê-la.
- O ID ajuda o Cave a rastreá-la.
- O estado ativo controla se ela participa.
- O pai controla onde ela pertence.
- Os componentes definem o que ela faz.
- As propriedades e tags descrevem dados adicionais de jogabilidade.
Esse é o núcleo da construção de cenas no Cave.
Uma vez que as entidades fazem sentido, o Gráfico de Cena se torna muito mais do que uma lista de objetos. Ele se torna a estrutura do seu mundo de jogo.