Após 6 meses de desenvolvimento, foi lançada a versão gratuita do motor de jogos Godot 3.4, adequado para a criação de jogos 2D e 3D. O motor suporta uma linguagem de script fácil de aprender para lógica de jogos, uma interface gráfica para design de jogos, um sistema de implantação de jogos com um clique, amplas capacidades de animação e simulação física, um depurador integrado e um sistema de detecção de gargalos de desempenho. O código do motor de jogos, a interface de design e as ferramentas de desenvolvimento associadas (motor físico, servidor de som, backends de renderização 2D/3D, etc.) são licenciados sob a licença MIT.
Os códigos-fonte do motor foram tornados abertos em 2014 pelo estúdio OKAM, após dez anos de desenvolvimento de um produto proprietário de nível profissional, que foi usado na criação e publicação de muitos jogos para PC, consoles e dispositivos móveis. O motor suporta todas as principais plataformas de desktop e móvel (Linux, Windows, macOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX), bem como desenvolvimento de jogos para Web. Compilações binárias prontas para uso foram formadas para Linux, Windows e macOS.
Em um ramo separado, um novo backend de renderização baseado na API gráfica Vulkan está em desenvolvimento, que será oferecido na próxima versão do Godot 4.0, em vez dos backends de renderização atuais via OpenGL ES 3.0 e OpenGL 3.3 (o suporte para OpenGL ES e OpenGL será mantido através da operação do backend mais antigo OpenGL ES 2.0/OpenGL 2.1 sobre a nova arquitetura de renderização baseada em Vulkan). A transição do Godot 3.x para o Godot 4.0 exigirá uma reestruturação das aplicações devido à quebra de compatibilidade no nível da API, mas um longo ciclo de suporte será garantido para a ramificação do Godot 3.x, cuja duração dependerá da demanda dos usuários por essa API.
O Godot 3.4 se destaca pela adição das seguintes novidades:
- A interface do usuário para editar temas foi reformulada, proporcionando um processo visual claro de seleção de nós e permitindo a alteração do design sem sair do modo de pré-visualização.

- Foram feitas melhorias no editor para aumentar a facilidade de uso: adicionada a função de carregamento rápido de recursos no modo de inspeção, permitido a criação de um nó em qualquer posição, adicionado um novo interface de exportação de modelos, implementadas operações adicionais com gizmo (sistema de volumes limitadores) e melhorado o editor de animação baseado em curvas de Bézier.

- Adicionado o modo de desfazimento de alterações, permitindo reverter todas as mudanças na cena causadas pela aplicação de animações através do AnimationPlayer, em vez de desfazer cada propriedade individualmente.
- Adicionada uma opção nas configurações para alterar o nível de zoom da área de visualização 2D (2D viewport), que pode ser utilizada, por exemplo, para aumentar ou diminuir elementos 2D, independentemente do modo de estiramento atual.
- Na API de File, foi adicionada a capacidade de trabalhar com arquivos (incluindo PCK) que têm mais de 2 GB.
- Foram incluídas alterações para aumentar a suavidade de renderização através do cálculo de alterações em quadros sem ligação ao temporizador do sistema e resolução de problemas de sincronização de saída ao usar vsync.
- No sistema de processamento de entrada InputEvents, foi adicionada a suporte para binding a scancodes que refletem o posicionamento físico das teclas no teclado, independentemente do layout ativo (por exemplo, as teclas WASD no layout QWERTY serão automaticamente mapeadas para as teclas ZQSD no layout francês AZERTY).
- Interfaces AESContext e HMACContext foram adicionadas para acesso via scripts aos algoritmos de criptografia AES-ECB, AES-CBC e HMAC. Também foi adicionado a capacidade de salvar e ler chaves públicas RSA para a geração e verificação de assinaturas digitais.
- O motor de renderização recebeu suporte inicial para parar a renderização de objetos que ficam em foco na câmera, mas não estão visíveis devido à sobreposição com outros objetos (por exemplo, que estão atrás de uma parede). O recorte raster (no nível de pixels individuais) de sobreposições será implementado apenas na branch Godot 4, enquanto a Godot 3 inclui alguns métodos geométricos de recorte de objetos sobrepostos e suporte para corte portal.

- Adicionado um novo método de tonificação ACES Fitted, que permite alcançar maior realismo e precisão física através do aumento do contraste de objetos brilhantes.

- Adicionada a suportar a forma de emissão de partículas tridimensionais na forma de anéis ou cilindros ocos.
- No motor de simulação de processos físicos, a performance de geração de objetos convexos a partir de malhas foi significativamente aprimorada e o modo de rastreamento de colisões na interface de inspeção foi reformulado. Para o motor de física 2D, adicionou-se suporte à estrutura BVH (Bounding Volume Hierarchy) para divisão espacial dinâmica. No motor de física 3D, foi implementado o suporte para a função HeightMapShapeSW e adicionados recursos de sincronização com KinematicBody3D.
- Adicionada a capacidade de exportar cenas 3D no formato glTF, por exemplo, para abrir malhas preparadas no Godot no Blender.
- Adicionado suporte ao modo de compressão de imagens WebP sem perdas, que agora é aplicado por padrão para a compressão de texturas ao invés do formato PNG.
- No port para a plataforma Android, foi adicionada a suporte inicial à API de armazenamento em escopo e um novo método de carregamento de recursos adicionais (Play Asset Delivery) para arquivos executáveis no formato AAB (Android App Bundle).
- Para a plataforma HTML5, foi implementada a possibilidade de instalação na forma de PWA (Progressive Web Apps), adicionado a interface JavaScriptObject para interação entre Godot e JavaScript (por exemplo, é possível chamar métodos JavaScript a partir de scripts Godot), e para compilações multithread, foi implementado o suporte para AudioWorklet.
- Para a plataforma macOS, foi adicionado suporte aos sistemas em chip Apple Silicon (M1).
Fonte: opennet.ru




