Wydanie otwartego silnika gry Godot 3.2

Po 10 miesiącach rozwoju opublikowany wydanie darmowego silnika gry Godota 3.2, odpowiedni do tworzenia gier 2D i 3D. Silnik obsługuje łatwy do nauczenia się język logiki gry, środowisko graficzne do projektowania gier, system wdrażania gry jednym kliknięciem, rozbudowane możliwości animacji i symulacji procesów fizycznych, wbudowany debugger oraz system identyfikacji wąskich gardeł wydajności . Kod silnika gry, środowisko projektowania gry i powiązane narzędzia programistyczne (silnik fizyczny, serwer dźwięku, backendy renderowania 2D/3D itp.) rozpowszechnianie się na licencji MIT.

Kody źródłowe silnika były otwarty w 2014 roku przez studio OKAM, po dziesięciu latach opracowywania autorskiego produktu profesjonalnej klasy, który służył do tworzenia i publikowania wiele gier na komputery PC, konsole do gier i urządzenia mobilne. Silnik obsługuje wszystkie popularne platformy desktopowe i mobilne (Linux, Windows, macOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX), a także tworzenie gier dla Internetu. Gotowe do uruchomienia zespoły binarne uformowany dla systemu Linux, Windows i macOS.

В oddzielny oddział rozwija się nowy backend renderowanie w oparciu o API graficzne Vulkan, które będzie oferowane w następnej wersji Godota 4.0, zamiast obecnie oferowanych backendów renderujących poprzez OpenGL ES 3.0 i OpenGL 3.3 (obsługa OpenGL ES i OpenGL zostanie zachowana po uruchomieniu starego OpenGL ES Backend 2.0/OpenGL 2.1 oprócz renderowania nowej architektury opartej na Vulkan). Przejście z Godot 3.2 na Godot 4.0 będzie wymagało przeróbki aplikacji ze względu na niekompatybilność na poziomie API, jednak gałąź Godot 3.2 będzie miała długi cykl wsparcia, którego długość będzie uzależniona od zapotrzebowania użytkowników na tę gałąź. Tymczasowe wydania 3.2.x również nie wykluczają przeniesienia innowacji z gałęzi 4.x, które nie wpływają na stabilność, takich jak wsparcie Kompilacje AOT, Arcore, DTLS i platformy iOS dla projektów C#.

Najważniejsze nowe funkcje w Godot 3.2:

  • Dodano obsługę kasków wirtualnej rzeczywistości Oculus Quest, zaimplementowaną w oparciu o podłącz dla platformy Android. Dodano obsługę frameworka do tworzenia systemów rzeczywistości rozszerzonej dla iOS Arkite. Trwają prace nad obsługą frameworka dla systemu Android Arcore, ale nie jest jeszcze gotowy i zostanie uwzględniony w jednym z wydań pośrednich wersji 3.3.x;

  • Przerobione interfejs edytora cieniowania wizualnego. Dodany nowe węzły do ​​tworzenia bardziej zaawansowanych shaderów. Dla shaderów implementowanych przez klasyczne skrypty dodano obsługę stałych, tablic i „zmiennych” modyfikatorów. Wiele shaderów specyficznych dla backendu OpenGL ES 3.0 zostało przeniesionych do OpenGL ES 2;

    Wydanie otwartego silnika gry Godot 3.2

  • Obsługa renderowania opartego na fizyce (PBR) jest zsynchronizowana z możliwościami nowych silników renderujących PBR, takich jak Blender Eevee i Substance Designer, aby zapewnić podobne wyświetlanie scen w programie Godot i używanych pakietach modelowania 3D;
  • Zoptymalizowano różne ustawienia renderowania, aby poprawić wydajność i jakość obrazu. Wiele funkcji z GLES3 zostało przeniesionych do backendu GLES3, w tym obsługa metody antyaliasingu MSAA (Multisample anti-aliasing) i różne efekty przetwarzania końcowego (poświata, rozmycie DOF i BCS);
  • Dodano pełną obsługę importowania scen i modeli 3D w glTF 2.0 (GL Transmission Format) oraz dodano wstępną obsługę formatu FBX, który umożliwia import scen z animacjami z Blendera, ale nie jest jeszcze kompatybilny z Maya i 3ds Max. Dodano obsługę skórek siatek podczas importowania scen przez glTF 2.0 i FBX, umożliwiając użycie jednej siatki w kilku siatkach.
    Prace nad ulepszeniem i stabilizacją obsługi glTF 2.0 zostały wykonane we współpracy ze społecznością Blendera, która zaoferuje ulepszoną obsługę glTF 2.0 w wersji 2.83;

  • Możliwości sieciowe silnika zostały rozszerzone o obsługę protokołów WebRTC i WebSocket, a także możliwość wykorzystania protokołu UDP w trybie multiemisji. Dodano API do używania skrótów kryptograficznych i pracy z certyfikatami. Dodano interfejs graficzny do profilowania aktywności sieciowej. Rozpoczęto prace nad stworzeniem portu Godota
    WebAssembly/HTML5, który umożliwi uruchomienie edytora w przeglądarce poprzez WWW;

    Wydanie otwartego silnika gry Godot 3.2

  • Przerobione podłącz dla platformy Android i systemu eksportu. Teraz do tworzenia pakietów dla Androida oferowane są dwa osobne systemy eksportu: jeden z gotowym silnikiem, a drugi pozwalający na tworzenie własnych kompilacji w oparciu o niestandardowe opcje silnika. Dostosowywanie własnych zestawów można wykonać na poziomie wtyczki dla Androida, bez ręcznej edycji szablonu źródłowego;
  • Dodano obsługę selektywnej rozłączenia poszczególne funkcje, np. można usunąć przyciski wywołujące edytor 3D, edytor skryptów, bibliotekę zasobów, węzły, panele, właściwości i inne elementy, które nie są wymagane przez programistę (ukrycie niepotrzebnych rzeczy pozwala znacznie uprościć interfejs);

    Wydanie otwartego silnika gry Godot 3.2

  • Dodano wstępną obsługę integracji z systemami kontroli źródła i zaimplementowano wtyczkę obsługującą Git
    w edytorze;

  • Możliwe jest przedefiniowanie kamery do działającej gry poprzez okno w edytorze, co pozwala na ocenę różnych trybów gry (swobodny widok, inspekcja węzłów itp.);

  • Zaproponowano implementację serwera LSP (Language Server Protocol) dla języka GDScript, który umożliwia przesyłanie informacji o semantyce GDScript i zasadach uzupełniania kodu do zewnętrznych edytorów, takich jak wtyczka VS Code i Atom;
  • Wprowadzono wiele usprawnień do wbudowanego edytora skryptów GDScript: dodano możliwość ustawiania zakładek do pozycji w kodzie, zaimplementowano panel minimapy (w celu szybkiego przeglądu całego kodu), poprawiono autouzupełnianie wprowadzanych danych, rozszerzony możliwości trybu projektowania skryptów wizualnych;

    Wydanie otwartego silnika gry Godot 3.2

  • Dodano tryb tworzenia gier pseudo-3D, umożliwiający wykorzystanie efektu głębi w grach dwuwymiarowych poprzez zdefiniowanie kilku warstw tworzących fikcyjną perspektywę;

  • W edytorze 2D zwrócony obsługa atlasów tekstur;
    Wydanie otwartego silnika gry Godot 3.2

  • GUI unowocześniło proces umieszczania kotwic i granic obszarów;
  • Dla danych tekstowych dodano możliwość monitorowania na bieżąco zmian parametrów efektów, zapewniono obsługę tagów BBCode oraz zapewniono możliwość definiowania własnych efektów;
  • обавлен generator strumienia audio pozwalający na tworzenie fal dźwiękowych na podstawie poszczególnych klatek oraz analizator widmowy;
  • Korzystanie z biblioteki V-HACD Zaimplementowano możliwość rozkładania siatek wklęsłych na precyzyjne i uproszczone części wypukłe. Ta funkcja znacznie upraszcza generowanie kształtów kolizyjnych dla istniejących siatek 3D;


  • Zaimplementowano możliwość tworzenia logiki gry w C# przy użyciu Mono dla platform Android i WebAssembly (wcześniej C# był obsługiwany dla systemów Linux, Windows i macOS). W oparciu o Mono 6.6 zaimplementowano obsługę C# 8.0. Dla C# zaimplementowano także wstępną obsługę kompilacji z wyprzedzeniem (AOT), która została dodana do bazy kodu, ale nie została jeszcze aktywowana (w przypadku WebAssembly nadal używany jest interpreter). Aby edytować kod C#, można podłączyć zewnętrzne edytory, takie jak MonoDevelop, Visual Studio dla komputerów Mac i Jetbrains Rider;
  • Znacząco rozbudowany i ulepszony dokumentacja. Częściowo opublikowane tłumaczenie dokumentacji na rosyjski (przetłumaczony przewodnik wprowadzający do rozpoczęcia pracy).

Źródło: opennet.ru

Dodaj komentarz