Godot, open-source, multiplatformní herní engine, si od svého prvního stabilního vydání v roce 2014 pomalu získává na popularitě. S blížícím se vydáním Godot 4.0 je mnoho herních vývojářů nadšeno prozkoumat dlouho očekávané vydání Beta 1 z 15. září.
Co pro vás znamenají nové funkce Godot 4.0? Jak to bude ve srovnání s Unity?
Od nového vykreslovacího rozhraní API a fyzikálního enginu po nové uzly, funkce GDScript a podporu rozhraní .NET 6 API, Godot 4.0 může vyřešit mnoho problémů svých odpůrců.
Nové rozhraní API pro vykreslování
Godot přechází z OpenGL rendereru na Vulkan. To znamená, že osvětlení ve 3D scénách bude vypadat výrazně lépe.
Při porovnávání velkého množství volání draw, renderer Vulkan lépe podporuje hry v otevřeném světě s mnoha objekty. Na druhé straně vykreslovací modul OpenGL měl tendenci zatěžovat a omezovat zdroje.
Spolu s novým vykreslovacím rozhraním API přicházejí nové uzly, které přidávají další podrobnosti do 3D scén:
- Uzel VoxelGI je přepracováním starého globálního osvětlovacího systému. Umožňuje jemnější osvětlení v malých a středních prostředích.
- Uzel Signal Distance Field Illumination umožňuje velké otevřené světy s lepšími stíny objektů, lomem světla a mnohem více.
- Uzel FogVolume umožňuje vývojářům psát shadery pro složité detaily mlhy a mlhy.
I když se nejedná o nový uzel, zavedení Sky shaderů umožňuje použití shaderů pro skybox, což se promítá do dynamického určování polohy a aktualizace v reálném čase.
Existuje mnoho drobných vylepšení, jako jsou částice založené na GPU, přidané skriptování shaderů a nové techniky optimalizace. Nejvýraznější změny ale stojí za to prozkoumat podrobněji.
Nový fyzikální motor
Při nasazování fyziky ve 3D scénách se Godot historicky spoléhal na Bullet engine. Už ne. Seznamte se s motorem Godot Physics.
Některé nové funkce zahrnují nové tvary kolizí a re-implementaci měkkých těles. To umožňuje rychlé prototypování a realističtější manipulaci s objekty. Navíc podpora multithreadingu znamená více optimalizací; všechny tyto změny přicházejí s nižšími náklady na výkon.
Nový uzel CharacterBody, který nahrazuje KinematicBody, umožňuje větší flexibilitu a možnosti. Opravy chyb pro chvění a podivné pohybové chování jsou od Boha. Výsledek? Stabilnější a konzistentnější pohybové vzorce – dokonce i s podivnými tvary kolize nebo extrémními výškovými mapami.
Nový navigační systém zcela nahrazuje systém založený na uzlu serverovým systémem, což zvyšuje použitelnost bez obětování výkonu.
Nové funkce kvality života v GDScript
Po úplném přepsání v beta verzi se GDScript zrychlil. Kromě toho se přidávají šířeji použitelné funkce a obecná vylepšení:
- Nyní můžete s funkcemi zacházet jako s proměnnými a používat anonymní funkce.
- Obecná vylepšení syntaxe umožňují konzistentnější kód.
- Můžete zadat konkrétní typy pro pole, abyste snížili počet chyb.
- čekat a super klíčová slova nahrazují starší, méně jasný kód ohledně načasování a dědičnosti.
Pokud pracujete s týmem nebo se vracíte ke starému projektu, zjistíte, že špatně pojmenované proměnné mohou být frustrující. Aby se tomu zabránilo, skripty nyní automaticky generují užitečnou dokumentaci. Umístění ukazatele myši nad exportované proměnné v Dockeru může poskytnout užitečné popisy proměnné.
C# a podpora pro .NET 6
Podpora .NET 6 je většinou dokončena s beta verzí. Pokud chcete z důvodů preference nebo výkonu zůstat u C#, existuje mnoho nových funkcí, na které se můžete těšit.
Při použití .NET 6 je výchozí C# 10. Nová závislost na zdrojových generátorech znamená, že pokud je ve vašem kódu problém, Godot vyvolá chybu v době kompilace, nikoli v době běhu. To ušetří čas, zvláště pokud se ve hře objeví chyba.
Nyní můžete signály deklarovat jako události C# pro konzistentnější kód signálu. Aktivní vývoj se také vlévá do psaní GDExtension v C#. Jedním příkladem je, že třídy C# se nebudou registrovat jinak než vestavěné třídy. To pomůže zlepšit podporu uzlů C#. Nakonec Godot 4.0 zavede jediné sjednocující stahování, takže uživatelé C# nemusí konkrétně stahovat verzi Mono.
Je Godot 4.0 lepší než Unity?
Beta je pouze beta, což znamená, že je stále nestabilní. Existuje spousta chyb, které musí vývojáři najít a opravit. Godot však směřuje k tomu, aby byl zavedenějším a uzemněnějším motorem s vlastnostmi Unity. Přesto je důležité si uvědomit, že i když jsou Godot a Unity oba herní motory, cílí na různé cílové skupiny.
V posledních letech se Unity zaměřuje na VFX a hyperrealistické 3D scény. Naproti tomu vývojáři používají Godota k prototypování a tvorbě menších, často 2D, her. To neznamená, že vás použití jednoho z motorů uzamkne. Zkušenosti s oběma motory jsou užitečné, takže skutečně pochopíte, který je pro vaše potřeby nejlepší.
Ať už jste vývojář Unity, zajímá vás to Godotův motor a co dělá, nebo jen hledáte nějaké nové nástroje pro vývoj her, toto vydání přináší mnoho nových funkcí, které vám pomohou vytvořit vaši další hru.
I když je obtížné to kvantifikovat, komunita Godot je jednou z jejích nejlepších funkcí. Najdete zde podporující vývojáře, kteří se rádi podělí o své znalosti. Pokud nový systém uzlu vypadá děsivě, požádejte o pomoc. A pokud to není dostatečně přesvědčivé, existují další důvody, proč zvážit použití Godota pro vaši příští hru.
Budoucnost: Co znamená Godot 4.0 pro vývojáře her
Godot 4.0 bude integrovat funkce kvality života, které chybí ve verzi 3.5, a také přináší žádoucí vlastnosti z jiných motorů.
Vzhledem k tomu, že Godot 4.0 může vést ke zvýšení výkonu pro hry, měl by v budoucnu získat trakci. Různé funkce a vylepšení mohou být integrovány do projektů a optimalizovat je nebo zlepšit detaily světa.
Vidět tyto zcela nové funkce naznačuje, že motor bude nadále růst. Takže kdykoli budete mít nutkání zapojit se do slovních hříček Samuela Becketta, pamatujte, že bylo teprve 17. ledna 2022, kdy vyšel první Godot 4.0 Alpha.