Cave: Guia de Introdução
Entendendo Componentes de Entidade
Lesson 10 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.
Componentes definem o que uma entidade pode fazer.
Uma entidade é o contêiner. Componentes são as características anexadas a esse contêiner.

Esta lição apresenta os principais tipos de componentes que você verá como iniciante. Você não precisa memorizar todas as opções ainda. O objetivo é reconhecer o padrão:
> Quando uma entidade precisa de um recurso, você geralmente adiciona o componente que fornece esse recurso.
Entidades São Construídas a Partir de Componentes
Uma nova entidade pode começar muito simples.
Então, à medida que você adiciona componentes, ela se torna mais capaz:
- Adicione um
Transform Component, e ela terá um lugar no Mundo 3D. - Adicione um
Mesh Component, e ela pode se tornar visível. - Adicione um
Rigid Body Component, e ela pode colidir com o mundo. - Adicione um
Python Component, e ela pode executar o código de jogabilidade. - Adicione um
Logic Bricks Component, e ela pode executar lógica visual. - Adicione um
Audio Player Component, e ela pode tocar som.
Este é o fluxo de trabalho normal do Cave: construir entidades combinando componentes.
Por exemplo:
| Objeto que Você Quer | Configuração de Componente Possível |
|---|---|
| Tocha | Transform, Mesh, Light, Audio Player. |
| Porta | Transform, Mesh, Rigid Body, Logic Bricks ou Python. |
| Jogador | Transform, Character, Camera, Animation, Python. |
| Coletável de Vida | Transform, Mesh, Rigid Body trigger, Logic Bricks ou Python. |
Em vez de buscar um tipo especial de objeto para cada situação, você compõe o objeto que precisa.
Componentes Principais
Alguns componentes são tão comuns que você os verá constantemente.
| Componente | Propósito Principal |
|---|---|
| Transform Component | Armazena posição, rotação e escala. |
| Camera Component | Define uma visão da câmera. |
Transform Component
O Transform Component armazena posição, rotação e escala.

A maioria das entidades 3D depende dele porque a maioria dos objetos precisa existir em algum lugar no mundo. Quando você move, rota ou escala uma entidade na Visualização 3D, você está editando seu transform.
Muitos outros componentes dependem do transform:
- Uma luz precisa de uma posição.
- Uma malha precisa de uma posição.
- Uma câmera precisa de uma posição.
- Uma fonte sonora 3D precisa de uma posição.
Camera Component
O Camera Component define uma visão da câmera.

Use-o quando você quiser que uma entidade atue como uma câmera do jogo.
Câmeras são usadas para:
- Jogos em primeira pessoa.
- Jogos em terceira pessoa.
- Jogos de cima para baixo.
- Menus.
- Cenas cortadas.
- Visões especiais.
Uma cena tem uma câmera de cena padrão, mas câmeras de jogabilidade geralmente são entidades com Camera Components. Isso facilita movê-las, agrupá-las, animá-las, programá-las ou alterná-las durante a jogabilidade.
Componentes Gráficos
Componentes gráficos controlam o que o jogador vê.
| Componente | Use Para |
|---|---|
| Mesh Component | Objetos 3D visíveis. |
| Light Component | Fontes de luz local. |
| Particle Component | Efeitos visuais feitos de muitos pequenos pedaços. |
| Animation Component | Reproduzir animação esquelética. |
| Animation Socket Component | Anexar entidades filhas a ossos animados. |
Mesh Component
O Mesh Component renderiza uma malha usando um material.

Use-o para:
- Props.
- Paredes.
- Personagens.
- Portas.
- Armas.
- Peças do ambiente.
- Qualquer coisa visível.
Um componente de malha geralmente faz referência a um ativo de malha e a um ativo de material. A malha fornece a forma, enquanto o material controla a aparência da superfície.
Light Component
O Light Component adiciona iluminação local à cena.

Use-o para:
- Lâmpadas.
- Tochas.
- Luzes mágicas.
- Props brilhantes.
- Holofotes.
A luz do sol da cena e a luz ambiente afetam toda a cena. Componentes de luz são colocados em entidades quando você precisa de iluminação local em um lugar específico.
Particle Component
O Particle Component cria elementos e efeitos visuais repetidos.

Use partículas para:
- Fumaça.
- Faíscas.
- Poeira.
- Fogo.
- Vento.
- Detritos.
- Efeitos mágicos.
Partículas são úteis porque você não quer que cada faísca ou nuvem de poeira seja uma entidade colocada manualmente. Um componente de partículas pode gerar e controlar muitos visuais pequenos.
Animation Component
O Animation Component reproduz animações esqueléticas.

Ele funciona com armaduras e ativos de animação, e pode lidar com reprodução, mistura, camadas e a pose animada final.
Use-o para:
- Personagens animados.
- Criaturas animadas.
- Props esqueléticos.
- Qualquer malha animada importada que use ossos.
Animation Socket Component
O Animation Socket Component anexa uma entidade filha a um osso específico de uma entidade animada pai.

Use-o para:
- Espadas.
- Armas de fogo.
- Escudos.
- Capacetes.
- Mochilas.
- Props de mão.
Em vez de atualizar manualmente o prop a cada quadro, o soquete segue o osso selecionado.
Componentes de Física
Componentes de física controlam colisão e movimento físico.
| Componente | Use Para |
|---|---|
| Rigid Body Component | Colisão, objetos físicos, gatilhos. |
| Character Component | Movimento de personagens Jogador e NPC. |
| Physics Constraint Component | Conectar corpos rígidos juntos. |
Rigid Body Component
O Rigid Body Component dá um comportamento físico a uma entidade.

Use-o para:
- Colisão estática.
- Objetos dinâmicos.
- Props de física.
- Objetos tipo fantasma como gatilho.
Por exemplo, uma parede pode usar um corpo rígido estático para que o jogador não possa passar por ela. Uma caixa móvel pode usar um corpo rígido dinâmico para que possa reagir a forças.
Character Component
O Character Component é projetado para movimento de estilo personagem.

Use-o para jogadores ou NPCs que precisam:
- Andar.
- Saltar.
- Deslizar ao longo de paredes.
- Lidar com inclinações.
- Mover-se como um personagem em vez de um objeto físico solto.
Isso geralmente é um ponto de partida melhor para um personagem controlável do que um corpo rígido simples.
Physics Constraint Component
O Physics Constraint Component conecta corpos rígidos juntos.
É útil para configurações físicas mais avançadas, como:
- Dobradiças.
- Juntas.
- Pontes.
- Montagens similares a bonecos de pano.
- Objetos físicos conectados.
Você não precisará dele imediatamente, mas é bom reconhecer o que é. Mais tarde, pode ajudar com coisas como portas que balançam, objetos suspensos ou peças mecânicas.
Componentes de Mundo e Jogo
Alguns componentes ajudam a construir o mundo ou apresentar o jogo ao jogador.
| Componente | Use Para |
|---|---|
| Terrain Component | Paisagens externas e chão esculpido. |
| Audio Player Component | Sons, música, ambiente e áudio 3D. |
| UI Element Component | Texto, botões, painéis, HUDs e menus. |
Terrain Component
O Terrain Component cria e edita terreno.

Use-o para níveis externos, paisagens, colinas, vales, estradas e grandes superfícies de chão.
Terreno tem suas próprias ferramentas de edição, que são abordadas mais tarde.
Audio Player Component
O Audio Player Component reproduz sons ou música.
Ele pode ser usado para:
- Música.
- Loops ambientes.
- Efeitos sonoros.
- Áudio posicional 3D.
- Sons de UI.
O áudio também pode ser acionado através de scripts, Logic Bricks, timelines, callbacks de UI e callbacks de animação.
UI Element Component
O UI Element Component cria elementos de interface do jogo.

Use-o para:
- Texto.
- Botões.
- Painéis.
- Menus.
- Barras de vida.
- Elementos de HUD.
A UI no Cave também é construída a partir de entidades, o que significa que a UI pode usar hierarquia, componentes, propriedades e lógica como outras partes do jogo.
Componentes Lógicos
Componentes lógicos fazem entidades se comportarem.
| Componente | Use Para |
|---|---|
| Python Component | Comportamento jogável Python reutilizável. |
| Python Code Component | Pequeno comportamento Python inline. |
| Logic Bricks Component | Gráficos de script visual. |
| State Machine Component | Comportamento baseado em estado. |
Python Component
O Python Component anexa um ativo de script Python a uma entidade.

Use-o para lógica de jogabilidade reutilizável, como:
- Comportamento de portas.
- Comportamento de inimigos.
- Interações.
- Lógica de UI.
- Regras do jogo.
- Sistemas personalizados.
Python Code Component
O Python Code Component armazena pequenos trechos de Python inline diretamente no componente.

Use-o para testes rápidos, pequeno comportamento local ou protótipos únicos.
Para lógica reutilizável maior, prefira um ativo de script Python com um componente Python.
Logic Bricks Component
O Logic Bricks Component anexa um ativo de Logic Bricks a uma entidade.

Logic Bricks são o sistema de script visual do Cave. Eles permitem que você crie comportamento conectando nós em vez de escrever código diretamente.

Use-os para gatilhos, interações simples, comportamento de UI e eventos de jogabilidade que são mais fáceis de entender visualmente.
State Machine Component
O State Machine Component anexa uma máquina de estados hierárquica a uma entidade.

Máquinas de estado são úteis para comportamentos que têm estados claros, como:
- Inativo.
- Andar.
- Perseguir.
- Ataque.
- Fugir.
- Morto.
Elas são especialmente úteis para inimigos, NPCs e lógica de gameplay estruturada.
Componentes de Veículo
Cave também inclui componentes relacionados a veículos.
Você pode vê-los se gerar conteúdo inicial de veículo.
| Componente | Propósito |
|---|---|
| Componente de Veículo | Transforma um objeto físico em um corpo de estilo veículo. |
| Componente de Roda | Define o comportamento da roda para um veículo. |
O Componente de Veículo funciona com um corpo rígido e componentes de roda.
O Componente de Roda inclui comportamentos relacionados à roda, como suspensão, direção, raio da roda e se a roda é uma roda da frente.
Receitas Práticas de Componentes
Aqui estão algumas maneiras simples de pensar sobre a composição de componentes:
| Objetivo | Receita de Componente |
|---|---|
| Prop estático visível | Transformar + Malha. |
| Parede sólida | Transformar + Malha + Corpo Rígido. |
| Jogador em movimento | Transformar + Personagem + Python + Câmera. |
| Tocha com ambiente | Transformar + Malha + Luz + Reprodutor de Áudio. |
| Botão em um menu | Elemento de UI + Python ou Logic Bricks. |
| Comportamento de inimigo | Personagem + Animação + Máquina de Estado ou Python. |
Estas não são regras rígidas. Elas são pontos de partida.
À medida que você construir mais objetos, você ficará mais rápido em escolher os componentes certos para o trabalho.
Outros Componentes
Cave tem componentes mais especializados do que esta lição cobre.
Isso é normal.
Você não precisa conhecer todos os componentes antes de criar sua primeira cena. Por enquanto, concentre-se no padrão útil: uma entidade se torna útil quando você adiciona os componentes certos a ela.