Liberigo de la liberkoda ludmotoro Godot 3.2

Post 10 monatoj da evoluo eldonita liberigo de senpaga ludmaŝino godot 3.2, taŭga por krei 2D kaj 3D ludoj. La motoro subtenas facile lerneblan ludlogikan lingvon, grafikan medion por luddezajno, unu-klakan luddeplojsistemon, ampleksajn animaciajn kaj simulajn kapablojn por fizikaj procezoj, enkonstruitan erarserĉilon kaj sistemon por identigi rendimentajn proplempunktojn. . Kodo de la ludmaŝino, luddezajna medio kaj rilataj evoluiloj (fizika motoro, sonservilo, 2D/3D-bildigiloj, ktp.) disvastigi sub la MIT-licenco.

La motoraj fontkodoj estis malfermi en 2014 de la studio OKAM, post dek jaroj de evoluigado de profesi-grada proprieta produkto kiu estis uzita por krei kaj publikigi multaj ludoj por komputilo, ludkonzoloj kaj porteblaj aparatoj. La motoro subtenas ĉiujn popularajn labortablon kaj moveblajn platformojn (Linukso, Vindozo, macOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX), same kiel luddisvolviĝon por la Reto. Pretaj por funkcii binaraj asembleoj formis por Linukso, Vindozo kaj macOS.

В aparta branĉo disvolviĝas nova backend bildigo surbaze de la Vulkan-grafika API, kiu estos ofertita en la venonta eldono de Godot 4.0, anstataŭ la nuntempe ofertitaj bildigaj backends per OpenGL ES 3.0 kaj OpenGL 3.3 (subteno por OpenGL ES kaj OpenGL estos konservita per funkciado de la malnova OpenGL ES). 2.0/OpenGL 2.1 backend aldone al la nova arkitektura bildigo bazita sur Vulkan). La transiro de Godot 3.2 al Godot 4.0 postulos aplikaĵrelaboron pro nekongruo ĉe la API-nivelo, sed la Godot 3.2-branĉo havos longan subtenan ciklon, kies daŭro dependos de la postulo de ĉi tiu branĉo fare de uzantoj. Intertempaj eldonoj de 3.2.x ankaŭ ne ekskludas porti novigojn de la branĉo 4.x kiuj ne influas stabilecon, kiel subteno. AOT-kompiloj, Arcore, DTLS kaj platformoj iOS por C#-projektoj.

Ŝlosilaj novaj funkcioj en Godot 3.2:

  • Aldonita subteno por Oculus Quest virtualrealaj kaskoj, efektivigita surbaze konekti por la Android-platformo. Kadra subteno estis aldonita por la evoluo de pliigita realeca sistemoj por iOS ARKIT. Kadra subteno estas disvolvita por Android Arcore, sed ĝi ankoraŭ ne estas preta kaj estos inkluzivita en unu el la mezaj eldonoj de 3.3.x;

  • Relaborita interfaco de la vida ombra redaktilo. Aldonita novaj nodoj por krei pli altnivelajn ombrilojn. Por ombriloj efektivigitaj per klasikaj skriptoj, subteno por konstantoj, tabeloj kaj "variaj" modifiloj estis aldonita. Multaj ombriloj specifaj por la OpenGL ES 3.0 backend estis adaptitaj al OpenGL ES 2;

    Liberigo de la liberkoda ludmotoro Godot 3.2

  • Physically Based Rendering (PBR) subteno estas sinkronigita kun la kapabloj de novaj PBR bildigmotoroj, kiel ekzemple Blender Eevee kaj Substance Designer, por certigi similan scenomontradon en Godot kaj la 3D modeligaj pakaĵoj uzitaj;
  • Diversaj bildigaj agordoj estis optimumigitaj por plibonigi rendimenton kaj plibonigi bildkvaliton. Multaj funkcioj de GLES3 estis transdonitaj al la GLES3-backend, inkluzive de subteno por la MSAA (Multisample anti-aliasing) kontraŭ-aliasing-metodo kaj diversaj post-pretigaj efikoj (brilo, DOF-malklaraĵo kaj BCS);
  • Aldonis plenan subtenon por importi 3D-scenojn kaj modelojn en glTF 2.0 (GL Transmission Format) kaj aldonis komencan subtenon por la FBX-formato, kiu ebligas vin importi scenojn kun animacio de Blender, sed ankoraŭ ne kongruas kun Maya kaj 3ds Max. Aldonita subteno por maŝhaŭtoj dum importado de scenoj per glTF 2.0 kaj FBX, permesante al vi uzi unu maŝon en pluraj maŝoj.
    Laboro por plibonigi kaj stabiligi glTF 2.0 subtenon estis farita kunlabore kun la Blender-komunumo, kiu ofertos plibonigitan glTF 2.0 subtenon en eldono 2.83;

  • La retkapabloj de la motoro estas vastigitaj kun subteno por la WebRTC kaj WebSocket protokoloj, same kiel la kapablo uzi UDP en multirolantaro-reĝimo. Aldonita API por uzi kriptografiajn haŝojn kaj labori kun atestiloj. Aldonita grafika interfaco por profili retan agadon. Laboro komenciĝis pri kreado de Godot-haveno por
    WebAssembly/HTML5, kiu permesos al vi ruli la redaktilon en retumilo per la TTT;

    Liberigo de la liberkoda ludmotoro Godot 3.2

  • Relaborita kromaĵo por la Android-platformo kaj eksportsistemo. Nun, por krei pakaĵojn por Android, du apartaj eksportsistemoj estas ofertitaj: unu kun antaŭkonstruita motoro, kaj la dua permesanta al vi krei viajn proprajn konstruaĵojn surbaze de personigitaj motoraj elektoj. Personigo de viaj propraj asembleoj povas esti farita ĉe la kromprogramo por Android, sen mana redaktado de la fontŝablono;
  • Aldonita subteno por selektema malkonekto individuaj funkcioj, ekzemple, vi povas forigi butonojn por voki la 3D-redaktilon, skripto-redaktilon, rimedan bibliotekon, nodojn, panelojn, ecojn kaj aliajn elementojn, kiuj ne estas postulataj de la programisto (kaŝi nenecesajn aferojn permesas signife simpligi la interfacon);

    Liberigo de la liberkoda ludmotoro Godot 3.2

  • Aldonis komencan subtenon por integriĝo kun fontkontrolsistemoj kaj efektivigis kromprogramon por Git-subteno
    en la redaktoro;

  • Eblas redifini la fotilon por kuranta ludo tra fenestro en la redaktilo, kio ebligas taksi diversajn reĝimojn en la ludo (libera vido, inspektado de nodoj ktp.);

  • Efektivigo de la servilo LSP (Language Server Protocol) por la GDScript-lingvo estas proponita, kiu ebligas al vi transdoni informojn pri la semantiko de GDScript kaj kodkompletigaj reguloj al eksteraj redaktiloj, kiel ekzemple VS Code kromaĵo kaj Atom;
  • Multaj plibonigoj estis faritaj al la enkonstruita GDScript-skriptredaktilo: la kapablo agordi legosignojn al pozicioj en la kodo estis aldonita, minimapa panelo estis efektivigita (por rapida superrigardo de la tuta kodo), eniga aŭtomata kompletigo estis plibonigita, disetendiĝis kapabloj de la vida script-dezajna reĝimo;

    Liberigo de la liberkoda ludmotoro Godot 3.2

  • Aldonita reĝimo por krei pseŭdo-3D-ludojn, permesante al vi uzi la efikon de profundo en dudimensiaj ludoj difinante plurajn tavolojn, kiuj formas fikcian perspektivon;

  • En 2D redaktilo revenis subteno por teksturaj atlasoj;
    Liberigo de la liberkoda ludmotoro Godot 3.2

  • La GUI modernigis la procezon de metado de ankroj kaj areaj limoj;
  • Por tekstaj datumoj, la kapablo kontroli ŝanĝojn en efikaj parametroj sur la muŝo estis aldonita, subteno por BBCode-etikedoj estis disponigita, kaj la kapablo difini viajn proprajn efikojn estis disponigita;
  • Aldonita generatoro de aŭda fluo, kiu ebligas al vi krei sonondojn bazitajn sur individuaj kadroj kaj spektra analizilo;
  • Uzante la bibliotekon V-HACD La kapablo malkomponi konkavajn maŝojn en precizajn kaj simpligitajn konveksajn partojn estis efektivigita. Ĉi tiu funkcio ege simpligas la generacion de kolizioformoj por ekzistantaj 3D-maŝoj;


  • La kapablo disvolvi ludlogikon en C# uzante Mono por la platformoj Android kaj WebAssembly estis efektivigita (antaŭe C# estis subtenata por Linukso, Vindozo kaj macOS). Surbaze de Mono 6.6, subteno por C# 8.0 estas efektivigita. Por C#, komenca subteno por antaŭtempa (AOT) kompilo ankaŭ estis efektivigita, kiu estis aldonita al la kodbazo, sed ankoraŭ ne estis aktivigita (por WebAssembly, interpretilo daŭre estas uzita). Por redakti C#-kodon, eblas konekti eksterajn redaktilojn kiel MonoDevelop, Visual Studio por Mac kaj Jetbrains Rider;
  • Signife vastigita kaj plibonigita dokumentado. Parta eldonita traduko de dokumentaro en la rusan (tradukita enkonduka gvidilo por komenci).

fonto: opennet.ru

Aldoni komenton