A MUNKÁL KÉRÉSÉRE! Az opennetről átvett.
10 hónapos fejlesztés után megjelent a szabad játékmotor kiadása Godot 3.2, amely alkalmas 2D és 3D játékok készítésére. A motor egy könnyen tanulható játéklogikai nyelvet, grafikus játéktervező környezetet, egy kattintásos telepítési rendszert, széleskörű animációs és fizikai szimulációs lehetőségeket, beépített hibakeresőt és teljesítményproblémák felderítő rendszerét támogatja. A játékmotor, a játéktervező környezet és a kapcsolódó fejlesztőeszközök (fizikai motor, hangszolgáltató, 2D/3D renderelő háttér stb.) MIT licenc alatt állnak rendelkezésre.
A motor forráskódját 2014-ben az OKAM műhely tette nyilvánossá, miután tíz éven át egy professzionális szintű szabadalmaztatott termékként fejlődött, amelyet számos PC-s, konzolos és mobiljáték készítésére és kiadására használtak. A motor támogatja a legnépszerűbb álló és mobil platformokat (Linux, Windows, macOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX), valamint a webes játékfejlesztést. Kész, futtatható bináris kiadások készültek Linuxra, Windowsra és macOS-ra.
Egy külön ágon egy új renderelő háttér kerül kifejlesztésre a Vulkan grafikus API alapján, amely a következő Godot 4.0 kiadásban lesz elérhető, a jelenleg elérhető OpenGL ES 3.0 és OpenGL 3.3 renderelő háttér helyett (az OpenGL ES és OpenGL támogatás megmarad a régi OpenGL ES 2.0/OpenGL 2.1 háttér új Vulkan alapú architektúrára való működtetésével). Az áttérés a Godot 3.2-ről a Godot 4.0-ra API szinten nem kompatibilitást igényel az alkalmazások újraírásához, de a Godot 3.2 ágon hosszú távú támogatási ciklus lesz biztosítva, amely a felhasználók igényeitől függ. A 3.2.x átmeneti verziókba nem zárható ki a stabilitást nem befolyásoló újítások portolása a 4.x ágból, mint például az AOT fordítás támogatása, ARCore, DTLS és iOS platformok C# projektekhez.
A Godot 3.2 fő újdonságai:
- Hozzáadva az Oculus Quest virtuális valóság sisakok támogatása, az Android platformhoz készült plugin alapján. Az iOS kiterjesztett valóság rendszerek fejlesztéséhez hozzáadva az ARKit keretrendszer támogatása. Az Androidhoz az ARCore keretrendszer támogatása fejlődik, de ez még nem készült el, és a 3.3.x köztes kiadások egyikében kerül bevezetésre.
- Átdolgozták a shader vizuális szerkesztő felületét. Új csomópontok kerültek hozzáadásra a fejlettebb shader-ek létrehozásához. A klasszikus skriptekkel megvalósított shader-ekhez hozzáadva a konstansok, tömbök és a 'varying' módosítók támogatása. Számos OpenGL ES 3.0-specifikus shader-t portoltak OpenGL ES 2-re.
- A ténylegesen helyes anyagok renderelésének (PBR) támogatása szinkronizálva lett az új PBR renderáló motorok képességeivel, mint például a Blender Eevee és a Substance Designer, annak érdekében, hogy hasonló megjelenítést biztosítson a Godot és a használt 3D modellező csomagok között.
- Különböző renderelési beállítások optimalizálása a teljesítmény növelése és a képminőség javítása érdekében. Sok lehetőség került áthelyezésre a GLES3 backendbe, beleértve az MSAA (Multisample anti-aliasing) simítási módszer és a különböző utófeldolgozási effektusok (fénytükröződés, DOF elmosódás és BCS) támogatását.
- Teljes támogatás hozzáadva a glTF 2.0 (GL Transmission Format) formátumú 3D jelenetek és modellek importálására, valamint kezdeti támogatás az FBX formátumhoz, amely lehetővé teszi animációval rendelkező jelenetek importálását Blenderből, de még nem kompatibilis a Maya és 3ds Max programokkal. Hozzáadva a skeletálás támogatása a glTF 2.0 és FBX jelenetek importálása során, lehetővé téve ugyanannak a vázrendszernek a használatát több mesh-ben. A glTF 2.0 támogatásának javításán és stabilizálásán a Blender csomag fejlesztői közösséggel közösen dolgoztak, ahol a javított glTF 2.0 támogatás a 2.83-as kiadásban fog megjelenni.
- A motor hálózati lehetőségei kibővültek a WebRTC és WebSocket protokollok, valamint a multicast üzemmódban történő UDP használatának támogatásával. API került hozzáadásra a kriptográfiai hashekkel és tanúsítványokkal való munkához. Grafikus felhasználói felület került bevezetésre a hálózati aktivitás profilozásához. Elkezdődött a Godot WebAssembly/HTML5 portának létrehozása, amely lehetővé teszi a szerkesztő böngészőben történő futtatását.
- Az Android platformhoz készült plugint átformálták, valamint az exportálási rendszert. Mostantól az Android csomagok létrehozásához két különböző exportálási rendszer áll rendelkezésre: az egyik egy előre összeállított motorral, a másik pedig lehetőséget biztosít saját testre szabott motorvariánson alapuló build létrehozására. A saját build-ek beállítása közvetlenül az Android plugin szintjén végezhető, anélkül, hogy manuálisan módosítani kellene az alapértelmezett sablont;
- A szerkesztő támogatást kapott egyes funkciók szelektív letiltásához, például eltávolíthatók a 3D-szerkesztő, a szkriptszerkesztő, az erőforráskönyvtár, az elemek, panelek és tulajdonságok megjelenítésére szolgáló gombok, amelyek nem szükségesek a fejlesztőnek (a felesleges elemek elrejtése jelentősen leegyszerűsíti a felhasználói felületet);
- Bevezetésre került az alapvető támogatás a forráskód-kezelő rendszerek integrálásához, és megvalósult a Git támogatására szolgáló plugin a szerkesztőben;
- Lehetőséget kínálunk a játékok során használt kamera felülírására a szerkesztő ablakán keresztül, ami lehetővé teszi a különböző játékmódok értékelését (szabad nézet, elemek ellenőrzése stb.);
- Javasoltuk egy LSP (Language Server Protocol) szerver megvalósítását a GDScript nyelvhez, amely lehetővé teszi a GDScript szintaxisára és a kód automatikus kiegészítési szabályaira vonatkozó információk átadását külső szerkesztőknek, mint például a VS Code plugin és Atom;
- Számos fejlesztés került bevezetésre a beépített GDScript szkriptszerkesztőben: lehetőség nyílt könyvjelzők elhelyezésére a kódban, minimap panel került bevezetésre (a kód gyors áttekintéséhez), javult a beviteli automatikus kiegészítés, és bővültek a vizuális szkripttervezési mód lehetőségei;
- Bevezetésre került a pseudo-3D játékok létrehozására szolgáló mód, amely lehetővé teszi a mélység hatásának használatát kétdimenziós játékokban, több réteg definiálásával, amelyek hamis perspektívát alkotnak;
- A 2D szerkesztőben visszatért a textúra atlaszok támogatása;
- A GUI-ban modernizálták a horgonyok és a területek határvonalainak elhelyezésének folyamatát;
- A szöveges adatokhoz lehetőség nyílt az effektusok paramétereinek valós idejű figyelemmel kísérésére, támogatva a BBCode címkéket és lehetővé téve saját effektusok definiálását;
- Bevezetésre került egy hangstream-generátor, amely lehetővé teszi hanghullámok létrehozását egyedi keretek és spektrális elemző alapján;
- A V-HACD könyvtár segítségével lehetőség nyílik a bemélyedő hálók pontos és egyszerűsített domború darabokra való szétszedésére. Ez a funkció jelentősen megkönnyíti a meglévő 3D-hálók ütközési formáinak generálását;
- Lehetővé vált a játékmenet logikájának fejlesztése C# nyelven Mono használatával Android és WebAssembly platformokhoz (korábban a C# támogatott volt Linux, Windows és macOS rendszerekhez). A Mono 6.6 verzióján alapulva támogatottá vált a C# 8.0. A C# számára kezdeti támogatás valósult meg az előre kompájlásra (AOT, ahead-of-time), amely hozzá lett adva a kód alaphoz, de még nem aktiválták (a WebAssembly esetében jelenleg interpretert használnak). A C# kód szerkesztéséhez lehetőség van külső szerkesztők csatlakoztatására, mint például a MonoDevelop, Visual Studio for Mac és Jetbrains Rider;
- Jelentősen kibővítették és javították a dokumentációt. Nyilvánosságra hozták a dokumentáció részleges fordítását orosz nyelvre (lefordították a kezdő útmutatót).
Forrás: linux.org.ru

