Pärast 6 kuu arendustööd on välja antud tasuta mängumootor Godot 3.4, mis sobib 2D ja 3D mängude loomiseks. Mootor toetab kergesti õpitavat mänguloogika skriptimise keelt, graafilist keskkonda mängude kujundamiseks, ühe klõpsuga mängude juurutamise süsteemi, laialdasi animatsiooni- ja füüsikasimulatsiooni võimalusi, sisseehitatud silur ja jõudluse kitsaskohtade tuvastamise süsteemi. Mängumootori, mängude kujunduskeskkonna ja sellega seonduvate arendustööriistade (füüsikamootor, heli server, 2D/3D renderdamise tagasüsteem jms) kood on litsentseeritud MIT litsentsi alusel.
Mootori lähtekood vabanes 2014. aastal stuudio OKAM poolt pärast kümmet aastat professionaalse taseme ärilisest tootest arendamist, mida kasutati paljude mängude loomisel ja avaldamisel PC, mängukonsoolide ja mobiilseadmete jaoks. Mootor toetab kõiki populaarseid lauaarvuti ja mobiilplatvorme (Linux, Windows, macOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX), samuti mängude arendamist Webi jaoks. Valmis jooksutavad binaarsed kogumid on loodud Linuxi, Windowsi ja macOS-i jaoks.
Erinevas haru arendatakse uut renderdusse tagumist, mis põhineb graafika API-l Vulkan, ja mis pakutakse järgmises Godot 4.0 väljaandes, asendades praegused renderdusse tagumise lahendused OpenGL ES 3.0 ja OpenGL 3.3 kaudu (OpenGL ES ja OpenGL toe tagamine jääb alles, toetades vana OpenGL ES 2.0 / OpenGL 2.1 tagumist uue Vulkan-põhise renderdamise arhitektuuri peal). Üleminek Godot 3.x-lt Godot 4.0-le nõuab rakenduste ümbertegemist API tasandi ühilduvuse katkemise tõttu, kuid Godot 3.x haru jaoks tagatakse pikk toetamise tsükkel, mille kestus sõltub rangest API kasutajate nõudlusest.
Godot 3.4 paistab silma järgmiste uuendustega:
- Kasutajaliidese kujundus, mis on mõeldud teemade redigeerimiseks, on uuendatud, pakkudes visuaalset protsessi sõlmede valimiseks ning võimaldades kujunduse muutmist ilma eelvaate režiimist lahkumata.

- Redaktorisse on lisatud täiustusi, et parandada kasutusmugavust: lisatud kiire ressursside laadimise funktsioon inspekteerimisrežiimis, lubatud sõlme loomine suvalises asukohas, lisatud uus mallide ekspordi liides, teostatud täiendavaid operatsioone gizmo (piirangute parallelepipedide süsteem) ja parendatud Bezier-kõverate põhine animatsiooni redaktor.

- Lisatud muudatuste tagasivõtmise režiim, mis võimaldab tühistada kohe kõik stseeni muudatused, mis on põhjustatud animatsiooni rakendamisest AnimationPlayer’i kaudu, selle asemel et tühistada iga omaduse muudatust eraldi.
- Seadetesse on lisatud valik 2D-vaate (2D viewport) suurendustaseme muutmiseks, mida saab näiteks kasutada 2D-elementide suurendamiseks või vähendamiseks, olenemata praegusest venitusrežiimist (stretch mode).
- File API-sse on lisatud võimalus töötada failidega (sealhulgas PCK), mille suurus ületab 2 GB.
- Sisse lülitatud muudatused, et parandada joonistamise sujuvust, arvutades kaadrimuudatusi ilma süsteemi taimerile ja lahendades väljundisünkroonimise probleeme vsync’i kasutamisel.
- Sisendite töötlemise süsteemi InputEvents on lisatud tugi skännikoodide seostamiseks, mis peegeldavad klahvivarustuse füüsilist asendit klaviatuuril, sõltumata aktiivsest paigutusest (näiteks klahvid WASD QWERTY-paigutuses vastavad automaatselt klahvidele ZQSD Prantsuse AZERTY-paigutuses).
- Lisatud on AESContext ja HMACContext liidesed, mis võimaldavad skriptidest juurde pääseda AES-ECB, AES-CBC ja HMAC krüptimisalgoritmidele. Samuti on lisatud võimalus salvestada ja lugeda RSA avalikke võtmeid digitaalsete allkirjade loomiseks ja kontrollimiseks.
- Renderdamismootorisse on lisatud esialgne tugi objektide renderdamise lõpetamiseks, mis jäävad kaamera fookusesse, kuid on varjutatud teiste objektide tõttu (näiteks seina taga). Rasterpõhine (individuaalsete pikslite tasandil) varjutamine rakendatakse ainult Godot 4 haru, samas kui Godot 3-s on kaasatud mõned geomeetrilised meetodid kattuvate objektide varjutamiseks ja portaalide kattumise toetamine.

- Uus ACES Fitted hämardamise meetod on lisatud, võimaldades saavutada suuremat realistlikkust ja füüsilist täpsust rõhutades heledate objektide kontrastsust.

- Lisatud on tosupport 3D osakeste vabastamise vormi ringi või õõnsate silindrite näol.
- Füüsikaprotsesside simulaatoris on märgatavalt paranenud kumerate objektide genereerimise tootlikkus ja ümber töötatud on kokku põrgete jälgimise režiim inspektsiooniliidese sees. 2D füüsikamootorisse on lisatud BVH (Bounding Volume Hierarchy) struktuuri tosupport dünaamiliseks ruumiliseks jagamiseks. 3D füüsikamootoris on ellu viidud HeightMapShapeSW funktsiooni tosupport ja lisatud KinematicBody3D-s sünkroonimise vahendeid.
- Lisatud on võimalus eksportida 3D stseene glTF formaadis, näiteks Godot'is ette valmistatud mäshe Blenderis avamiseks.
- Lisatud on tosupport WebP kahefektsete piltide tihendamise režiimi, mis nüüd vaikimisi rakendatakse tekstuuride tihendamiseks PNG vormi asemel.
- Android platvormi sadamas on lisatud esmane tosupport API Scoped storage ja uus viis täiendavate ressursside laadimiseks (Play Asset Delivery) AAB (Android App Bundle) formaatides käivitavate failide jaoks.
- HTML5 platvormile on lisatud võimalus paigaldada rakenduste kujul PWA (Progressive Web Apps). Godoti ja JavaScripti vaheliseks suhtlemiseks on lisatud JavaScript Objecti liides (näiteks saab kutsuda JavaScripti meetodeid Godoti skriptidest) ning mitme lõime toimetamiseks on toetatud AudioWorklet.
- macOS platvormile on lisatud tugi Apple Silicon (M1) kiibisüsteemidele.
Allikas: opennet.ru




