Attention: Here be dragons
This is the latest
(unstable) version of this documentation, which may document features
not available in or compatible with released stable versions of Godot.
Checking the stable version of the documentation...
Lista de funcionalidades
Esta página visa listar todas as funcionalidades atualmente suportados pelo Godot.
Nota
Esta página apresenta as funcionalidades suportadas pela versão estável atual do Godot. Algumas dessas funcionalidades podem não estar disponíveis nas versões 3.x.
Plataformas
Ver também
Veja Requisitos do sistema para requisitos de hardware e software.
Nota
Para obter informações sobre suporte para consoles, consulte o site do Godot.
É possível executar tanto o editor quanto os projetos exportados em:
Windows (x86 e ARM, 64-bit e 32-bit).
macOS (x86 e ARM, apenas para sistemas 64-bit).
Linux (x86 e ARM, 64-bit e 32-bit).
Executáveis usam bibliotecas estáticas e podem ser executados em qualquer distribuição, se compilados a partir de uma distribuição-base antiga o suficiente.
Executáveis oficiais são compilados utilizando-se do Godot Engine buildroot, permitindo a criação de executáveis que funcionam em todas as distribuições mais comuns do Linux.
Android (suporte para o editor é experimental).
Navegadores Web. Experimental no 4.0, é recomendado usar o Godot 3.x quando quiser usar HTML5.
Nota
O Linux oferece suporte a rv64 (RISC-V), ppc64 e ppc32 (PowerPC), e loongarch64. No entanto, você deve compilar o editor para essa plataforma (bem como os templates de exportação) por conta própria, pois atualmente não há downloads oficiais disponíveis. As instruções para compilação no RISC-V podem ser encontradas na página Compilando para Linux, *BSD.
É possível executar apenas projetos exportados em:
iOS.
O Godot procura ser o mais independente possível de plataformas e pode ser portado para novas plataformas com relativa facilidade.
Nota
Projetos escritos em C# usando Godot 4 atualmente não podem ser exportados para a plataforma web. Para usar C# nessa plataforma, recomenda-se usar o Godot 3. Suporte para Android e iOS está disponível a partir do Godot 4.2, mas é experimental e há algumas limitações.
Editor
Funcionalidades:
Editor de árvore de cena.
Editor de script integrado. Também suporta editar arquivos de texto e usar realçadores de sintaxe personalizados.
Suporte a editores de script externos como Visual Studio Code ou Vim.
Depurador de GDScript.
Suporta depuração em threads.
Analisador gráfico com indicações de tempo de CPU e GPU para cada passo do pipeline de renderização.
Ferramentas de monitoramento de desempenho, incluindo monitores de performance personalizados.
Suporta tracing profilers como Tracy e Perfetto para tarefas de otimização mais profundas.
Qualquer script pode ser rodado no editor e fornecer funcionalidades personalizadas, como botões clicáveis no inspetor, sem precisar criar um plugin de editor.
Recarregamento de script em tempo real.
Edição de cena em tempo real.
As alterações vão se refletir no editor e vão ser mantidas após fechar o projeto em execução.
Replicação de câmera ao vivo (desativada por padrão).
Mova a câmera no editor e veja o resultado no projeto em execução.
Inspetor remoto.
As alterações não vão se refletir no editor e não vão ser mantidas após fechar o projeto em execução.
Execute várias instâncias de projeto simultâneas de uma única instância de editor (útil para testes de cliente/servidor).
Integração de jogo opcional para executar o projeto em um painel dentro do editor.
Selecione nós 2D e 3D no viewport do projeto para inspecioná-los no editor.
Mova a câmera dentro do projeto usando substituições de câmera 2D e 3D.
Suporta ajustes de escala de tempo, pausa e avanço do quadros.
Suporta silenciar o projeto.
Ferramenta régua para medir distâncias em 2D e 3D.
Suporte a atração de vértice em 3D.
Suporte para seguir a seleção à medida que ela se move em 3D usando Focar Seleção duas vezes.
Documentação de referência de classe offline integrada.
Utilize o editor em dezenas de idiomas fornecidos pela própria comunidade.
Plugins:
Editor plugins can be downloaded from the Asset Store to extend editor functionality.
Crie seus próprios plugins usando GDScript para adicionar novas funcionalidades ou agilizar seu trabalho.
Download projects from the Asset Store in the Project Manager and import them directly.
Renderização
O Godot 4 inclui três renderizadores:
Avançado+. O renderizador mais avançado, adequado para plataformas desktop. Usado por padrão em plataformas desktop. Este renderizador usa Vulkan, Direct3D 12, ou Metal como driver de renderização, e utiliza o backend RenderingDevice.
Mobile. Menos recursos, mas renderiza cenas simples mais rapidamente. Adequado para plataformas desktop e móveis. Usado por padrão em plataformas móveis. Este renderizador usa Vulkan, Direct3D 12 ou Metal como driver de renderização, e utiliza o backend RenderingDevice.
Compatibilidade, por vezes chamado de Compatibilidade GL. O backend gráfico menos avançado, adequado para plataformas móveis e computadores com baixo desempenho. Usado por padrão na plataforma web. Este renderizador usa OpenGL como driver de renderização.
Ver também
Veja Visão geral dos renderizadores para uma comparação detalhada dos métodos de renderização.
Gráficos 2D
Renderização de sprites, polígonos e linhas.
AnimatedSprite2D para criação de sprites animados.
Camadas de parallax.
Suporte para pseudo-3D incluindo visualização no editor.
Iluminação 2D com mapas normais e mapas especulares.
Luzes 2D pontuais (omnidirecionais e holofotes) e direcionais.
Sombras fortes ou suaves (ajustáveis individualmente para cada luz).
Shaders personalizados podem acessar um representação em SDF da cena 2D em tempo-real, baseda em nós LightOccluder2D, os quais podem ser utilizados para efeitos de iluminação 2D mais complexos, incluindo iluminação global.
Renderização de Fontes usando bitmaps, rasterização usando FreeType ou MSDF (Multi-Channel Signed Distance Fields).
Fontes bitmap podem ser exportadas usando ferramentas como BMFont, ou importadas de imagens (apenas para fontes monoespaçadas).
Fontes dinâmicas suportam fontes monocromáticas bem como coloridas (ex. para emoji). Os formatos suportados são TTF, OTF, WOFF1 e WOFF2.
Fontes dinâmicas suportam contornos opcionais, com largura e cor ajustáveis.
Fontes dinâmicas suportam fontes variáves e funcionalidades do OpenType, incluindo ligaduras.
Fontes dinâmicas suportam itálico e negrito simulados quando o arquivo de fonte não tiver estes estilos.
Fontes dinâmicas suportam oversampling para manter as fontes nítidas em resoluções mais altas.
Fontes dinâmicas suportam posicionamento sub-pixel, tornando as fontes mais nítidas em tamanhos menores.
Fontes dinâmicas suportam otimização sub-pixel para LCD, tornando-as ainda mais nítidas em tamanhos pequenos.
Fontes SDF podem ser redimensionadas para qualquer resolução, sem a necessidade de re-rasterização. Utilização de MSDF permite que fontes se comportem melhor em tamanhos menores, comparadas a fontes SDF monocromáticas.
Oversampling para imagens SVG usando o tipo de importação DPITexture. Isso permite resultados mais nítidos ao escalonar a textura, re-rasterizando a imagem de origem SVG para uma nova resolução em tempo de execução.
Oversampling pode opcionalmente levar escalas individuais de CanvasItem em consideração para renderização mais nítida ao escalonar nós.
Partículas baseadas em GPU com suporte para shaders de partícula personalizados.
Partículas baseadas em CPU.
Renderização HDR 2D opcional para capacidades de glow melhores.
Remoção opcional de faixas para reduzir artefatos de bandas em gradientes.
Saída HDR em plataformas e renderizadores compatíveis.
Ferramentas 2D
TileMaps para design de níveis 2D baseado em tiles.
Câmera 2D com margens de arrasto e suavização integrados.
Nó Path2D para representar um caminho no espaço 2D.
Pode ser desenhado no editor ou gerado via código.
Nó PathFollow2D para fazer nós seguirem um Path2D.
Física 2D
Corpos de física:
Corpos estáticos.
Corpos animáveis (para objetos movendo apenas por script ou animação, como portas e plataformas).
Rigidbodies.
Corpos para personagens.
Articulações.
Áreas para detecção de entrada e saída de corpos.
Detecção de colisões:
Formas integradas: linha, caixa, círculo, cápsula, limites de mundo (plano infinito).
Polígonos de colisão (podem ser desenhados manualmente ou gerados a partir de um sprite pelo editor).
Gráficos 3D
Cálculos de iluminação interna HDR linear.
Remoção opcional de faixas para reduzir artefatos de bandas em gradientes.
Saída HDR em plataformas e renderizadores compatíveis.
Câmeras de perspectiva, ortográfica e de deslocamento parcial.
Quando a renderização Avançado+ é utilizada, a pre-passagem de profundidade é utilizada para melhorar a performance em cenas complexas, reduzindo o custo de overdraw.
Variable rate shading (sombreamento de taxa variável) em GPUs suportadas no Avançado+ e Mobile.
Renderização baseada em física (características integradas de material):
Segue o modelo Disney PBR.
Suporta os modos de sombreamento difuso Burley, Lambert, Lambert Wrap (half-Lambert) e Toon.
Suporta os modos de sombreamento especular Schlick-GGX, Toon e Desativado.
Utiliza o fluxo roughness-metallic com suporte para texturas ORM.
Usa oclusão especular do horizonte (modelo Filament) para melhorar a aparência do material.
Mapas normais.
Mapeamento de paralaxe/relevo com nível de detalhe automático baseado na distância.
Mapas de detalhe para os mapas albedo e normal.
Subsurface scattering and transmittance.
Refração em tela com suporte para rugosidade do material (resultando em refração borrada).
Desvanecimento por proximidade (partículas suaves) e por distância.
O esmaecimento por distância pode utilizar mesclagem alpha ou reticulação para evitar passar pelo pipeline de transparência.
Pontilhamento pode ser determinado por pixel ou por objeto.
Iluminação em tempo real:
Luzes direcionais (sol/lua).
Luzes spot (focos de luz) com ângulo de cone e atenuação ajustáveis.
Luzes de área retangulares com uma textura opcional para determinar a forma e a cor.
Energia da iluminação especular, indireta e da neblina volumétrica pode ser ajustada por luz.
"Tamanho" de luz ajustável para luzes omni esféricas e spot de disco (também tornará as sombras mais borradas com penumbra variável).
Sistema de desvanecimento por distância opcional, para desvanecer luzes distantes e suas sombras, melhorando a performance.
Usando a renderização Avançado+ (padrão no desktop), as luzes são rederizadas com otimizações futuras em cluster para diminuir seu custo individual de processamento. A renderização em cluster também elimina quaisquer limites no número de luzes que podem ser usadas em uma malha.
Ao usar o renderizador Mobile, até 8 luzes omni, 8 luzes spot e 8 luzes de área podem ser exibidas por recurso de malha. A iluminação pré-calculada (baked) pode ser usada para superar esse limite, se necessário.
Mapeamento de sombras:
DirectionalLight3D: Ortogonal (mais rápida), PSSM de 2 divisões e 4 divisões. Suporta transição (blending) entre as divisões.
OmniLight3D: Paraboloide dupla (rápida) ou cubemap (mais lenta, porém mais precisa). Suporta texturas de projetor coloridas na forma de panoramas.
SpotLight3D: Textura única. Suporta texturas de projetor coloridas.
AreaLight3D: Textura única com distorção parabólica dupla para aproximar o formato da luz.
Deslocamento normal das sombras e pancaking de sombras para diminir a quantidade de acne de sombras visível e peter-panning.
Desfoque de sombra estilo PCSS baseado no tamanho da luz e na distância da superfície onde a sombra é projetada. Suportado para todos os tipos de luz.
Desfoque de sombra ajustável para cada luz.
Iluminação global com luzes indiretas:
Lightmaps pré-calculados (rápido, mas não podem ser atualizados durante execução).
Suporta pré-cálculo apenas com luz indireta ou pré-calculo com iluminação direta e indireta. O modo de pré-cálculo pode ser ajustado por luz para permitir configurações híbridas mais leves.
Suporta iluminação de objetos dinâmicos utilizando sondas automáticas e colocadas manualmente.
Opcionalmente, suporta iluminação direcional baseada em harmônicos esféricos.
Opcionalmente suporta a geração (baking) de um shadowmask para sombras direcionais estáticas distantes.
Superamostragem opcional durante o processo de pré-cálculo para melhorar a qualidade e reduzir o vazamento de luz, ao custo de maiores tempos de pré-cálculo e uso de memória durante o processo.
Os mapas de luz (lightmaps) são calculados na GPU usando compute shaders (muito mais rápido do que o cálculo na CPU). O cálculo só pode ser realizado a partir do editor, não em projetos exportados.
Suporta redução de ruído baseado em GPU nativamente com JNLM, ou redução de ruído de maior qualidade baseada em CPU/GPU com OIDN (requer o download do OIDN separadamente).
Os mapas de luz são renderizados com filtragem bicúbica para reduzir artefatos de escala.
Probes de GI baseadas em Voxel. Suporta iluminação dinâmica e oclusores dinâmicos, enquanto ainda dá suporte a reflexão. Requer um passo de construção rápido, oque pode ser feito no editor ou em tempo de execução (inclusive a partir de um projeto exportado).
Campo de GI com Distância Assinalada projetado para grandes mundos abertos. Suporta iluminação dinâmica, porém não suporta oclusores dinãmicos. Suporta reflexões. Não eh necessário processo de construção.
Iluminação Indireta em Espaço de Tela (SSIL) em meia resoulação ou resolução inteira. Totalmente em tempo real, suporta qualquer tipo de fonte de luz emissiva (incluindo adesivos).
O VoxelGI e SDFGI utilizam uma passagem desviada (deferred) para permitir a renderização de IG a meia resolução, para melhorar a performance (enquanto mantém suporte a MSAA funcional).
Reflexos:
Reflexos baseados em voxel (utilizando sondas de GI) e reflexos baseados em SDF (quando a GI baseada em campo de distância com sinal é utilizada). Reflexos baseados em voxel são visíveis em superfícies transparentes, enquanto reflexos rugosos baseados em SDF são visíveis em superfícies transparentes.
Reflexos pré-calculados rápidos ou reflexos lentos em tempo real usando ReflectionProbe. A correção de paralaxe pode ser ativada opcionalmente.
Reflexos em espaço de tela com suporte a rugosidade do material.
Técnicas de reflexo podem ser combinadas para maior precisão ou escalabilidade.
Quando o backend Avançado+ é utilizado (padrão no desktop), sondas de reflexo são renderizadas com otimizações agrupadas, para reduzir os custos individuais das renderizações. Renderização agrupada também remove os limites no número de sondas de reflexo que podem ser utilizadas em uma malha.
Quando a renderização Mobile é utilizada, cada recurso de malha pode mostrar até 8 probes de reflexo. Quando o renderizador Compatibilidade for usado, apenas 2 sondas de reflexo podem ser usadas por recurso de malha.
Decalques:
Suporta albedo, emissivo, ORM e mapa normal.
Canais de textura são suavemente sobrepostos no material subjacente, com suporte a decalques com normal ou apenas ORM.
Suporta desvanecimento de normal para desvanecer o decalque dependendo do seu ângulo de incidência.
Não gera nenhuma malha em tempo de execução. Isso significa que os decalques podem ser usados em malhas complexas sem penalidade de desempenho, mesmo se o decalque mover a cada quadro.
Suporte para filtragem de textura mais próxima, bilinear, trilinear ou anisotrópica (configurada globalmente).
Sistema de desvanecimento por distância opcional para desvanecer decalques distantes, melhorando a performance.
Quando a renderização Avançado+ é utilizada (padrão no desktop), decalques são renderizados com otimizações agrupadas para diminuir o custo individual da renderização. A renderização agrupada também remove o limite de decalques que podem ser usados em uma malha.
Quando a renderização Mobile é utilizada, até 8 decalques podem ser usados por recurso de malha.
Céu:
Céu de panorama (utilizando HDRI).
Céu procedural e baseado em física que responde às DirectionalLights na cena.
Suporte a shaders de céu customizados, que podem ser animados.
O mapa de radiância usado para luzes ambientes e especulares podem ser atualizados em tempo real, dependendo das preferências de qualidade escolhidas.
Névoa:
Névoa de profundidade exponencial.
Névoa de altura exponencial.
Suporte para cor automática de névoa dependendo da cor do céu (perspectiva aérea).
Suporte para dispersão do sol na névoa.
Suporte para definir o quanto a renderização de névoas deve afetar o céu, com controles separados para névoa tradicional ou volumétrica.
Suporte para fazer materiais específicos ignorarem a névoa.
Névoa volumétrica:
Névoa Volumétrica global que reage às luzes e sombras.
Névoas volumétricas podem levar em conta a iluminação indireta quando SDFGI ou VoxelGI são utilizados.
Nós de Volume de Névoa que podem ser posicionados para adicionar névoa em áreas específicas (ou remover névoa de áreas específicas). Formas suportadas incluem caixa, elipse, cone, cilindro e mapas de densidade 3D baseados em textura.
Cada volume de névoa pode ter seu shader customizado.
Pode ser utilizado em conjunto com névoas tradicionais.
Partículas:
Partículas baseadas em GPU com suporte a sub-emissores (2D + 3D), trilhas (2D + 3D), atratores (apenas em 3D) e colisão (2D + 3D).
Formas suportadas para atratores de partículas 3D: caixa, esfera e campos de vetores 3D.
Formas de colisão de partículas 3D suportadas: caixa, esfera, campo de distância com sinal pré-calculado e heightmap em tempo real (apropriado para efeitos de clima de mundo aberto).
A colisão de partículas 2D é feita com campos de distância com sinal gerados em tempo-real basedos em nós LightOccluder2D na cena.
Trilhas podem utilizar os formatos integrados de fita e tubo, ou malhas customizadas com esqueletos.
Suporte a shaders de partícula customizados com emissão manual.
Partículas baseadas em CPU.
Pós-processamento:
Mapeamento de tons (Linear, Reinhard, Filmic, ACES, AgX).
Ajustes automáticos de exposição baseados no brilho da Viewport (e sobreposição de exposição manual).
Profundidade de campo próximo ou distante com simulação bokeh ajustável (caixa, hexágono, círculo).
Oclusão ambiente em espaço de tela (SSAO) em resolução completa ou pela metade.
Brilho/bloom com aumento de escala bicúbica opcional e vários modos de mesclagem disponíveis: Tela, Luz Suave, Adicionar, Substituir, Misturar.
Brilho pode ter uma textura de mapa de sujeira colorido, agindo como efeito de sujeira na lente.
Brilho pode ser usado como efeito de desfoque no espaço de tela.
Correção de cor usando uma rampa unidimensional ou uma textura 3D LUT.
Limitador de rugosidade para reduzir o impacto de aliasing especular.
Ajustes de brilho, contraste e saturação.
Filtragem de textura:
Filtragem mais próxima, bilinear, trilinear ou anisotrópica.
Opções de filtragem são definidas por uso, não por textura.
Compressão de VRAM de textura:
BPTC (para compressão de alta qualidade voltada a plataformas de desktop).
ASTC (para compressão de alta qualidade voltada a plataformas móveis).
ETC2 (para compressão rápida voltada a plataformas móveis).
S3TC (para compressão rápida voltada a plataformas de desktop).
Basis Universal (lento, mas requer apenas uma codificação para todas as plataformas).
Antisserrilhamento:
Antisserrilhamento Temporal (TAA).
Antisserrilhamento AMD FidelityFX Super Resolution 2.2 (FSR2), que pode ser utilizado em resolução nativa como uma forma de antisserrilhamento temporal de alta qualidade.
Antisserrilhamento de múltipla amostragem (MSAA, Multi-Sampling Antialiasing), para ambos Antialiasing 2D e Antisserrilhamento 3D.
Antisserrilhado aproximado rápido (FXAA).
Antisserrilhamento de super-amostragem (SSAA, Super-Sampling Antialiasing) utilizando escalonamento bilinear 3D e uma resolução 3D acima de 1.0.
Antisserrilhamento alfa, alfa MSSA para cobertura e hashing alfa por material.
Escala de resolução:
Suporte para renderização 3D em uma resolução menor, enquanto mantém a renderização 2D na escala original. Pode ser utilizado para melhorar a performance em sistemas low-end ou melhorar o visual em sistemas high-end.
O redimensionamento de resolução usa filtragem por vizinho mais próximo, filtragem bilinear, AMD FidelityFX Super Resolution 1.0 (FSR1) ou AMD FidelityFX Super Resolution 2.2.1 (FSR2).
Viés de mipmap LOD para texturas é ajustado automaticamente para melhorar a qualidade em escalas de menor resolução. Também pode ser modificado com um deslocamento manual.
A maioria dos efeitos listados acima podem ser ajustados para melhor performance ou para melhorar ainda mais a qualidade. Isso pode ser útil ao usar o Godot para renderização offline.
Ferramentas 3D
Malhas integradas: cubo, cilindro/cone, (semi)esfera, prisma, plano, quad, toro, fita e tubo.
GridMaps para design de níveis 3D baseado em blocos.
Geometria sólida construtiva (destinada para criação de protótipos).
Ferramentas para geração de geometria procedural.
Nó Path3D para representar um caminho no espaço 3D.
Pode ser desenhado no editor ou gerado via código.
Nó PathFollow3D para fazer com que os nós sigam um Path3D.
Suporte para exportação de cena atual como arquivo glTF 2.0, tanto do editor quanto em tempo de execução de um projeto exportado.
Física 3D
Corpos de física:
Corpos estáticos.
Corpos animáveis (para objetos movendo apenas por script ou animação, como portas e plataformas).
Rigidbodies.
Corpos para personagens.
Corpos de veículos (destinado para físicas arcade, não para simulação).
Articulações.
Áreas para detecção de entrada e saída de corpos.
Detecção de colisões:
Formas integradas: cuboide, esfera, cápsula, cilindro, limite de mundo (plano infinito).
Gerar formas de colisão triangulares para qualquer malha pelo editor.
Gerar uma ou várias formas de colisão convexas para qualquer malha pelo editor.
Shaders
2D: Shaders personalizados de vértice, fragmento e luz.
3D: Shaders customizados de vértice, fragmento, luz, céu e névoa.
Os shaders personalizados podem gerar e modificar texturas proceduralmente em tempo real usando DrawableTexture2D.
Shaders baseados em texto usando uma linguagem de shader inspirada em GLSL.
O realce de sintaxe é fornecido no GitHub usando
gdshadercomo nome da linguagem em um bloco de código Markdown.Editor visual de shaders.
Suporte para plugins de shaders visuais.
Scripting
Geral:
Padrão de design orientado a objetos com scripts que estendem nós.
Sinais e grupos para comunicação entre scripts.
Suporte para scripting entre linguagens.
Muitos tipos de dados de álgebra linear 2D, 3D e 4D, como vetores e transformadores.
Linguagem interpretada de alto nível com tipagem estática opcional.
Sintaxe inspirada no Python. No entanto, GDScript não é baseado em Python.
O realce de sintaxe é fornecido no GitHub usando
gdscriptcomo nome da linguagem em um bloco de código Markdown.Use threads para realizar ações assíncronas ou fazer uso de múltiplos núcleos do processador.
Distribuído em um binário separado para diminuir os tamanhos de arquivo e dependências.
Suporta .NET 8 e superior.
Suporte completo para a sintaxe e funcionalidades do C# 12.0.
Suporta Windows, Linux e MacOS. Desde a versão 4.2, suporte experimental a Android e iOS também está disponível (requer um projeto .NET 7.0 para Android e 8.0 para iOS).
Na plataforma iOS apenas algumas arquiteturas são suportadas:
arm64.A plataforma web não é suportada ainda. Para utilizar C# nesta plataforma, considere utilizar o Godot 3.
O uso de um editor externo é recomendado para se beneficiar das funcionalidades de um IDE.
GDExtension (C, C++, Rust, D, ...):
Quando necessário, conecte a bibliotecas nativas para melhor desempenho e integração com terceiros.
Para programar a lógica do jogo, GDScript ou C# são recomendados, caso sua performance seja adequada.
Bindings oficiais da GDExtension para C e C++.
Use qualquer sistema de compilação e recursos de linguagem que desejar.
Bindings GDExtension em desenvolvimento ativo para D, Swift e Rust, fornecidos pela comunidade. (Alguns desses bindings podem ser experimentais e não estar prontos para produção).
Áudio
Funcionalidades:
Mono, estéreo, saída 5.1 e 7.1.
Reprodução não-posicional e posicional em 2D e 3D.
Efeito Doppler opcional em 2D e 3D.
Suporte para canais de áudio redirecionáveis e efeitos com dezenas de efeitos inclusos.
Suporte para polifonia (reprodução de vários sons a partir de um único nó AudioStreamPlayer).
Suporte para volume e tom aleatório.
Suporte para mudança de tom em tempo real.
Suporte a seleção de amostra sequencial/aleatória, incluindo prevenção de repetição quando utilizar seleção aleatória.
Nós AudioListener2D e AudioListener3D para ouvir a partir de uma posição diferente da câmera.
Suporte para geração de áudio procedural.
Entrada de áudio para gravar microfones.
Texto para fala usando as vozes de TTS do sistema do usuário.
Entrada MIDI.
Sem suporte para saída MIDI por enquanto.
APIs utilizadas:
Windows: WASAPI.
macOS: CoreAudio.
Linux: PulseAudio ou ALSA.
Importação
Suporte para plugins de importação personalizados.
Formatos:
Imagens: Veja Importação de imagens.
Áudio:
WAV com compressão opcional QOA ou IMA-ADPCM.
Ogg Vorbis.
MP3.
Cenas 3D: Veja Importando cenas 3D.
glTF 2.0 (recomendado).
.blend(executando a função de exportação gITF do Blender diretamente).FBX (executando FBX2gITF diretamente).
Collada (.dae).
Wavefront OBJ (apenas cenas estáticas, pode ser carregado diretamente como uma malha ou importado como uma cena 3D).
Suporte para carregar cenas glTF 2.0 em tempo de execução, incluindo de um projeto exportado.
As malhas 3D usam o Mikktspace para gerar tangentes na importação, o que garante consistência com outros aplicativos 3D, como o Blender.
Entrada
Sistema de mapeamento de entradas usando eventos de entrada direto no código ou ações de entrada remapeáveis.
Valores de eixo podem ser mapeados em duas ações diferentes com uma zona morta configurável.
Use o mesmo código para oferecer suporte a teclados e gamepads.
Entrada de teclado.
Teclas podem ser mapeadas em modo "físico" para serem independentes do layout do teclado.
Entrada de mouse.
O cursor do mouse pode ser visível, escondido, capturado ou confinado dentro da janela.
A aparência do cursor do mouse pode ser alterada para uma imagem personalizada ou para um dos cursores do sistema.
Quando capturado, o input bruto é usado no Windows e no Linux para ignorar as configurações de aceleração de mouse do sistema operacional.
Entrada de controle / gamepad (até 8 controles simultâneos).
Suporte para alterar a cor do LED em controles compatíveis.
Suporte para leitura de sensores de movimento em controles compatíveis (usado para implementar mira giroscópica).
Entrada de caneta/tablet com suporte a pressão e inclinação.
Redes
Conexão de rede TCP de baixo nível usando StreamPeer e TCPServer.
Conexão de rede UDP de baixo nível usando PacketPeer e UDPServer.
Requisições HTTP de baixo nível usando HTTPClient.
Requisições HTTP de alto nível usando HTTPRequest.
Suporta HTTPS pronto para uso usando certificados inclusos.
API multijogador de alto nível usando UDP e ENet.
Replicação automática usando chamadas de procedimento remotas (RPCs).
Suporta transferências ordenadas, confiáveis e não confiáveis.
Cliente e servidor WebSocket , disponível em todas as plataformas.
Cliente e servidor WebRTC, disponível em todas as plataformas.
Suporte para UPnP para não precisar encaminhar portas ao hospedar um servidor por trás de um NAT.
Internacionalização
Suporte completo para Unicode incluindo emojis.
Suporte para carregar fontes do sistema no Windows, macOS, e Linux.
Por padrão, fontes do sistema são usadas para exibir caracteres sem suporte. Assim você pode mostrar texto em várias línguas sem precisar incluir arquivos de fonte grandes no seu projeto.
Armazena strings de localização usando CSV ou gettext.
Suporte para gerar arquivos gettext POT e PO do editor.
Utilize strings localizadas em seu projeto automaticamente em elementos GUI ou usando a função
tr().Suporte a pluralização e contextos de tradução.
Suporte para texto bidirecional, formatação de texto e formatos localizados OpenType.
Espelhamento de UI automático para idiomas que escrevem da direita para a esquerda.
Suporte para pseudolocalização para testar a compatibilidade do seu projeto com i18n.
Janelas e integração de sistema
Invocar múltiplas janelas independentes dentro de um único processo.
Mover, redimensionar, minimizar e maximizar as janelas geradas pelo projeto.
Mudar o título e o ícone da janela.
Criar janelas transparentes para usar como sobreposições, com suporte de passagem de mouse baseado em polígono.
Solicitar atenção (fará com que a barra de título pisque na maioria das plataformas).
Fullscreen mode (borderless and exclusive).
Janela sem bordas (tela cheia ou modo janela).
Deixar uma janela sempre no topo.
Fazer uma janela ignorar o foco (útil para sobreposições).
Declarar uma janela como um popup (escondida do menu de tarefas) ou exclusiva (evita interagir com outras janelas do mesmo processo).
Suporte de diálogo de arquivos nativo no Windows, macOS, Linux e Android.
Suporte de ícone de bandeja no Windows e macOS.
Integração com menu global no macOS.
Decorações client-side no macOS.
Executar comandos de forma blocking e não-blocking (incluindo executar múltiplas instâncias do mesmo projeto).
Abrir caminhos de arquivos e URLs usando manipuladores de protocolo padrão ou personalizados (se registrados no sistema).
Analisar argumentos de linha de comando personalizados.
Suporte para leitores de tela no Windows, macOS e Linux.
Qualquer binário do Godot (editor ou projeto exportado) pode ser utilizado como servidor headless, iniciando-o com o argumento de linha de comando
--headless. Isto permite executar a engine sem uma GPU ou servidor de display.
Ver também
Leia Criando aplicações para obter detalhes sobre o uso desses recursos.
Mobile
Controle virtual e botões para entrada por toque.
Suporte a anúncios usando módulos de terceiros.
Suporte para o modo picture-in-picture no Android.
Suporte a XR (AR e VR)
Support for desktop headsets using OpenXR. If a headset works with SteamVR, it should work with Godot.
Godot also supports Quest over Link, AndroidXR Direct Preview, and Pico Connect.
Support for Android-based headsets using OpenXR. Including support for the following standalone headsets:
Meta Quest 1/2/3 and Pro
Pico 4/4 Ultra
Magic Leap 2
Lynx R1
HTC Vive Focus Vision
Android XR headsets
Support for the Linux-based standalone Steam Frame using OpenXR.
Limited support for visionOS Apple headsets.
Atualmente, apenas a exportação de um aplicativo para uso em um plano fixo dentro do headset é suportada. Experiências imersivas não são suportadas.
Outros dispositivos suportados através de uma estrutura de plugins XR.
Vários toolkits avançados disponíveis que implementam funcionalidades comuns necessárias para aplicações XR.
Sistema de Interface Gráfica do Usuário (GUI)
A interface gráfica do Godot é construída usando os mesmos controles de Nós usados para fazer jogos no Godot. A interface do editor pode ser facilmente estendida de diversas formas com o uso de add-ons.
Nós:
Botões.
Checkboxes, botões de seleção, botões de radio.
Entrada de texto usando LineEdit (linha única), TextEdit (múltiplas linhas) e CodeEdit (suporta destaque de sintaxe, números de linha e mais).
Menus suspensos usando PopupMenu e OptionButton com suporte para uma barra de pesquisa opcional.
Barras de rolagem.
Rótulos.
RichTextLabel para textos formatados usando BBCode, com suporte para efeitos personalizados animados.
Árvores (podem também ser usadas para representar tabelas).
Seletor de cores com modos RGB, HSV e OKHSL, bem como paletas de cores personalizadas.
Controls podem ser rotacionados e escalonados.
Suporte para arrastar e soltar.
Dimensionamento:
Âncoras para manter os elementos da GUI em um canto específico, borda ou centro.
Contêineres para colocar elementos da GUI automaticamente seguindo certas regras.
Disposição em Pilha.
Disposição em Grade.
Disposição em Fluxo (semelhantes a texto com quebra automática).
Disposições com margem, centralização e proporção .
Layouts com divisores arrastáveis.
Layouts de seções dobráveis.
Dimensione para múltiplas resoluções usando os modos de distorção
canvas_itemouviewport.Suporta qualquer proporção de tela usando âncoras e o aspecto de distorção
expand.
Temas:
Editor de temas embutido.
Gere um tema com base nas configurações atuais do tema do editor.
Temas baseados em vetores procedurais usando StyleBoxFlat.
Suporta cantos arredondados/chanfrados, sombras projetadas, larguras por borda e antisserrilhamento.
Temas baseados em textura usando StyleBoxTexture.
O tamanho pequeno da distribuição do Godot pode torná-lo uma boa alternativa para plataformas como Electron ou Qt.
Animação
Cinemática direta e cinemática inversa.
Suporte a animação de qualquer propriedade com interpolação personalizável.
Suporte a chamada de métodos em faixas de animação.
Suporte a áudio em faixas de animação.
Suporte a curvas Bézier em animações.
Formatos de arquivos
Cenas e recursos podem ser salvos como texto ou em formatos binários.
Formatos baseados em texto são legíveis por humanos e mais amigáveis a sistemas de versionamento.
Formatos binários são mais rápidos para salvar e carregar para cenas e recursos pesados.
Leia e escreva arquivos binários ou de texto usando FileAccess.
Podem ser opcionalmente comprimidos ou criptografados.
Leia e escreva arquivos JSON.
Leia e escreva arquivos de configuração em estilo INI usando ConfigFile.
Pode (de)serializar qualquer tipo de dados do Godot, incluindo Vector2/3, Color, ...
Leia arquivos XML usando XMLParser.
Carregar e salvar imagens, áudio/vídeo, fontes e arquivos ZIP em um projeto exportado sem ter que passar pelo sistema de importação do Godot.
Empacote dados de jogo num arquivo PCK (formato personalizado otimizado para buscas rápidas), num arquivo ZIP, ou diretamente no executável para distribuição de um único arquivo.
Exporte arquivos PCK adicionais que podem ser lidos pela engine para suportar modificações e DLC.
Miscelânea
Playback de vídeo com suporte a Ogg Theora embutido.
Modo de Gravação para gravar vídeos de um projeto em execução com áudio sincronizado e frame pacing perfeito.
Acesso de baixo nível aos servidores que permite ultrapassar o gargalo da árvore de cenas quando necessário.
Interface de Linha de Comando para automação.
Exporte e implante projetos usando plataformas de integração contínua.
Scripts de auto-completar de shell estão disponíveis para Bash, zsh e fish.
Exibir texto colorido no terminal em todas as plataformas usando print_rich.
O editor pode detectar recursos usados em um projeto e criar um perfil de compilação, que pode ser usado para criar binários de template de exportação menores com recursos desnecessários desabilitados.
Suporte para módulos C++ vinculados estaticamente ao executável da engine.
A maioria dos módulos embutidos podem ser desativados durante a compilação para economizar o tamanho dos binários em builds customizadas. Veja Otimizando uma compilação para o tamanho para mais detalhes.
Engine e editor escritos em C++17.
Pode ser compilado usando GCC, Clang e MSVC. MinGW também tem suporte.
Amigável aos distribuidores de pacotes. Na maioria dos casos, bibliotecas do sistema podem ser utilizadas no lugar das fornecidas pelo Godot. O sistema de compilação não baixa nada. As compilações são completamente reproduzíveis.
Licenciado sob a licença permissiva MIT.
Processo de desenvolvimento aberto com contribuições bem vindas.
Ver também
O repositório de propostas do Godot lista recursos solicitados pela comunidade, que podem ser implementados em futuras versões do Godot.