Po 7 mesiacoch vývoja bol vydaný bezplatný herný engine Godot 3.3 vhodný na vytváranie 2D a 3D hier. Engine podporuje ľahko naučiteľný jazyk hernej logiky, grafické prostredie pre herný dizajn, systém nasadzovania hier na jedno kliknutie, rozsiahle možnosti animácií a simulácií fyzických procesov, vstavaný debugger a systém na identifikáciu prekážok výkonu. . Kód herného enginu, prostredia pre návrh hry a súvisiace vývojové nástroje (fyzikálny engine, zvukový server, backendy pre 2D/3D rendering atď.) sú distribuované pod licenciou MIT.
Zdrojový kód enginu bol sprístupnený v roku 2014 spoločnosťou OKAM Studios po desiatich rokoch vývoja proprietárneho produktu profesionálnej úrovne, ktorý sa používa na vytváranie a publikovanie mnohých hier pre PC, konzoly a mobilné zariadenia. Engine podporuje všetky populárne desktopové a mobilné platformy.Linux, Windows, macOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX), ako aj vývoj webových hier. Vytvárajú sa pripravené binárne zostavenia pre Linux, Windows и macOS.
Samostatná pobočka vyvíja nový renderovací backend založený na grafickom API Vulkan, ktorý bude ponúkaný v ďalšom vydaní Godot 4.0 namiesto v súčasnosti ponúkaných renderovacích backendov cez OpenGL ES 3.0 a OpenGL 3.3 (podpora OpenGL ES a OpenGL bude byť zachované prostredníctvom poskytovania starého backendu OpenGL ES 2.0 /OpenGL 2.1 nad novou architektúrou vykresľovania založenou na Vulkan). Prechod z Godot 3.x na Godot 4.0 si bude vyžadovať prepracovanie aplikácií kvôli problémom s kompatibilitou na úrovni API, ale vetva Godot 3.x bude mať dlhý cyklus podpory, ktorého trvanie bude závisieť od dopytu po API. prísne zo strany používateľov.
Vetva Godot 3.3 je plne kompatibilná s Godot 3.2 a pokračuje vo vývoji stabilných verzií motora, ktoré budú mať dlhý cyklus podpory. Pôvodne sa namiesto Godota 3.3 plánovalo vydanie aktualizácie 3.2.4, ale verzie 3.2.x boli užívateľmi vnímané ako opravné, a to aj napriek portovaniu nových funkcií z vetvy 4.0, takže projekt prešiel na klasickú schému sémantického verzovania . Konkrétne, tretia číslica bude teraz označovať prítomnosť iba opráv, druhá bude označovať zahrnutie novej funkcie a prvá bude indikovať prítomnosť zmien, ktoré ovplyvňujú kompatibilitu. Vetva 3.xx bude udržiavaná paralelne s 4.xx, kým nebude Godot 4.x plne stabilizovaný a prispôsobený pre všetok súčasný hardvér.
Godot 3.3 je pozoruhodný pridaním nasledujúcich inovácií:
- Bola pripravená verzia editora, ktorá funguje vo webovom prehliadači.

- Pridaná možnosť exportu hier pre platformu Android vo formáte AAB (Android App Bundle), okrem balíkov APK. Formát AAB vám umožňuje stiahnuť iba tie natívne knižnice, ktoré sú potrebné na prevádzku na aktuálnom zariadení (napríklad armeabi-v7a alebo arm64-v8a). Pre platformu Android Bola tiež implementovaná možnosť vkladať prvky založené na Godotovom algoritme do aplikácií ako podpohľady, ktoré využívajú časť okna. Pridaná bola aj podpora pre slepé oblasti obrazovky (krivky a zárezy kamery), udalosti myši a vstup z externej klávesnice.

- Bolo navrhnuté nové API na vytváranie a distribúciu pluginov pre platformu iOS, ktoré umožňuje umiestniť pluginy (ARKit, GameCenter, InAppStore) do samostatného repozitára a vyvíjať ich nezávisle od enginu Godot. Toto API bolo pre túto platformu implementované už predtým. Android.
- Vylepšené nástroje na export hier pre web (platforma HTML5). Pre hry bežiace v prehliadači bola pridaná podpora pre multi-threading a GDNative skripty, ale kvôli obmedzeniam platformy HTML5 je ich implementácia nekompatibilná s možnosťami pre natívne hry. Implementácia vlákien je navyše viazaná na SharedArrayBuffer API, ktoré nie je dostupné vo všetkých prehliadačoch. K dispozícii sú tri samostatné režimy exportu – Regular, Threads a GDNative. Viacvláknový profil navyše pridáva podporu pre AudioWorklet API, čo umožňuje vyššiu kvalitu zvukového výstupu bez blokovania hlavného vlákna. Výrazne vylepšená podpora pre gamepady a virtuálne klávesnice.

- Pridaná podpora pre vytváranie hier pre nový hardvér Apple vybavený čipom M1 ARM. Pridaná podpora pre pripájanie digitálnych podpisov k spustiteľným súborom vygenerovaným pre macOS.
- Z vetvy 4.0 bolo prenesené modernizované API pre organizáciu multithreadingu, ktoré využíva možnosti štandardu C++14, zvýšenú spoľahlivosť prevádzky na rôznych platformách a optimalizovaný výkon.
- Z vetvy 4.0 bola presunutá optimalizácia, ktorá používa štruktúru BVH (Bounding Volume Hierarchy) namiesto metódy Octree pre dynamické priestorové delenie počas renderovania. BVH je teraz predvolená a rieši veľa problémov s výkonom.
- Použitá je jednotná implementácia 2D dávkovania (Batching, optimalizácia na zníženie volaní ťahania zohľadnením relatívnej polohy objektov), ktorú je možné použiť pre OpenGL ES 3 aj OpenGL ES 2. Samotná optimalizácia teraz pokrýva viac objektov, napr. čiary a polygóny.
- Pridaný nový svetelný mapovač, ktorý používa metódu sledovania cesty a podporuje potlačenie šumu pomocou knižnice oidn (Open Image Denoise). Nový svetelný mapovač používa CPU na výpočty a rieši väčšinu problémov s kvalitou starých procesorov. Okrem toho bola pripravená verzia lightmapper, ktorá využíva GPU, no je naviazaná na Vulkan API a objaví sa len vo vetve 4.0.

- Mnohé vylepšenia súvisiace s vykresľovaním boli prenesené z vetvy Godot 4.0, ako napríklad rýchlejšie softvérové sťahovanie, optimalizované transformácie skrytých 3D objektov, prispôsobiteľný počet svetiel na objekt a vylepšené vykresľovanie tieňov pomocou filtra PCF.

- Fyzikálny simulačný engine zlepšil zvládanie rôznych typov kolízií.
- Editor pridal všetky možnosti kopírovania a vkladania uzlov, čo umožňuje prenos medzi rôznymi scénami.
- Vylepšený bol kontrolný režim, v ktorom je zabezpečená vizuálna alokácia čiastkových zdrojov.

- Pridaná podpora pre definovanie predvolených nastavení pre importované zdroje.

- Pracovalo sa na zlepšení použiteľnosti práce v 3D editore, vrátane pridania nekonečnej dynamickej XNUMXD siete a výrazne vylepšenej implementácii rotácie a výberu pomocou gizmo (indikátor súradnicových osí).

- Do nástrojov skupinovej spolupráce bola pridaná ochrana pred zmenami scén, ktoré už otvorili iní používatelia (ak sa pri ukladaní zistia novšie verzie otvorených súborov, zobrazí sa upozornenie).
- Vylepšený import zo súborov FBX.

- Pridaný OpenXR plugin s podporou rovnomenného štandardu pre vytváranie aplikácií virtuálnej a rozšírenej reality. Podpora špecifikácie WebXR bola pridaná do HTML5 portu na vytváranie hier založených na technológiách virtuálnej reality.

- Pridaná podpora pre sťahovanie a prehrávanie zvuku vo formáte MP3 (predtým nepodporované kvôli patentom).
- GraphEdit pridal podporu pre minimapu celej štruktúry, ktorá sa zobrazuje v pravom dolnom rohu a umožňuje vám vidieť všetky uzly na prvý pohľad.

Zdroj: opennet.ru











