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.
É 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 Compiling for 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.
Suporte a editores de script externos como Visual Studio Code ou Vim.
Depurador de GDScript.
Suporte para depuração em threads está disponível desde a versão 4.2.
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.
Recarregamento de script em tempo real.
Edição de cena em tempo real.
Alterações serão refletidas no editor e serão mantidas após fechar o projeto em execução.
Inspetor remoto.
Alterações não serão refletidas no editor e não se manterão após fechar o projeto em execução.
Replicação de câmera em tempo real.
Mova a câmera no editor e veja o resultado no projeto em execução.
Documentação de referência de classe offline integrada.
Utilize o editor em dezenas de idiomas fornecidos pela própria comunidade.
Plugins:
Plugins para o editor podem ser baixados através da biblioteca de recursos, permitindo a expansão das funcionalidades do editor.
Crie seus próprios plugins usando GDScript para adicionar novas funcionalidades ou agilizar seu trabalho.
Baixe projetos da Biblioteca de Recursos no Gerenciador de Projetos e importe-os diretamente.
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.
Veja Overview of renderers 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.
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.
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
Renderização HDR com sRGB.
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 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.
Espalhamento sub-superfície e transmitância.
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 desvanecimento por distância pode usar alfa ou pontilhamento para evitar passar pelo pipeline de transparência.
Pontilhamento pode ser determinado por pixel ou por objeto.
Iluminação em tempo real:
Luzes direcionadas (sol/lua). Até 4 por cena.
Luzes omnidirecionais.
Holofotes com ajuste de ângulo do cone e atenuação.
Energia da iluminação especular, indireta e da neblina volumétrica pode ser ajustada por luz.
Tamanho de luz ajustável para áreas de iluminação falsa (também deixará as sombras mais desfocadas).
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.
Usando a renderização Mobile, até 8 luzes omni e 8 holofotes podem ser mostradas por recurso de malha. A iluminação pré-calculada pode ser usada para superar esse limite, se necessário.
Mapeamento de sombras:
DirectionalLight: Ortogonal (mais rápida), PSSM 2 divisões e 4 divisões. Suporta mesclagem entre divisões.
OmniLight: Paraboloide duplo (rápido) ou cubemap (mais lento, porém mais preciso). Suporta texturas de projeção coloridas na forma de panoramas.
SpotLight: Textura única. Suporta projeção de texturas coloridas.
Deslocamento normal das sombras e pancaking de sombras para diminir a quantidade de acne de sombras visível e peter-panning.
Desfoque de sombra semelhante a PCSS com base no tamanho de luz e na distância da superfície onde a sombra é projetada.
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 a reflexões não-polidas basedas em esferas harmônicas.
Mapas de Iluminação são construídos na GPU usando shaders de computação (compute shaders), oque é muito mais rápido comparado ao mapeamento de iluminação feito na CPU. A construição do mapa de iluminação pode ser feito apenas a partir do editor, e não em projetos exportados.
Suporta Remoção de Ruídos utilizando a GPU, com JNLM ou Remoção de Ruído baseado em CPU/GPU com OIDN.
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).
Reflexões:
Reflexões baseadas em voxel (utilizando provetas de IG) e reflexões baseadas em SDF (quando a IG baseada em campo com distãncia assinalada é utilizada). Reflexões baseadas em Voxel são visíveis em superfícies transparentes, enquanto reflexões não polidas baseadas em SDF são visíveis em superfícies transparentes.
Reflexões rápidas geradas e gravadas ou reflexões lentas em tempo real usando ReflectionProbe. A correção de paralaxe pode ser ativada opcionalmente.
Reflexões em espaço de tela considerando a polidez do material.
Técnicas de reflexão podem ser combinadas para maior precisão ou escalabilidade.
Quando o backend Forward+ é utilizado (padrão no desktop), provetas de reflexão são renderizadas com otimizações forward agrupadas, para reduzir os custos individuais das renderizações. Renderização agrupada ainda aumenta quaisquer limites no número de provetas de reflexão que podem ser utilizadas em uma malha.
Quando a renderização Mobile é utilizada, cada recurso de malha pode mostrar até 8 probes de reflexão.
** Decalques:**
Suporta Albedo, emissivo, ORM e mapeamento normal.
Canais de texture são suavemente superpostos sobre o material subjacente, com suporte a adesivos normais ou apenas ORM.
Suporta esvanecimento normal para esvanecer o adesivo a depender do seu ângulo de incidência.
Não conta com geração de malhas em tempo de execução. Isto significa que decalques podem ser utilizados em malhas esfoladas complexas sem penalidade na performance, até mesmo se o decalque se mover a cada quadro.
Suporte para filtragem de textura mais próxima, bilinear, trilinear ou anisotrópica (configurada globalmente).
Sistema de esvanciemento de distância opcional para esvanecer adesivos, melhorando a performance.
Quando a renderização Forward+ é utilizada (padrão no desktop), adesivos são renderizados com otimizações de forward agrupadas para diminuir o custo individual da renderização. A renderização agrupada também aumenta o limite de adesivos que podem em uma malha.
Quando a renderização Mobile é utilizados, até 8 adesivos podem ser mostrados por recurso de malha.
Céu:
Céu de Panorama (utilizando HDRI).
Céu processual e Baseado em Física que responde às Luzes Direcionais na cena.
Suporte a shaders de céu customizados, os quais 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.
Neblina:
Névoa de profuindade exponencial.
Névoa de altura exponencial.
Suporte para a cor automática da 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 ignorar 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 baseados em textura 3D.
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; campos de vetores 3D.
Formas de colisão de partículas 3D suportadas: Caixa; Esfera; Campo de Distância Assinalada Construído; e Mapas de Altura em tempo real (apropriado para efeitos de clima de mundo aberto).
A colisão de partículas 2D é manejado utilizado campo de distância assinalado, gerado em tempo-real basedo em nós LightOccluder2D na cena.
Trilhas podem utilizar tilhas de ribbon integradad e malhas de trilha em tubo, assim como 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 ambiental do espaço na tela (SSAO) à metade ou resolução completa.
Brilho/Bloom com aumento de escala bicúbica opcional e vários modos de mesclagem disponíveis: Tela, Luz Suave, Adicionar, Substituir e 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 polidez 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 Textura:
Base Universal (devagar, porém resulta em arquivos menores).
BPTC para compressão de alta qualidade (não compatível com macOS).
ETC2 (não suportado no macOS).
S3TC (Sem suporte para plataformas mobile/Web).
Antisserrilhamento:
Anti-Serrilhamento Temporal (TAA).
Anti-Serrilhamento AMD FidelityFX Super Resolution 2.2 (FSR2), que pode ser utilizado em resolução nativa como uma forma de anti-serrilhamento temporal de alta qualidade.
Anti-Serrilhamento de Múltipla Amostragem (MSAA, Multi-Sampling Antialiasing), para ambos 2D antialiasing e 3D antialiasing.
Antisserrilhado aproximado rápido (FXAA).
Anti-Serrilhamento de Super-Amostragem (SSAA, Super-Sampling Antialiasing) utilizando escalonamento bilinear 3D e uma resolução 3D acima de 1.0.
Anti-Aliasing 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.
Escalonamento de resolução utiliza filtro bilinear, AMD FidelityFx Super Resolution 1.0 (FSR1) ou AMD FidelityFX Super Resolution 2.2 (FSR2).
Viés de LOD Mimap para texture e 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 performasse ou para melhorar ainda mais a qualidade. Isso pode ser útil ao usar a Godot para renderização offline.
Ferramentas 3D
Malhas integradas: cubo, cilindro/cone, (hemi) esfera, prisma, plano, quad, torus, 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.
Corpos macios.
Ragdolls (Bonecos de pano).
Á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: Vértice personalizado, fragmento e shaders de luz.
3D: Vértice personalizado, fragmento, luz e shaders de céu.
Shaders baseados em texto usando uma linguagem de shader inspirada em GLSL.
Editor visual de shaders.
Suporte para plugins visuais de shader.
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 destaque da sintaxe é fornecido no GitHub.
Use partes_paralelizáveis(threads) para performar ações assíncronas (em segundo plano /concorrêntes) ou fazer uso de múltiplos núcleos do processador(multithread/multiplas linhas de execução em paralelo).
Empacotado em um binário separado para manter os tamanhos de arquivo e dependências pequeno.
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 a Godot 3.
O uso de um editor externo é recomendado para se beneficiar da funcionalidade 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 construção(build system) 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ídas 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 barramentos de áudio redirecionáveis e efeitos com dezenas de efeitos inclusos.
Suporte a polifonia (tocar diversos sons de um único nó AudioStreamPlayer).
Suporte para volume e tom aleatório.
Suporte para escalonamento 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 Listener2D e Listener3D para escutar de uma posição diferente da câmera.
Suporte para geração de áudio procedural.
Entrada de áudio para gravar microfones.
Entrada MIDI.
Sem suporte para saída MIDI por enquanto.
APIs utilizadas:
Windows: WASAPI.
macOS: CoreAudio.
Linux: PulseAudio ou ALSA.
Importar
Suporte para plugins de importação personalizados.
Formatos:
Imagens: Veja Importação de imagens.
Áudio:
WAV com compressão IMA-ADPCM opcional.
Ogg Vorbis.
MP3.
Cenas 3D: Veja Importando cenas 3D.
glTF 2.0 (recomendado).
.blend (chamando a funcionalidade de exportação gITF do Belnder de forma transparente).
FBX (chamando FBX2gITF de forma transparente).
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.
Quando capturada, a entrada bruta será usada no Windows e no Linux para contornar as configurações de aceleração do mouse do sistema operacional.
Entrada por gamepad (até 8 controles simultâneos).
Entrada de caneta/tablet com suporte a pressão.
Trabalho em rede
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.
WebRTC cliente e servidor, disponível em todas as plataformas.
Suporte para UPnP para apoiar a exigência de encaminhar portas ao hospedar um servidor por trás de um NAT.
Internacionalização
Suporte completo para Unicode incluindo emojis.
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 quando traduções gettext são utilizadas.
Suporte para configuração de tipos bidirecional, formatação de texto e formulários localizados OpenType.
Espelhamento de IU automático para localizações direita-esquerda.
Suporte a pseudolocalização para testar seu projeto para familiaridade 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.
Mude o título e o ícone da janela.
Solicita atenção (fará com que a barra de título pisque na maioria das plataformas).
Modo tela cheia.
Utilize tela-cheia sem bordas por padrão no Windows para alternação rápida por alt-tab, mas pode opcionalmente utilizar tela-cheia exclusica para reduzir o lag de entrada.
Janela sem bordas (tela cheia ou tela não cheia).
Possibilidade de manter a janela sempre no topo.
Integração com menu global no macOS.
Executar comandos de um modo de bloqueio ou de não-bloqueio (incluindo em execução de 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).
Analisa argumentos de linha de comando personalizados.
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.
Mobile
Suporte à XR (AR e VR)
Suporte nativo para OpenXR.
Inclui suporte para fones de ouvido populares como o Meta Quest e o Valve Index.
Suporte para headsets baseados em Android utilizando OpenXR atraves de plugin.
Inclui suporte para fones de ouvido populares como o Meta Quest 1/2/3 e Pro, Pico 4, Magic Leap 2, e Lynx R1.
Suporte limitado de fábrica para fones de ouvido visionOS da Apple.
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árias Caixad de Ferramentas avançadas 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.
Caixas de seleção, botões de seleção, botões de opção.
Entrada de texto usando LineEdit (linha única) e TextEdit (múltiplas linhas). O TextEdit também oferece recursos de edição de código, como exibição de números de linha e realce de sintaxe.
Menus suspensos usando PopupMenu e OptionButton.
Barras de rolagem.
Rótulos.
RichTextLabel para textos formatados usando BBCode, com suporte para efeitos personalizados animados.
Trees (podem também ser usadas para representar tabelas).
Seletor de cores com modos RGB e HSV.
Controles podem ser rotacionados e ter sua escala alterada.
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 (Layouts Stack).
Disposição em Gride (Layouts Grid).
Flow layouts (semelhantes ao texto de encapsulamento automático).
Disposições com margem, centralização e proporção .
Layouts com divisores arrastáveis.
Escala para múltiplas resoluções usando os modos de alongamento
canvas_itemou `` Viewport``.Suporta qualquer proporção usando âncoras e o aspecto esticado
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 pequeno tamanho da distribuição do Godot pode torná-lo uma 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 trilhas de animação.
Suporte a áudio em trilhas de animação.
Suporte a curvas Bézier em animações.
Formatos de arquivos
Cenas e recursos podem ser salvos como text-based 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.
Micelânea
Playback de vídeo com suporte a Ogg Theora de fábrica.
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 shell de complementação estão disponíveis para Bash, zsh e fish.
Imprimir texto colorido para saída padrão 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.