È stato rilasciato Godot 4.6, un motore di gioco open source adatto per la creazione di giochi 2D e 3D. Il motore supporta un linguaggio di scripting facile da apprendere per la logica di gioco, un'interfaccia grafica per la progettazione dei giochi, un sistema di distribuzione con un clic, funzionalità di animazione e simulazione fisica, un debugger integrato e un sistema per l'identificazione dei colli di bottiglia delle prestazioni. Il codice del motore di gioco, dell'ambiente di progettazione dei giochi e degli strumenti di sviluppo correlati (motore fisico, server audio, backend di rendering 2D/3D, ecc.) è distribuito sotto licenza MIT.
I testi sorgente del motore sono stati resi disponibili nel 2014 dallo studio OKAM, dopo dieci anni di sviluppo di un prodotto proprietario di livello professionale, utilizzato per creare e pubblicare molti giochi per PC, console e dispositivi mobili. Il motore supporta tutte le piattaforme fisse e mobili più diffuse (Linux, Windows, macOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX) e lo sviluppo di giochi per il Web. Le build binarie pronte per l'uso sono state create per Linux, Android, Windows e macOS.
Le principali modifiche in Godot 4.6 (1, 2, 3):
- Nell'editor è stata introdotta di default una nuova interfaccia grafica chiamata "Modern", caratterizzata da un aspetto contemporaneo, un contrasto più marcato per migliorare la leggibilità, ottimizzazioni dei margini tra gli elementi e una palette di colori in tonalità grigie. Per gli utenti abituati al vecchio design, è disponibile un'opzione per tornare al tema classico.

- Nell'editor è stata unificata la gestione dei pannelli. I pannelli inferiori e la maggior parte dei pannelli dock ora sono flottanti e possono essere separati. I pannelli possono essere spostati tramite drag & drop in diverse parti dell'interfaccia.
- Per i nuovi progetti 3D, il motore di simulazione dei processi fisici JoltPhysics è attivato per impostazione predefinita, già utilizzato in giochi di classe AAA come Death Stranding 2.
- È stato aggiunto un nuovo sistema di cinematica inversa (IK, inverse kinematic) che consente di creare animazioni più realistiche. Sono stati introdotti nuovi modificatori e vincoli (constraint) che permettono di controllare la rotazione e la velocità angolare delle articolazioni per escludere movimenti indesiderati. I vincoli specificati possono essere collegati ai nodi 3D, ad esempio, per far sì che il braccio del personaggio si estenda e afferri un'arma. È stato aggiunto un nuovo modificatore IKModifier3D, basato sul modificatore scheletrico SkeletonModifier3D. Sono disponibili risolutori deterministici (solver) TwoBoneIK3D e SplineIK3D, così come i risolutori iterativi FABRIK3D, CCDIK3D e JacobianIK3D. L'architettura modulare del framework IK consente di combinarlo con altri modificatori e vincoli per una messa a punto precisa dell'animazione procedurale direttamente nel motore.
- Il sistema SSR (Screen Space Reflection) è stato completamente riprogettato, migliorando la visualizzazione dei materiali riflettenti, come metallo, acqua e vetro. La nuova implementazione raggiunge una maggiore realismo, offre un incremento delle performance e introduce due modalità: full-resolution (massima qualità) e half-resolution (ridotta). elevata performance).
- Sono stati implementati identificativi unici interni per i nodi (Node ID), che vengono salvati nei file delle scene e non cambiano dopo la riorganizzazione della scena, la modifica della gerarchia degli elementi, o lo spostamento e il rinominare dei nodi.
- È stata aggiunta la libreria libgodot, che consente di integrare Godot Engine nelle proprie applicazioni anziché eseguirlo come processo separato, utile nello sviluppo di editor di giochi personalizzati. È supportata la compatibilità con Linux, Windows e macOS.
- Le scene 2D, inserite come tile nel TileMap (ad esempio, cofani animati, lampade e torce), possono ora ruotare in incrementi di 90 gradi.
- Per avvicinare il flusso di lavoro ai moderni editor 3D, sono stati separati i modi di selezione e trasformazione. La precedente modalità ‘Selezione’ è stata rinominata in ‘Trasformazione’ e è stata aggiunta una nuova modalità solo per la selezione, in cui è possibile selezionare nodi senza mostrare il gizmo di trasformazione, prevenendo così operazioni accidentali di spostamento, rotazione e ridimensionamento.
- Migliorato lo strumento di disegno e cancellazione 3D in GridMap, che è stato riprogettato con l'algoritmo di Bresenham per l'interpolazione tra i punti, consentendo linee più fluide e accelerando la creazione di nuovi livelli e mappe voxel grazie alla riduzione delle regolazioni manuali.
- Nel gizmo 3D è stata aggiunta la possibilità di ruotare gli oggetti allineandoli alla direzione della camera.
- Nell'interfaccia grafica è stato semplificato il processo di centraggio del punto di rotazione.
- Separata la gestione del focus per mouse/touchpad e tastiera: il clic del mouse non cambia più il focus di input dalla tastiera.
- Quando si seleziona il nodo MarginContainer nell'editor, è garantita la visualizzazione dei margini nell'area di visualizzazione.

- È stata migliorata la navigazione tra le schede: durante lo spostamento delle risorse in modalità Drag & Drop, ora è possibile posizionare il cursore sulla scheda desiderata e passare automaticamente ad essa senza cliccare.
- Nella sezione Output, per aprire un file nell'editor, ora è possibile cliccare sul suo nome nel messaggio di errore o di avviso.
- Nello strumento di tracciamento degli oggetti è stata aggiunta la possibilità di creare snapshot di ObjectDB e confrontare gli stati con le liste di oggetti esistenti in determinati momenti.

- Nella finestra di dialogo per l'apertura rapida delle risorse (Quick Open) è stata aggiunta la supporto per la visualizzazione in anteprima della risorsa selezionata nel contesto della scena esistente.
- Nell'editor di animazione è ora possibile modificare la durata dell'animazione estendendo o accorciando i clip sulla timeline. Nell'interfaccia per la gestione delle curve di Bézier sono stati aggiunti pulsanti per visualizzare, bloccare e rimuovere gruppi di nodi.
- È stata aggiunta la supporto per la delta-coding dei patch PCK, che consente di includere nei patch solo le parti modificate delle risorse.
- È stata aggiunta la possibilità di personalizzare il colore dei LED nei controller di gioco. In futuro, si prevede il supporto per i sensori di movimento, i touchpad, il feedback tattile, i trigger adattivi e la raccolta di informazioni sui controller.
- Grazie all'ottimizzazione del trattamento delle texture RGB, ora convertite in RGBA sulla GPU e utilizzate direttamente, le operazioni di importazione di texture compresse sono state accelerate fino a due volte.
- Nella modalità di rendering predefinita è attivato il blending «Screen» e viene applicato l'effetto di glow prima della tonificazione. È stata aggiunta la possibilità di personalizzare i parametri di tonemapping AgX.
- Nel Godot XR Editor è stato aggiunto il supporto per i dispositivi Android XR per semplificare il testing e il debugging di progetti per realtà aumentata e virtuale. È stato introdotto il supporto per la specifica OpenXR 1.1.

- È stato aggiunto il supporto per l'esecuzione di applicazioni esportate su dispositivi Android tramite scrcpy per il mirror del contenuto dello schermo dello smartphone su quello del PC.
- Nella compilazione dei progetti per Windows, viene utilizzato per impostazione predefinita Direct3D 12.
Inoltre, vale la pena notare la continuazione dello sviluppo del progetto Redot, che sta sviluppando un fork di Godot, creato in risposta alla rigida politica di moderazione nei canali ufficiali e all'incapacità degli sviluppatori di Godot di accettare opinioni diverse dalle loro. I fondatori di Redot intendevano costruire una comunità inclusiva, in cui si accettano tutte le convinzioni personali degli sviluppatori, senza politicizzare il processo di sviluppo e concentrandosi esclusivamente sulla creazione di giochi. Qualche giorno fa è stata pubblicata la candidata alla release di Redot 26.1, che include molti miglioramenti da Godot 4.6.
Fonte: opennet.ru




