motor ireal | |
---|---|
Tip de | Motor de joc ( Lista ) |
Dezvoltator | jocuri epice |
Programator cheie | Tim Sweeney |
Data de lansare | 1996 |
Platformă hardware |
PC Xbox Xbox 360 Xbox One Xbox Series X/S GameCube Wii Wii U Nintendo Switch Dreamcast PlayStation 2 PlayStation 3 PlayStation 4 PlayStation 5 PlayStation portabil PlayStation Vita |
Sistem de operare acceptat | macOS , Microsoft Windows , Linux , iOS , Android [1] |
Scris în limbaj | C++ [2] |
Licență | o reclamă |
ultima versiune | 5.0 / 5 aprilie 2022 |
Primul joc la motor | Ireal / 1998 |
Site-ul oficial | |
Fișiere media la Wikimedia Commons |
Unreal Engine este un motor de joc dezvoltat și întreținut de Epic Games . Primul joc de pe acest motor a fost shooterul la persoana întâi Unreal , lansat în 1998 . Deși motorul a fost inițial destinat dezvoltării de jocuri cu împușcături la persoana întâi , versiunile ulterioare ale acestuia au fost utilizate cu succes în jocuri dintr-o mare varietate de genuri, inclusiv jocuri stealth, jocuri de luptă și jocuri de rol online masiv multiplayer . În trecut, motorul era distribuit pe bază de abonament lunar; din 2015, Unreal Engine este gratuit, dar dezvoltatorii de aplicații care îl folosesc sunt obligați să transfere 5% din redevențele din veniturile globale cu anumite condiții [3] .
Scris în C++ , motorul vă permite să creați jocuri pentru majoritatea sistemelor de operare și platformelor : Microsoft Windows , Linux , Mac OS și Mac OS X ; console Xbox , Xbox 360 , Xbox One , PlayStation 2 , PlayStation 3 , PlayStation 4 , PlayStation 5 , PSP , PS Vita , Wii , Dreamcast , GameCube etc., precum și pe diferite dispozitive portabile, cum ar fi dispozitivele Apple ( iPad , iPhone ) gestionat de sistemul iOS și altele. (Pentru prima dată, lucrul cu iOS a fost prezentat în 2009 [4] , în 2010 motorul a fost demonstrat pe un dispozitiv cu sistemul webOS [5] ).
Pentru a simplifica portarea, motorul folosește un sistem modular de componente dependente; acceptă diverse sisteme de randare ( Direct3D , OpenGL , Pixomatic ; versiuni timpurii: Glide , S3 , PowerVR ), redare audio ( EAX , OpenAL , DirectSound3D ; anterior: A3D ), text-to-speech, recunoaștere a vorbirii [6] [7] [ 8] , module pentru lucrul cu rețeaua și suportarea diferitelor dispozitive de intrare.
Pentru jocul online, sunt acceptate Windows Live , Xbox Live , GameSpy și alte tehnologii, inclusiv până la 64 de jucători (clienți) în același timp. Astfel, motorul a fost adaptat și pentru utilizare în jocurile MMORPG (un exemplu: Lineage II ).
Toate elementele motorului de joc sunt reprezentate ca obiecte care au un set de caracteristici și o clasă care definește caracteristicile disponibile. La rândul său, orice clasă este o clasă „copil” de obiect . Dintre principalele clase și obiecte, se pot distinge următoarele:
Pentru a lucra cu elemente simple și, de regulă, fixe ale spațiului de joc (de exemplu, pereți), se folosește o partiție binară a spațiului - întregul spațiu este împărțit în „umplut” și „gol”. Toate obiectele sunt situate în partea „goală” a spațiului și numai în ea poate exista un „punct de observare” la redarea scenei. Posibilitatea plasării integrale sau parțiale a obiectelor în partea „umplută” a spațiului nu este exclusă, cu toate acestea, poate duce la procesarea incorectă a unor astfel de obiecte (de exemplu, calculul interacțiunii fizice) sau la redarea incorectă dacă un „punct de vedere”. ” este plasat acolo (de exemplu, efectul „salei oglinzilor”) . Toți pionii care cad în partea „umplută” a spațiului „mor”.
Suprafața ( suprafața ) este elementul principal al arborelui spațial binar. Aceste elemente sunt create pe marginea intersecției dintre părțile „umplute” și „vide” ale spațiului. Un grup de elemente ale unui arbore spațial binar se numește nod ( nod , Rus. knot ). Acest termen este folosit de obicei în contextul numărului de noduri - numărul de noduri de pe ecran sau în spațiul de joc în general. Numărul de noduri vizibile pe ecran în același timp afectează performanța la randarea scenei. Dacă un nod nu lovește ecranul sau este acoperit complet de alte noduri, acesta nu este calculat - acest lucru servește la îmbunătățirea performanței, mai ales în spațiile închise. Împărțirea întregului spațiu în grupuri de noduri se numește zonare [9] .
Pentru aceasta, se folosesc uneori portaluri [10] - suprafețe invizibile care servesc la împărțirea manuală a unui nod mare în două mai mici (în versiunea Unreal Engine 3, a fost introdus suport pentru geometria aditivă, ceea ce a făcut posibilă abandonarea zonei). Pe lângă portaluri, sunt folosite anti -portale [11] .
Descrierea părților „umplute” și „goale” ale spațiului se realizează folosind un set de obiecte tridimensionale închise compus din suprafețe care nu se intersectează - perii ( perie , perie rusă ). Acest principiu de construire a spațiului se numește geometrie solidă constructivă . Geometria poate fi „aditivă” (tot spațiul este inițial „gol”) și „străgătoare” (inițial umplut cu spațiu materie).
Pensulele sunt împărțite în trei tipuri:
Motorul este echipat cu un set de instrumente ( SDK ), inclusiv editorul UnrealEd .
în 1998 Unreal Engine 1 a fost unul dintre primele motoare de joc cu această versatilitate; a combinat un motor grafic , un motor fizic , inteligență artificială , gestionarea fișierelor și a sistemului de rețea și un mediu de dezvoltare gata făcut pentru jocuri - UnrealEd . Având în vedere nivelul de performanță al majorității computerelor din acea vreme, dezvoltatorii au simplificat oarecum unele elemente ale motorului: sistem de detectare a coliziunilor , cod de rețea, cod de controler pentru jucător [13] .
Unele dintre tehnologiile Unreal Engine au fost revoluționare pentru acea vreme, cum ar fi utilizarea unui grafic dinamic al scenei . Această tehnologie a făcut posibilă adăugarea unui număr de efecte pentru suprapunerea pe suprafețe:
Motorul a fost unul dintre primii care a introdus un efect de halo în jurul surselor de lumină care s-a estompat fără probleme, fiind acoperit de marginile pereților pe măsură ce jucătorul se mișca; lava și unele texturi de bălți de apă în care au căzut picături sunt dinamice datorită utilizării texturilor procedurale mai degrabă decât a shader-urilor, ca în jocurile târzii; și cer animat fotorealist.
Motorul a fost lansat inițial cu suport pentru două platforme: Windows și Macintosh . Datorită sistemului modular al motorului, s-a susținut că motorul ar putea fi portat pe consolele „noua generație” ale vremii și a fost ulterior folosit cu succes pe platforme precum GameCube , PlayStation 2 și Xbox . De asemenea, a susținut independența codului de rețea față de platforma client - utilizatorii Mac OS puteau juca modul multiplayer Unreal cu utilizatorii Windows.
Unreal Engine 1.5În 1999, a fost lansată o versiune îmbunătățită a motorului Unreal, concepută pentru computerele moderne (la acea vreme) și consolele Dreamcast și PlayStation 2 . Au fost făcute completări semnificative, printre care: suport pentru animația facială pentru personaje; rezoluția maximă a texturii a crescut la 1024x1024, sistem de „particule” extensibil, tehnologie S3TC . A fost integrată și a doua versiune a editorului UnrealEd .
Această versiune a motorului este folosită în jocul de împușcături multiplayer Unreal Tournament și în jocul de aventură Harry Potter și Piatra Filosofală .
Câțiva ani mai târziu, un grup de dezvoltatori independenți, UTPG, a abordat Epic Games pentru a avea acces la codurile sursă pentru executabilele Unreal Tournament pentru a continua să susțină jocul. Epic Games a acceptat oferta și de ceva timp echipa de dezvoltare a lansat patch-uri neoficiale pentru joc [15] .
A doua versiune a Unreal Engine a văzut lumina zilei în 2002, odată cu apariția Unreal Tournament 2003 , America's Army: Operations și Unreal Championship . Nucleul și motorul de randare au fost rescrise aproape complet în el și a fost integrată o nouă (a treia) versiune a editorului UnrealEd . În plus, subsistemul Karma fizică a fost integrat în el , susținând fizica ragdoll și alte inovații, care au făcut posibilă obținerea unui comportament mai realist al caracterului și a interacțiunii cu lumea exterioară. Alte părți ale motorului au fost, de asemenea, îmbunătățite sau modificate pentru a fi mai compatibile cu PlayStation 2 , GameCube și Xbox .
Au apărut următoarele tehnologii:
Datorită trecerii la grafica pe 32 de biți și utilizării tehnologiei Karma, utilizarea zonelor warp a devenit dificilă.
Unreal Engine 2.5În această versiune, motorul grafic a fost din nou îmbunătățit și optimizat - a apărut suportul pentru Direct3D 9, OpenGL 2 și Pixomatic (cel din urmă sistem de randare este folosit pentru computerele cu o placă video slabă, dar un procesor central puternic). S-a adăugat suport pentru sistemele de operare Windows NT și GNU/Linux pe 64 de biți . Cea mai mare rezoluție posibilă a texturii a fost ridicată la 4096x4096 pixeli, a fost adăugat suport complet pentru Unicode ( 16 biți ), ceea ce a făcut posibilă crearea de jocuri complet localizate în limbi asiatice.
În plus, motorul în sine a fost optimizat semnificativ, permițând performanțe mai bune cu aceleași cerințe de sistem. Acum puteți reda videoclipuri în format DivX și Bink . Versiunile ulterioare au introdus sistemul de creare a arborilor SpeedTree .
Această versiune a motorului a fost folosită în jocuri pe calculator, cum ar fi Unreal Tournament 2004 , Pariah , Killing Floor și multe altele.
Unreal Engine 2 RuntimeUnreal Engine 2 Runtime este o versiune specială a Unreal Engine 2.0 (bazat pe build 2226) cu o licență limitată. Motorul a fost înlocuit ulterior cu UDK, o versiune mai ieftină a Unreal Engine 3.
Utilizatorul putea descărca kitul de distribuție al versiunii Windows a motorului de pe site-ul oficial (pentru alte sisteme de operare era necesară achiziționarea unei licențe). Kitul a inclus editorul de hărți UnrealEd , utilitarul ucc , precum și un nivel de testare și un set mic de modele și texturi care demonstrează capacitățile tehnologiei. Motorul este gratuit pentru proiecte non-comerciale, precum și pentru uz educațional (cum ar fi crearea de prezentări 3D ).
Utilizarea comercială a necesitat achiziționarea unei licențe.
Unreal Engine 2XO versiune specială a motorului pentru consola Xbox , bazată pe versiunea 2.0. Pe lângă optimizarea codului, au fost introduse noi efecte vizuale, cum ar fi adâncimea câmpului (adâncimea vizualizării), corecția gamma dinamică, înflorirea și diverse variații de estompare . Formatul texturii a fost schimbat la umbre de înaltă rezoluție mai realiste, a adăugat Urmărirea memoriei , suport pentru chat vocal, Xbox Live și o funcție de ecran divizat.
A fost folosit doar în Unreal Championship 2 .
Capturile de ecran ale Unreal Engine 3 au fost lansate în iulie 2004, când motorul era în dezvoltare de peste 18 luni [16] . Versiunea a fost dezvoltată cu computere personale folosind sisteme moderne de randare (DirectX 9/10 și OpenGL 2/3) și console de generație următoare ( PlayStation 3 și Xbox 360 ). Datorită utilizării pe scară largă a sistemelor multiprocesor, motorul folosește două fire principale paralele - firul principal (responsabil în principal pentru procesul de joc) și firul de randare. Pe lângă cele două fire principale, pot fi apelate fire secundare, care execută sarcini unice [17] . Există suport pentru încărcarea dinamică a datelor multi-threaded ( streaming ), de exemplu, încărcarea unei „locații” direct atunci când vă deplasați în jurul acesteia pentru a economisi resurse.
Motorul grafic actualizat acceptă cele mai moderne tehnologii, inclusiv HDR , iluminare per pixel, umbre dinamice, model de umbrire 4, umbrire de geometrie. Conducta grafică în sine a fost transferată sub controlul shader-urilor.
Subsistemul fizic Karma a fost abandonat, înlocuindu-l cu PhysX de la AGEIA . Mai târziu, AGEIA a lansat un set de biblioteci suplimentare pentru joc, permițându-vă să utilizați toate caracteristicile sistemului fizic (cum ar fi efectul de „fluid” sau țesut).
Motorul de animație FaceFX dezvoltat de OC3 Entertainment este responsabil pentru animația fețelor personajelor . Versiunea EAX actualizată la a 5-a. S-a adăugat suport pentru tehnologia SpeedTree pentru generarea de arbori. Accentul a fost pus pe geometria aditivă , dar suportul pentru geometria subtractivă nu a fost abandonat. Dezavantajul geometriei subtractive este, în primul rând, un calcul mult mai lung al luminii [18] .
A fost introdus un nou editor UnrealEd , rescris folosind wxWidgets .
Inițial, Unreal Engine 3 a acceptat doar platformele Windows, PlayStation 3 și Xbox 360, în timp ce iOS (prima demo - Epic Citadel) și Android au fost adăugate mai târziu în 2010, cu primele jocuri Infinity Blade pe iOS și Dungeon Defenders pe Android. La evenimentul Adobe Max din Los Angeles, motorul a fost demonstrat folosind platforma Adobe Flash 11 .
Primele jocuri Unreal Engine 3 au fost Gears of War pentru Xbox 360 și RoboBlitz pentru Windows, lansate pe 7 noiembrie 2006.
Unreal Development Kit (UDK)În timp ce Unreal Engine 3 era deschis modding-ului, capacitatea de a vinde jocuri bazate pe UE3 a fost limitată la cei care aveau o licență pentru motorul de joc.
Cu toate acestea, în noiembrie 2009, Epic Games a lansat o versiune gratuită bazată pe Unreal Engine 3, numită Unreal Development Kit (UDK), care a devenit disponibilă pentru fiecare dezvoltator începător. (Motorul a fost actualizat în paralel cu dezvoltarea versiunii comerciale și în cele din urmă a început să se bazeze pe Unreal Engine 3.5).
Conform EULA , dezvoltatorii de jocuri își pot vinde jocurile cu o plată unică de 99 USD către Epic Games. În cazul în care un produs comercial bazat pe UDK câștigă un profit total de 50.000 USD, dezvoltatorul va fi obligat să plătească redevențe de 25% către Epic Games. În decembrie 2010, a fost lansată o versiune a UDK pentru a sprijini crearea de jocuri pentru platforma iOS .
Unreal Engine 3.5În această versiune, a existat o altă evoluție a componentei grafice. Deci, printre altele, a fost adăugat filtrul de post-procesare Ocluzie ambientală , care îmbunătățește umbrele și iluminarea. Numărul de caractere procesate în cadru a fost crescut. Tehnologia dinamică a suprafeței apei a fost reproiectată la un nou nivel, fizica corpului moale și mediile distructibile au fost, de asemenea, îmbunătățite semnificativ.
În martie 2010, a fost publicat anunțul noilor caracteristici ale motorului, care au fost prezentate la Game Developers Conference 2010 . Una dintre inovațiile majore este noul sistem de iluminat Unreal Lightmass , care utilizează caracteristici de iluminare globală fără pierderi care au fost implementate în sistemele de iluminat mai vechi. Lucru îmbunătățit cu sistemele multiprocesor - distribuția sarcinilor între sistemele multiprocesor folosind Unreal Swarm , precum și compilarea mai rapidă a codului C++ și procesarea Unreal Script datorită Unreal Build Tool (ultima creștere a performanței va afecta doar dezvoltatorii sau creatorii de amatori). modificări). A adăugat propriile mijloace de distribuire a conținutului generat de utilizatori - Unreal Content Browser , a apărut Unreal Master Control Program - un nou server principal pentru actualizarea clienților și menținerea statisticilor globale, care este deja folosit în Gears of War 2 . În legătură cu inovațiile, Epic Games China a plănuit să demonstreze utilizarea motorului pentru jocuri online masiv multiplayer [19] .
În 2011, Epic Games a arătat un videoclip despre cele mai recente actualizări aduse motorului - Samaritan ("Samaritan") [20] ; presa și jucătorii au început să-l numească „Unreal Engine 3.9” [21] . În următoarea actualizare, motorul de a treia generație a primit suport pentru DirectX 11, precum și o cantitate imensă de tehnologii conexe.
Pe 18 august 2005, vicepreședintele Epic Games Mark Rein a raportat că Unreal Engine 4 este în dezvoltare de doi ani și platformele sale țintă sunt computerele personale și consolele de generația a 8-a , iar singura persoană care lucrează la motor este Tim Sweeney . Însuși Sweeney a anunțat la GDC 2006 că dezvoltarea celui de-al patrulea Unreal Engine nu va începe până în 2008, deoarece UE3 va fi relevant cel puțin până în 2010.
Pe 9 octombrie 2008 la TGS, echipa de dezvoltare Square Enix a anunțat că „au văzut următorul Unreal Engine (Unreal Engine 4)” și „abia aștept să lucreze cu el” [22] . Square Enix a lansat anterior The Last Remnant și „nu a avut probleme la rularea Unreal Engine 3”.
Prezentarea demonstrativă tehnică a Unreal Engine 4 a avut loc la E3 2012 pe 7 iunie.
Pe 19 martie 2014, Unreal Engine 4 și-a început distribuția gratuită pentru toată lumea cu un abonament de 19 USD pe lună. Codurile sursă sunt postate și în depozitul GitHub .
Pe 2 martie 2015, Epic Games a anunțat o schimbare în sistemul de distribuție: motorul a devenit gratuit pentru toți dezvoltatorii, cu condiția ca profitul din aplicațiile create pe baza motorului să nu depășească 3.000 USD pe trimestru [23] .
Anterior, Epic Games a anunțat o competiție care le-ar putea oferi dezvoltatorilor 5 milioane de dolari; acest lucru necesită trimiterea unui prototip funcțional al jocului dvs.
Pe 13 mai 2020, Epic Games a anunțat oficial Unreal Engine 5 și a demonstrat o demonstrație la rezoluție QuadHD la 30 FPS pe consola PlayStation 5 . Demo-ul a arătat munca noilor tehnologii: Lumen și Nanite. Lumen este o nouă tehnologie dinamică de iluminare globală. Nanite este una dintre tehnologiile cheie din inima motorului Unreal Engine 5. Vă permite să afișați cât mai multă geometrie în cadru cât vede ochiul și depinde de rezoluție - cu cât este mai mare, cu atât detaliul devine mai mare [ 24] . Lansarea versiunii actualizate a motorului este programată pentru începutul anului 2022. Pe 5 aprilie 2022, Epic Games a deschis accesul la motorul de joc Unreal Engine 5 tuturor dezvoltatorilor [25] .
Unele companii de dezvoltare preferă să folosească tehnologiile Unreal ca bază pentru dezvoltarea propriului motor.
De exemplu, Unreal Engine 2 a fost dezvoltat special pentru jocurile Deus Ex: Invisible War și Thief: Deadly Shadows , denumit intern Flesh . Irrational Games a fost unul dintre primii care a introdus tehnologia HDR în Vengeance Engine (bazat pe Unreal Engine 2.5) , precum și motorul fizic Havok 2.0 și alte caracteristici care sunt acum utilizate pe scară largă în jocuri. Acest motor a fost folosit în Triburi: Vengeance și SWAT 4 . BioShock a lui Irrational a folosit și el Vengeance Engine la început , dar apoi dezvoltatorii l-au înlocuit parțial cu Unreal Engine 3, mai actual. Versiunea modificată a devenit cunoscută sub numele de Vengeance Engine 2 [26] . Ubisoft folosește motorul YETI și motorul LEAD pentru proiectele lor , create pe baza Unreal Engine 2.5.
De asemenea, studioul de jocuri video NetherRealm Studios a modificat motorul Unreal Engine 3 și continuă până în prezent să creeze o serie de jocuri Mortal Kombat bazate pe acest motor.
Unreal Engine 1 : La sfârșitul anului 1999, Epic Games a lansat o parte din codul sursă pentru executabilele Unreal Tournament , pornind proiectul OpenUT pentru a porta motorul și jocul pe Linux . După ceva timp, munca pe OpenUT a fost preluată de Loki Software [27] . Versiunea Linux a Unreal Tournament a fost lansată spre vânzare de Loki Games. Prima versiune a motorului nu mai este disponibilă pentru licențiere, dar codul sursă necesar pentru a vă construi propriile executabile este disponibil gratuit. Sunt distribuite sub o licență „Unreal Retail” – adică numai pentru uz personal [28] . În plus, în 2004, a fost publicat codul sursă pentru jocul Rune [29] .
Unreal Engine 2/2.5 : A doua versiune a fost disponibilă pentru licențiere împreună cu a treia de mult timp. Epic Games ia oferit să creeze jocuri pentru PC și console de generația a șasea pentru 350.000 USD sau mai mult (în funcție de numărul de platforme acceptate).
Unreal Engine 2 Runtime : O versiune a Unreal Engine 2 Runtime a fost pusă la dispoziție pentru proiecte non-comerciale non-video de jocuri. Dezvoltarea de jocuri pe această versiune a motorului este interzisă (în ciuda faptului că nu există o definiție specifică a „jocurilor” în licență) datorită faptului că „Epic Games primește venitul principal din crearea de jocuri și dacă doriți să creați-vă propriul joc, faceți-l ca o modificare a produsului existent. Pentru proiectele cu buget, licența Unreal Engine 2 Runtime a fost disponibilă la un preț relativ scăzut (de la 8.000 USD). Costul unei licențe depinde de numărul de dezvoltatori (numărul de „locuri de muncă”). Împreună cu licențierea a cel puțin unui „loc de muncă” este disponibil pentru a comanda fișierele de antet ale celei de-a doua versiuni a motorului la un preț de 5000 USD.
Prețurile de licențiere pentru versiunile 3.0 și mai sus nu sunt publicate, dar se menționează că există o varietate de opțiuni de licență, inclusiv pentru produsele care nu sunt pentru jocuri. Pe 5 noiembrie 2009, a fost lansat Unreal Development Kit , o versiune gratuită a Unreal Engine 3.5 pentru utilizare necomercială, cu opțiunea de a cumpăra o licență comercială ieftină [30] . Dacă scrierea de jocuri pe Unreal Engine 2 Runtime a fost strict interzisă, atunci scrierea de jocuri folosind UDK este permisă, dar este interzisă crearea de produse bazate pe acesta „care pot sau vor concura cu UDK, precum și middleware (middleware) sau software de dezvoltare a jocurilor (software de dezvoltare a jocurilor) de la Epic Games."
Pe 2 martie 2015, Unreal Engine 4 a devenit gratuit. În același timp, dezvoltatorii de jocuri, ca și până acum, trebuie să transfere 5% din veniturile din vânzări ale jocului (clauza 5, partea 10 a acordului de licență) către Epic Games dacă veniturile trimestriale depășesc 3.000 USD.
Pe 13 mai 2020, Epic Games a ridicat pragul de venituri din jocul gratuit la 1.000.000 USD [31] .
Jocurile de pe Unreal Engine sunt realizate într-o varietate de genuri, totuși, primele proiecte au fost create, de regulă, în genul shooter sau acțiune ; flexibilitatea tehnologiei vă permite să creați strategii , misiuni , diverse simulatoare etc.
În plus, motorul poate fi folosit pentru a lucra cu grafică în cinema, de exemplu, pentru a crea efecte speciale și în scopuri educaționale .
În rețelele sociale | |
---|---|
În cataloagele bibliografice |
ireală | Lumea|
---|---|
Ireal |
|
Turneu ireal |
|
Campionatul Ireal |
|
Colecții |
|
Angajații | |
Companii |
|
Tehnologie |
|
Legate de |
|
Motoare de joc | |||||||
---|---|---|---|---|---|---|---|
Grafic | Gratuit GLScene Horde3D Irrlicht CĂPCĂUN OpenSceneGraph Proprietate Outerra | ||||||
Fizic | Gratuit Box2D Glonţ Chipmunk newton ODĂ. Tokamak Proprietate DMM Havok Fizica PhysX | ||||||
scop general |
| ||||||
De specialitate |
| ||||||
Lista motoarelor de joc |