Atualizando do Godot 4.1 para o Godot 4.2
Para a maioria dos jogos e aplicativos feitos com a versão 4.1, deve ser relativamente seguro migrar para a versão 4.2. Esta página tem a intenção de cobrir tudo o que você precisa para prestar atenção ao migrar seu projeto.
Breaking changes
Se você estiver migrando da versão 4.1 para a 4.2, as alterações significativas listadas aqui podem afetá-lo. As alterações são agrupadas por áreas/sistemas.
Aviso
O formato de recurso Mesh mudou na versão 4.2 para permitir compressão de vértices e atributos. Isso possibilita uma melhora no desempenho de renderização, especialmente em plataformas limitadas pela largura de banda da memória, como dispositivos móveis.
Ainda é possível carregar os formatos Mesh do Godot 4.0-4.1, mas não é possível carregar o formato Mesh do Godot 4.2 em versões anteriores do Godot. Ao abrir um projeto Godot criado com uma versão anterior à 4.2, você poderá ver uma caixa de diálogo de atualização com duas opções:
Reiniciar e Atualizar: Atualiza o formato de malha para todas as malhas do projeto e salva o resultado em disco. Uma vez selecionada, esta opção impede o downgrade do projeto para uma versão do Godot anterior à 4.2. Configure um sistema de controle de versão e envie suas alterações antes de escolher esta opção!
Somente Atualização: Atualiza o formato da malha na memória sem gravá-lo em disco. Isso permite fazer downgrade do projeto para uma versão do Godot anterior à 4.2, caso seja necessário no futuro. A desvantagem é que o carregamento do projeto será mais lento a cada vez, pois o formato da malha precisa ser atualizado sempre que o projeto for carregado. Esses tempos de carregamento mais longos também afetarão o projeto exportado. A quantidade e complexidade dos recursos da malha determinam o quanto os tempos de carregamento são afetados.
Se esta caixa de diálogo não aparecer, use Projeto > Ferramentas > Atualizar Superfícies de Malhas… na parte superior do editor.
Este artigo indica se cada alteração drástica afeta o GDScript e se a alteração drástica do C# é compatível com o binário ou compatível com o código-fonte:
Compatível com binários - Os binários existentes serão carregados e executados com sucesso sem recompilação, e o comportamento em tempo de execução não mudará.
Compatível com a fonte - O código fonte será compilado com sucesso, sem alterações, ao atualizar o Godot.
Componentes Principais
Change |
GDScript Compatible |
Compatível com C# Binário |
Compatível com fonte C# |
Introduced |
|---|---|---|---|---|
Node |
||||
Constante |
❌ |
✔️ |
❌ |
Animação
Change |
GDScript Compatible |
Compatível com C# Binário |
Compatível com fonte C# |
Introduced |
|---|---|---|---|---|
AnimationPlayer |
||||
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Sinal |
✔️ |
❌ |
❌ |
|
Sinal |
✔️ |
❌ |
❌ |
|
Sinal |
✔️ |
✔️ |
✔️ |
|
Sinal |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Sinal |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
O método |
✔️ |
✔️ |
✔️ |
|
AnimationTree |
||||
Método |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Sinal |
✔️ |
❌ |
❌ |
|
Sinal |
✔️ |
❌ |
❌ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Método |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
A propriedade |
✔️ |
❌ |
❌ |
GUI nodes
Change |
GDScript Compatible |
Compatível com C# Binário |
Compatível com fonte C# |
Introduced |
|---|---|---|---|---|
PopupMenu |
||||
O método |
✔️ |
✔️ |
✔️ |
|
O método |
✔️ |
✔️ |
✔️ |
|
O método |
✔️ |
✔️ |
✔️ |
|
RichTextLabel |
||||
Adicionados novos parâmetros opcionais |
✔️ |
✔️ |
✔️ |
Renderização
Change |
GDScript Compatible |
Compatível com C# Binário |
Compatível com fonte C# |
Introduced |
|---|---|---|---|---|
ImporterMesh |
||||
Alterado o tipo do parâmetro |
✔️ |
✔️ |
✔️ |
|
Alterado o tipo de retorno do método |
✔️ |
❌ |
❌ |
|
MeshDataTool |
||||
Adicionado novo parâmetro opcional |
✔️ |
✔️ |
✔️ |
|
Alterado o tipo de retorno do método |
✔️ |
❌ |
❌ |
|
RenderingDevice |
||||
O campo Enum |
✔️ |
✔️ |
✔️ |
|
O campo Enum |
✔️ |
✔️ |
✔️ |
|
O campo Enum |
✔️ |
✔️ |
✔️ |
|
Adicionado novo parâmetro opcional |
✔️ |
✔️ |
✔️ |
|
Alterado o tipo de retorno do método |
✔️ |
❌ |
❌ |
|
SurfaceTool |
||||
Alterado o tipo do parâmetro |
✔️ |
✔️ |
✔️ |
Text
Change |
GDScript Compatible |
Compatível com C# Binário |
Compatível com fonte C# |
Introduced |
|---|---|---|---|---|
Fonte |
||||
Método |
✔️ |
❌ |
❌ |
|
Método |
✔️ |
❌ |
❌ |
|
Adicionado novos parâmetros opcionais |
✔️ |
✔️ |
✔️ |
GraphEdit
Change |
GDScript Compatible |
Compatível com C# Binário |
Compatível com fonte C# |
Introduced |
|---|---|---|---|---|
GraphEdit |
||||
Propriedade |
❌ |
✔️ |
✔️ |
|
Método |
❌ |
✔️ |
✔️ |
|
Propriedade |
❌ |
✔️ |
✔️ |
|
Propriedade |
❌ |
✔️ |
✔️ |
|
GraphNode |
||||
Propriedade |
❌ |
❌ |
❌ |
|
Sinal |
❌ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Sinal |
✔️ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Método |
❌ |
❌ |
❌ |
|
Propriedade |
❌ |
❌ |
❌ |
|
Sinal |
✔️ |
✔️ |
✔️ |
|
Sinal |
✔️ |
✔️ |
✔️ |
|
Propriedade |
❌ |
❌ |
❌ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Sinal |
✔️ |
✔️ |
✔️ |
|
Sinal |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Sinal |
✔️ |
❌ |
❌ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Propriedade |
✔️ |
✔️ |
✔️ |
|
Propriedade |
❌ |
❌ |
❌ |
|
Propriedade |
❌ |
❌ |
❌ |
TileMap
Change |
GDScript Compatible |
Compatível com C# Binário |
Compatível com fonte C# |
Introduced |
|---|---|---|---|---|
TileMap |
||||
Propriedade |
❌ |
✔️ |
✔️ |
XR
Change |
GDScript Compatible |
Compatível com C# Binário |
Compatível com fonte C# |
Introduced |
|---|---|---|---|---|
XRInterface |
||||
Propriedade |
✔️ |
❌ |
❌ |
Nota
Essa alteração quebra a compatibilidade em C# porque a nova propriedade entra em conflito com o nome de uma enumeração existente e o gerador de vinculações C# dá prioridade às propriedades, então o tipo de enumeração foi renomeado de EnvironmentBlendMode para EnvironmentBlendModeEnum.