ProHoster > Godot 3.2 բաց կոդով խաղի շարժիչի թողարկում
Godot 3.2 բաց կոդով խաղի շարժիչի թողարկում
10 ամիս զարգացումից հետո հրատարակված անվճար խաղային շարժիչի թողարկում Գոդո 3.2, հարմար է 2D և 3D խաղեր ստեղծելու համար։ Շարժիչը աջակցում է հեշտ ուսուցվող խաղի տրամաբանական լեզվին, խաղի նախագծման գրաֆիկական միջավայրին, մեկ սեղմումով խաղի տեղակայման համակարգին, ֆիզիկական պրոցեսների անիմացիայի և սիմուլյացիայի լայն հնարավորություններին, ներկառուցված վրիպազերծիչին և կատարողականի խոչընդոտները հայտնաբերելու համակարգին: . Խաղի շարժիչի կոդը, խաղի նախագծման միջավայրը և դրա հետ կապված մշակման գործիքները (ֆիզիկական շարժիչ, ձայնային սերվեր, 2D/3D ռենդերների հետին պլաններ և այլն) տարածվել MIT լիցենզիայի ներքո:
Շարժիչի աղբյուրի կոդերն էին բացել ստուդիայի կողմից 2014թ ՕԿԱՄ, տասը տարի անց մասնագիտական որակի սեփական արտադրանքի մշակումից հետո, որն օգտագործվել է ստեղծելու և հրատարակելու համար շատ խաղեր համակարգչի, խաղային կոնսուլների և շարժական սարքերի համար: Շարժիչը աջակցում է բոլոր հայտնի աշխատասեղանի և բջջային հարթակներին (Linux, Windows, macOS, Wii, Nintendo 3DS, PlayStation 3, PS Vita, Android, iOS, BBX), ինչպես նաև խաղերի մշակում համացանցի համար: Պատրաստի երկուական հավաքներ ձեւավորվել է Linux-ի, Windows-ի և macOS-ի համար:
В առանձին մասնաճյուղ զարգանում է նոր backend ռենդերավորում՝ հիմնված Vulkan գրաֆիկական API-ի վրա, որը կառաջարկվի Godot 4.0-ի հաջորդ թողարկումում, այժմ առաջարկվող ռենդերների հետադարձ կապի փոխարեն OpenGL ES 3.0 և OpenGL 3.3-ի միջոցով (OpenGL ES-ի և OpenGL-ի աջակցությունը կպահպանվի՝ գործարկելով հին OpenGL ES-ը: 2.0/OpenGL 2.1 հետնամաս՝ Vulkan-ի վրա հիմնված նոր ճարտարապետական հաղորդման վերևում): Godot 3.2-ից Godot 4.0-ի անցումը կպահանջի հավելվածի վերամշակում API-ի մակարդակում անհամատեղելիության պատճառով, սակայն Godot 3.2 մասնաճյուղը կունենա երկար սպասարկման ցիկլ, որի տևողությունը կախված կլինի օգտատերերի կողմից այս ճյուղի պահանջարկից: 3.2.x-ի միջանկյալ թողարկումները նույնպես չեն բացառում նորարարությունների տեղափոխումը 4.x ճյուղից, որոնք չեն ազդում կայունության վրա, ինչպիսին է աջակցությունը: AOT հավաքածուներ, ARCore, DTLS և հարթակներ iOS C# նախագծերի համար.
Գոդոտ 3.2-ի հիմնական նոր առանձնահատկությունները.
Ավելացվել է աջակցություն Oculus Quest վիրտուալ իրականության սաղավարտների համար, որոնք իրականացվել են հիման վրա միացնել Android պլատֆորմի համար: Ավելացվել է շրջանակային աջակցություն iOS-ի համար ընդլայնված իրականության համակարգերի մշակման համար ARKit. Շրջանակային աջակցությունը մշակվում է Android-ի համար ARCore, բայց այն դեռ պատրաստ չէ և կներառվի 3.3.x-ի միջանկյալ թողարկումներից մեկում;
Վերանախագծված վիզուալ ստվերային խմբագրիչի ինտերֆեյս: Ավելացված է նոր հանգույցներ՝ ավելի առաջադեմ ստվերներ ստեղծելու համար: Դասական սկրիպտներով իրականացվող շեյդերների համար ավելացվել է հաստատունների, զանգվածների և «տարբեր» փոփոխիչների աջակցություն: OpenGL ES 3.0 backend-ին հատուկ շեյդերներ տեղափոխվեցին OpenGL ES 2;
Physically Based Rendering (PBR) աջակցությունը համաժամանակացված է նոր PBR ռենդերավորման շարժիչների հնարավորությունների հետ, ինչպիսիք են Blender Eevee-ը և Substance Designer-ը, ապահովելու համար տեսարանի նմանատիպ ցուցադրումը Godot-ում և օգտագործվող 3D մոդելավորման փաթեթներում;
Արտադրման տարբեր կարգավորումներ օպտիմիզացվել են՝ արդյունավետությունը բարելավելու և պատկերի որակը բարելավելու համար: GLES3-ի բազմաթիվ առանձնահատկություններ փոխանցվել են GLES3 հետին պլան, ներառյալ աջակցությունը MSAA (Multisample anti-aliasing) հակաալիզինգային մեթոդին և հետմշակման տարբեր էֆեկտներին (փայլ, DOF blur և BCS);
Ավելացվեց glTF 3 (GL Transmission Format) 2.0D տեսարանների և մոդելների ներմուծման ամբողջական աջակցություն և FBX ձևաչափի նախնական աջակցություն, որը թույլ է տալիս ներմուծել անիմացիայով տեսարաններ Blender-ից, բայց դեռ համատեղելի չէ Maya-ի և 3ds Max-ի հետ: Ավելացվեց ցանցային ծածկույթների աջակցություն glTF 2.0 և FBX-ի միջոցով տեսարաններ ներմուծելիս, ինչը թույլ է տալիս օգտագործել մեկ ցանց մի քանի ցանցերում:
glTF 2.0-ի աջակցության բարելավման և կայունացման աշխատանքներն իրականացվել են Blender համայնքի հետ համատեղ, որը կառաջարկի բարելավված glTF 2.0 աջակցություն 2.83 թողարկման մեջ;
Շարժիչի ցանցային հնարավորություններն ընդլայնվում են WebRTC և WebSocket արձանագրությունների աջակցությամբ, ինչպես նաև UDP-ի բազմակի հեռարձակման ռեժիմում օգտագործելու հնարավորությամբ: Ավելացվեց API ծածկագրային հեշեր օգտագործելու և վկայագրերի հետ աշխատելու համար: Ավելացվել է գրաֆիկական ինտերֆեյս ցանցային գործունեության պրոֆիլավորման համար: Աշխատանքներ են սկսվել Գոդոյի նավահանգստի ստեղծման ուղղությամբ
WebAssembly/HTML5, որը թույլ կտա Ձեզ գործարկել խմբագրիչը բրաուզերում վեբի միջոցով;
Վերանախագծված plug-in- ը Android հարթակի և արտահանման համակարգի համար: Այժմ, Android-ի համար փաթեթներ ստեղծելու համար առաջարկվում են երկու առանձին արտահանման համակարգեր՝ մեկը նախապես կառուցված շարժիչով, իսկ երկրորդը, որը թույլ է տալիս ստեղծել ձեր սեփական կառուցվածքները՝ հիմնված շարժիչի հարմարեցված տարբերակների վրա: Ձեր սեփական հավաքների հարմարեցումը կարող է կատարվել Android-ի համար plugin մակարդակով, առանց աղբյուրի ձևանմուշի ձեռքով խմբագրման.
Ավելացված է ընտրովի աջակցություն անջատումներ անհատական առանձնահատկություններ, օրինակ, կարող եք հեռացնել կոճակները 3D խմբագիր, սցենարի խմբագրիչ, ռեսուրսների գրադարան, հանգույցներ, վահանակներ, հատկություններ և այլ տարրեր, որոնք չեն պահանջվում մշակողի կողմից (ավելորդ բաներ թաքցնելը թույլ է տալիս զգալիորեն պարզեցնել ինտերֆեյսը);
Ավելացրել է սկզբնական աջակցություն աղբյուրի կառավարման համակարգերի հետ ինտեգրվելու համար և ներդրել է Git-ի աջակցության պլագին
խմբագրում;
Հնարավոր է վերասահմանել վազող խաղի տեսախցիկը խմբագրի պատուհանի միջոցով, ինչը հնարավորություն է տալիս գնահատել խաղի տարբեր ռեժիմները (ազատ դիտում, հանգույցների ստուգում և այլն);
Առաջարկվում է GDScript լեզվի համար LSP (Language Server Protocol) սերվերի ներդրում, որը թույլ է տալիս GDScript-ի իմաստաբանության և կոդերի լրացման կանոնների մասին տեղեկատվությունը փոխանցել արտաքին խմբագիրներին, ինչպիսիք են VS Code plugin-ը և Atom;
Բազմաթիվ բարելավումներ են կատարվել ներկառուցված GDScript սցենարների խմբագրիչում. ավելացվել է էջանիշները կոդի դիրքերում տեղադրելու հնարավորությունը, ներդրվել է մինի քարտեզի վահանակ (բոլոր կոդի արագ ակնարկի համար), բարելավվել է մուտքագրման ավտոմատ լրացումը, ընդլայնվել է տեսողական սցենարի ձևավորման ռեժիմի հնարավորությունները;
Ավելացրել է կեղծ 3D խաղեր ստեղծելու ռեժիմ, որը թույլ է տալիս օգտագործել խորության էֆեկտը երկչափ խաղերում՝ սահմանելով մի քանի շերտեր, որոնք ստեղծում են ֆիկտիվ հեռանկար;
2D խմբագրիչում վերադարձել է հյուսվածքային ատլասների աջակցություն;
GUI-ն արդիականացրել է խարիսխների և տարածքների սահմանների տեղադրման գործընթացը.
Տեքստային տվյալների համար ավելացվել է էֆեկտի պարամետրերի փոփոխությունները թռիչքի ժամանակ վերահսկելու հնարավորությունը, տրամադրվել է BBCode պիտակների աջակցություն, և տրամադրվել է ձեր սեփական էֆեկտները սահմանելու հնարավորությունը.
Ավելացված է աուդիո հոսքի գեներատոր, որը թույլ է տալիս ստեղծել ձայնային ալիքներ՝ հիմնված առանձին շրջանակների և սպեկտրալ անալիզատորի վրա.
Օգտագործելով գրադարանը V-HACD Իրականացվել է գոգավոր ցանցերը ճշգրիտ և պարզեցված ուռուցիկ մասերի քայքայելու ունակությունը: Այս հատկությունը զգալիորեն հեշտացնում է գոյություն ունեցող 3D ցանցերի բախման ձևերի ստեղծումը.
Գործարկվել է C#-ում խաղի տրամաբանությունը զարգացնելու հնարավորությունը՝ օգտագործելով Mono-ն Android և WebAssembly հարթակների համար (նախկինում C#-ն աջակցվում էր Linux-ի, Windows-ի և macOS-ի համար): Mono 6.6-ի հիման վրա իրականացվում է C# 8.0-ի աջակցություն: C#-ի համար ներդրվել է նաև նախնական աջակցություն (AOT) կոմպիլյացիայի համար, որն ավելացվել է կոդի բազայում, բայց դեռ ակտիվացված չէ (WebAssembly-ի համար դեռ օգտագործվում է թարգմանիչ)։ C# կոդը խմբագրելու համար հնարավոր է միացնել արտաքին խմբագրիչներ, ինչպիսիք են MonoDevelop-ը, Visual Studio-ն Mac-ի համար և Jetbrains Rider-ը;