Godot je 2D a 3D multiplatformní open source herní engine pod licencí MIT vyvinutý komunitou. Několik společností v Latinské Americe ho interně používalo před tím, než byl vydán jako open-source. Vývojové prostředí běží na Windows, macOS a Linuxu a používá se k tvorbě her pro PC, konzole, mobilní zařízení a web.

Přehled Godot si klade za cíl nabídnout plně integrované vývojové prostředí pro hry. Umožňuje vývojářům vytvořit hru od začátku, aniž by bylo třeba dalších nástrojů pro tvorbu obsahu (např. IDE či grafického editoru). Architektura hry je postavena na konceptu vnořených „scén“ v hierarchii stromu. Všechny herní zdroje, od skriptů po grafiku, jsou uloženy na disku jako součást souborového systému počítače (spíše než databáze). Toto řešení ukládání dat je použito kvůli jednodušší spolupráci týmu vývojářů pomocí řízení verzí.

Programování Hry v Godotu jsou tvořeny v C# nebo pomocí vlastního skriptovacího jazyka s názvem GDScript, což je vysokoúrovňový, dynamicky psaný programovací jazyk velmi podobný Pythonu. Na rozdíl od něj má GDScript striktní deklarování proměnných a je optimalizován pro architekturu Godotu na bázi scén. Vývojáři Godotu uvedli, že testovali mnoho alternativních skriptovacích jazyků třetích stran před tím, než se rozhodli pro použití vlastního jazyka kvůli lepší optimalizaci a integraci editoru.

Godot je dodáván s editorem kódu s automatickým odsazováním, zvýrazněním syntaxe a našeptávačem. Je také vybaven ladicí funkcí s možností nastavit breakpointy a krokování.

Godot má také svůj vlastní vestavěný fyzikální engine pro 2D i 3D módy, který podporuje detekci kolizí, tuhé těleso, statické tělo, postavy, vozidla, ray casting a klouby.

Vykreslování Grafický engine používá OpenGL ES 2.0, OpenGL ES 3.0 pro všechny podporované platformy. Od verze Godot 4.0 používá grafický engine Vulkan. Engine podporuje průhlednost, normal mapping, specularity, dynamické stíny pomocí stínových map a celoobrazovkové efekty aplikované po zpracování jako FXAA, bloom, DOF, HDR, gama korekce a mlhu.

Godot používá zjednodušený jazyk pro psaní shaderů, který se podobá GLSL. Shadery lze využít k texturování, 3D vykreslování a 2D vykreslování. Tyto shadery jsou rozděleny na vertexové a fragmentové oddíly. Je také možnost vytvořit stínovací manipulace uzlů ve vizuálním editoru.

Godot má 2D grafický engine, který může fungovat nezávisle na druhém 3D enginu. Příklady funkcí 2D enginu jsou světla, stíny, shadery, GUI, sprity, skládání dlaždic, paralaxní scrolling, polygony, animace, fyzika a částice. Je také možné míchat 2D s 3D nebo 3D s 2D pomocí tzv. výřezu uzlů.

Godot obsahuje zabudovaný systém pro animace s GUI pro editaci kosterních animací, mixování, animační stromy, morfování a filmové scény v reálném čase. Vzhledem ke konstrukci založené na uzlech může téměř jakákoli proměnná definovaná nebo vytvořená jako herní entita být animována.

Platformy Godot podporuje nasazení na různých platformách. V rámci projektu má vývojář možnost vydání na mobilní zařízení, web, stolní počítače a konzole. Lze také specifikovat komprese textur a nastavení rozlišení pro každou platformu, kterou hra podporuje.

V současné době mezi podporované platformy patří Windows, macOS, Linux, FreeBSD, Android, iOS, BlackBerry 10, HTML5, PlayStation 3, PlayStation Vita a Nintendo 3DS.

Ostatní vlastnosti okluzní skrývání úroveň detailů grafy analýzy výkonnosti světelné mapy multithreading systém zásuvných modulů frame buffer object přehrávání videa Theora audio systém s podporou přehrávání Vorbis a WAV systém částic import/export/komprese textur navigační síť grafické uživatelské rozhraní vstup z klávesnice, myši, gamepadu a dotykového displeje

Historie Vývoj Godotu zahájili Juan „reduz“ Linietsky a Ariel „punto“ Manzur v roce 2007. V únoru 2014 byl zdrojový kód Godotu zveřejněn na GitHubu pod licencí MIT.

15. prosince 2014 Godot dosáhl první stabilní verze: 1.0. Byly v ní doplněny světelné mapy, navigační síť a další shadery.

21. května 2015 byla vydána verze 1.1 s vylepšeným automatickým dokončováním v editoru kódu, vizuálním shader editorem, novým API pro OS pro správu obrazovek a oken, přepsaným 2D enginem, podporou pro 2D navigační polygony, vylepšeným exportem formátu COLLADA a novým tmavým režimem. Nový 2D engine zahrnoval shadery, materiály, nezávislé uspořádání prvků, světla, stíny s polygonálními uzávěry, normální mapování, back-buffer compositing, vylepšenou podporu izometrických dlaždic a podporu distance-field fontů.

4. listopadu 2015 se Godot připojil k Software Freedom Conservancy.

22. června 2016 Godot obdržel 20 000 dolarů od Mozilla Open Source Support (MOSS) v rámci ocenění "Mise Partners", které mají být použity na přidání podpory WebSocket, WebAssembly a WebGL 2.0.

Verze 3.0 byla vydána 29. ledna 2018 a přidala vylepšené 3D vykreslování, podporu VR a podporu C# (přes Mono). Také byl nahrazen zabudovaný 3D fyzický backend fyzickým enginem Bullet.

Historie verzí VerzeDatum vydáníPoznámkyNejnovější opravná verze1.012/2014první stabilní vydání1.01.15/2015vylepšení automatického doplňování v editoru kódu, přidání editoru vizuálních shaderů, přepsaný 2D engine a nová podpora pro navigaci ve 2D polygonech1.12.02/2016vylepšené uživatelské rozhraní a ladicí program2.0.4.12.17/2016přidána databáze doplňků, profiler a doplňkové API2.1.63.01/2018nový renderer založený na fyzice, podpora Mono (C#) a přidání Bulletu jako fyzikálního enginu3.0.64.03/2023přidána podpora pro grafické rozhraní API Vulkan; migrace z Mono na .NET 6 CoreCLR; nové globální osvětlení založené na SDF spolu s různými regulačními změnami a optimalizací výkonu4.0.34.17/2023aktualizace výkonu, jádra a položek skriptu; představení statických proměnných v GDScript a atributu GlobalClass v C#; podpora více oken a možnost oddělit editory skriptů; vylepšená turbulence částic a 3D textury šumu; přepracované algoritmy vyhýbání se navigaci AI4.1.1

Seznam her Mnoho her v Godotu vytvořilo OKAM Studio, např.: El Asombroso Show Zamba Dog Mendonça & Pizza Boy Anthill Running Nose Project Carnival Existuje také mnoho komunitně vyvíjených open-source her, např.: DynaDungeons Minilens Tanks of Freedom Další hry vyvinuté na Godotu jsou např.: Cruelty Squad Casette Beasts

O názvu Hlavní vývojář Juan Linietsky uvedl v prezentaci, že název Godot souvisí s divadelní hrou od Samuela Becketta Čekání na Godota, neboť představuje nikdy nekončící přání přidávat nové funkce do enginu, aby se přiblížil ke kompletnímu produktu, kterým ale nikdy nebude.

Reference

Externí odkazy

Oficiální web Godot na GitHubu

Kategorie:Herní enginy Kategorie:Svobodný software Kategorie:Svobodný software naprogramovaný v C++ Kategorie:Software pod licencí MIT