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...
Passare da Godot 4.5 a Godot 4.6
Per la maggior parte dei giochi e delle applicazioni creati in 4.5, dovrebbe essere relativamente sicuro migrare a 4.6. Questa pagina intende illustrare tutti gli aspetti a cui prestare attenzione durante la migrazione del proprio progetto.
Modifiche incompatibili
Se stai migrando dalla versione 4.5 alla 4.6, le modifiche incompatibili elencate qui potrebbero interessarti. Le modifiche sono raggruppate per aree/sistemi.
Questo articolo indica se ogni modifica incompatibile influisce su GDScript e se una modifica incompatibile in C# è compatibile con il binario o compatibile con il codice sorgente:
Compatibile con gli eseguibili - Gli eseguibili esistenti saranno caricati ed eseguiti correttamente senza doverli ricompilare, e il comportamento in fase di esecuzione non cambierà.
Compatibile con il codice sorgente - Il codice sorgente sarà compilato correttamente senza cambiamenti all'aggiornamento di Godot.
Fondamentali
Cambiamento |
Compatibili con GDScript |
Compatibili con eseguibili C# |
Compatibili con codice sorgente C# |
Introdotti |
|---|---|---|---|---|
FileAccess |
||||
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Prestazioni |
||||
Il metodo |
✔️ |
✔️ |
✔️ |
Animazione
Cambiamento |
Compatibili con GDScript |
Compatibili con eseguibili C# |
Compatibili con codice sorgente C# |
Introdotti |
|---|---|---|---|---|
AnimationPlayer |
||||
La proprietà |
✔️ |
❌ |
❌ |
|
La proprietà |
✔️ |
❌ |
❌ |
|
La proprietà |
✔️ |
❌ |
❌ |
|
Il metodo |
✔️ |
❌ |
❌ |
|
Il metodo |
✔️ |
❌ |
❌ |
3D
Cambiamento |
Compatibili con GDScript |
Compatibili con eseguibili C# |
Compatibili con codice sorgente C# |
Introdotti |
|---|---|---|---|---|
SpringBoneSimulator3D |
||||
Il metodo |
✔️ |
❌ |
✔️ |
|
Il metodo |
✔️ |
❌ |
✔️ |
|
Il metodo |
✔️ |
❌ |
✔️ |
|
Il metodo |
✔️ |
❌ |
✔️ |
|
Il metodo |
✔️ |
❌ |
✔️ |
|
Il metodo |
✔️ |
❌ |
✔️ |
Renderer
Cambiamento |
Compatibili con GDScript |
Compatibili con eseguibili C# |
Compatibili con codice sorgente C# |
Introdotti |
|---|---|---|---|---|
DisplayServer |
||||
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
Nodi GUI
Cambiamento |
Compatibili con GDScript |
Compatibili con eseguibili C# |
Compatibili con codice sorgente C# |
Introdotti |
|---|---|---|---|---|
Control |
||||
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
FileDialog |
||||
Il metodo |
✔️ |
✔️ |
✔️ |
|
LineEdit |
||||
Il metodo |
✔️ |
✔️ |
✔️ |
|
SplitContainer |
||||
Il metodo |
✔️ |
✔️ |
✔️ |
Networking
Cambiamento |
Compatibili con GDScript |
Compatibili con eseguibili C# |
Compatibili con codice sorgente C# |
Introdotti |
|---|---|---|---|---|
StreamPeerTCP |
||||
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
❌ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
TCPServer |
||||
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
OpenXR
Cambiamento |
Compatibili con GDScript |
Compatibili con eseguibili C# |
Compatibili con codice sorgente C# |
Introdotti |
|---|---|---|---|---|
OpenXRExtensionWrapper |
||||
Il metodo |
❌ |
❌ |
❌ |
|
Il metodo |
N/A |
N/A |
N/A |
Nota
Il tipo OpenXRExtensionWrapper è concepito per essere una sottoclasse in GDExtension. Il metodo _set_instance_create_info_and_get_next_pointer ha un parametro void*, quindi non è esposto agli script.
Editor
Cambiamento |
Compatibili con GDScript |
Compatibili con eseguibili C# |
Compatibili con codice sorgente C# |
Introdotti |
|---|---|---|---|---|
EditorExportPreset |
||||
Il metodo |
✔️ |
❌ |
❌ |
|
EditorFileDialog |
||||
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Metodo |
❌ |
❌ |
❌ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
Il metodo |
✔️ |
✔️ |
✔️ |
|
La proprietà |
✔️ |
❌ |
✔️ |
|
La proprietà |
✔️ |
✔️ |
✔️ |
|
La proprietà |
✔️ |
✔️ |
✔️ |
|
La proprietà |
✔️ |
✔️ |
✔️ |
|
La proprietà |
✔️ |
❌ |
✔️ |
|
La proprietà |
✔️ |
❌ |
✔️ |
|
La proprietà |
✔️ |
✔️ |
✔️ |
|
La proprietà |
✔️ |
✔️ |
✔️ |
|
La proprietà |
✔️ |
✔️ |
✔️ |
|
Il segnale |
✔️ |
❌ |
✔️ |
|
Il segnale |
✔️ |
❌ |
✔️ |
|
Il segnale |
✔️ |
❌ |
✔️ |
|
Il segnale |
✔️ |
❌ |
✔️ |
Cambiamenti di comportamento
Android
Nota
La configurazione dei set di origine per i modelli di esportazione Android è stata aggiornata per corrispondere alla struttura predefinita dei progetti in Android Studio (GH-110829). Ciò influisce sulla struttura delle cartelle del progetto Android:
I file che prima si trovavano in
[Project root]/android/build/src/ora si trovano in[Project root]/android/build/src/main/java/.Il file manifest di Android e la cartella delle risorse sono stati spostati nelle sottocartelle
src/main/.
Ad esempio, il file GodotApp.java è stato spostato da src/com/godot/game/GodotApp.java a src/main/java/com/godot/game/GodotApp.java.
Fondamentali
Nota
Il Formato dei file TSCN è cambiato in due modi in Godot 4.6:
load_stepsnon è più scritto nei file di scena (GH-103352). Questo attributo non era utilizzato dall'editor.ID univoci per i nodi sono ora salvati nei file di scena per aiutare a tenere traccia dei nodi quando sono spostati o rinominati (GH-106837). Ciò rende il refactoring delle scene significativamente più robusto.
I cambiamenti sono retrocompatibili e compatibili con le versioni successive, il che significa che le scene salvate in Godot 4.5 si possono caricare in Godot 4.6 e viceversa (escludendo altre modifiche incompatibili apportate alla scena stessa).
Pertanto, quando si salva una scena modificata per l'ultima volta in Godot 4.5 in Godot 4.6, appariranno notevoli differenze nei programmi di controllo versioni. Queste differenze sono previste.
Come promemoria, è possibile aggiornare tutti i file di un progetto al formato più recente attraverso nell'editor, per poi effettuare il commit dei cambiamenti nel sistema di controllo versioni. Questo permette di evitare notevoli differenze in seguito, durante la modifica delle scene.
Renderer
Nota
La modalità di fusione predefinita per il bagliore (Glow) ora è Screen, che appare più corretta ma è notevolmente più luminosa della precedente modalità Soft Light (GH-110671).
Sono state cambiati diversi altri valori predefiniti riguardanti il bagliore per evitare che diventasse troppo intenso, ma probabilmente sarà necessario regolare le proprietà di bagliore nella sezione Environment dopo aver aggiornato.
Inoltre, la modalità di fusione Soft Light (luce soffusa) del bagliore ora si comporta sempre come prima con use_hdr_2d, a prescindere dall'impostazione use_hdr_2d della Viewport (GH-109971).
Quando si usa il renderer mobile, l'effetto bagliore riscritto apparirà notevolmente diverso da quello di prima per motivi di prestazioni (GH-110077). Potrebbe essere necessario regolare ulteriormente le impostazioni del bagliore in Environment per ottenere un aspetto simile a prima.
Nota
La fusione della nebbia volumetrica è stata modificata per essere più fisicamente accurata (GH-112494). Questo la farà apparire più luminosa nella maggior parte delle scene.
Per compensare, sarà necessario diminuire la densità o la luminosità della nebbia volumetrica in Environment, oppure diminuire la proprietà Volumetric Fog Energy su luci specifiche.
Valori predefiniti modificati
I seguenti valori predefiniti sono stati modificati. Se il tuo progetto si basa sui valori predefiniti precedenti, potrebbe essere necessario impostarli esplicitamente sui vecchi valori.
Nota
Il driver di rendering predefinito su Windows per i progetti appena creati è ora D3D12 (GH-113213). Questo si può cambiare nelle Impostazioni del progetto, in rendering/rendering_device/driver.windows.
Nota
Il motore di fisica 3D predefinito per i progetti appena creati è ora Jolt Physics (GH-105737). Questo si può cambiare nelle Impostazioni del progetto, in physics/3d/physics_engine.
3D
Membro |
Valore vecchio |
Valore nuovo |
Introdotti |
|---|---|---|---|
MeshInstance3D |
|||
Proprietà |
NodePath("..") |
NodePath("") |
Nota
Il valore predefinito di skeleton è cambiato. Abilita animation/compatibility/default_parent_skeleton_in_mesh_instance_3d nelle impostazioni del progetto se il vecchio comportamento è necessario per motivi di compatibilità.
Renderer
Membro |
Valore vecchio |
Valore nuovo |
Introdotti |
|---|---|---|---|
ProjectSettings |
|||
Proprietà |
8 |
7 |
|
Proprietà |
613 |
618 |
|
Environment |
|||
Proprietà |
2 |
1 |
|
Proprietà |
0.8 |
0.3 |
|
Proprietà |
0.0 |
0.8 |
|
Proprietà |
1.0 |
0.4 |
|
Proprietà |
0.0 |
0.1 |
|
Proprietà |
1.0 |
0.0 |
|
Proprietà |
0.2 |
0.5 |
Nodi GUI
Proprietà/Parametro |
Valore vecchio |
Valore nuovo |
Introdotti |
|---|---|---|---|
PopupMenu |
|||
Proprietà |
0.3 |
0.2 |
|
ResourceImporterCSVTranslation |
|||
Proprietà |
true |
1 |