Atelier: Introducere in Unreal Engine 4 – partea I

Recenzii sau articole care abordează un anumit subiect legat de games/media/hardware/lifestyle, scrise de către userii forumului.
Post Reply
User avatar
mahri726
Headcrab
Posts: 92
Joined: 18 Apr 2014, 17:12
Contact:

Atelier: Introducere in Unreal Engine 4 – partea I

Post by mahri726 »

Acum ceva timp, in revista Level, Lara si Sebastian porneau o serie de articole pe tema dezvoltarii de jocuri video. Desigur, la acea vreme, uneltele pentru dezvoltare nu erau la indemana oricui, iar pe langa faptul ca erau foarte scumpe, necesitau si multa experienta pentru a ajunge la un rezultat cat de cat acceptabil. Astfel, menirea articolelor era mai mult de a oferi o perspectiva generala asupra industriei AAA de la acea vreme, decat sa explice iti explice efectiv cum sa faci un joc. Cred ca fiecare gamer si-a dorit la un moment dat sa faca un joc, drept urmare, am inceput o noua serie de articole introductive pentru Unreal Engine 4. Poate, cumva, va starni interesul cititorilor, iar scena indie romaneasca va fi mai bogata. Mai intai, un scurt istoric.

Unreal Engine a aparut pe piata odata cu lansarea jocului Unreal de catre Epic Games. La vremea respectiva, licentele se obtineau foarte greu. La un moment dat, s-a lansat UDK, editorul pentru Unreal Engine 3, ce putea fi descarcat gratuit. Totusi, UDK avea anumite limitari. Singurul limbaj de programare era UnrealScript, un limbaj foarte greoi, chiar si pentru expertii in programare. Pentru a putea programa un joc in C++, trebuia sa ai acces la codul sursa. Va dati seama ca marii publisheri plateau sume foarte mari pentru acesta, sume pe care majoritatea dezvoltatorilor indie nu si le puteau permite. Astfel, din ce in ce mai multi dintre ei s-au indreptat spre Unity, engine-ul competitiv, in care programarea era mult mai usoara, desi grafica nu atingea nivelul motorului Unreal.
Cand au vazut succesul de care se bucura Unity, cei de la Epic Games le-au urmat exemplul, si au lansat Unreal Engine 4 cu o licenta mult mai convenabila pentru dezvoltatorii indie decat cea pentru UDK. Plateai 20 de dolari, si aveai access si la engine, si la codul sursa. Cand lansai jocul, daca ai fi castigat intr-un trimestru 3100, plateai 5% din cei 100 care depaseau. Anul tecut, au renuntat la suma initiala de 20 de dolari, motorul grafic devenind gratuit.
In acest atelier, vom face un joc FPS cu ajutorul Unreal Engine 4. La sfarsitul ultimei parti a atelierului, se va afla un link de unde veti putea descarca jocul finalizat. Deoarece motorul grafic are un sistem de scripting vizual extrem de capabil, “ Blueprints“, nu va trebui sa scriem nici macar o linie de cod. Toata programarea jocului se realizeaza cu ajutorul nodurilor de Blueprints. Exista jocuri comerciale pe Steam, cum ar fi, “Alice in Tokio Wonderland”, care utilizeaza doar Blueprints. Daca faceti un prototip de joc cat mai original, este posibil ca cei de la Epic Games sa va plateasca chiar cu mii de dolari fara sa va ceara nimic in schimb, prin programul Unreal Dev Grants. Acestea fiind zise, sa incepem.

In primul rand, verificati daca sistemul va permite sa rulati editorul. Potrivit Epic Games,
“For developing with UE4, we recommend a desktop PC with Windows 7 64-bit or a Mac with Mac OS X 10.9.2 or later, 8 GB RAM and a quad-core Intel or AMD processor, and a DX11 compatible video card. UE4 will run on desktops and laptops below these recommendations, but performance may be limited.”
Eu ca sistem, am o placa grafica Nvidia Geforce 8600 GT (compatibila DX10), procesor Dual Core si 6 GB de ram. Desi performanta are de suferit, jocurile pot fi dezvoltate. Daca aveti un sistem mai slab, asemanator cu al meu, am cateva sfaturi pentru a o imbunatati. Voi reveni asupra lor imediat.



In al doilea rand, va trebui sa descarcati Lansatorul Epic Games, cu care puteti descarca motorul grafic. Accesati aceasta pagina, si dati click pe ,,get Unreal”:
https://www.unrealengine.com/what-is-unreal-engine-4
Veti fi redirectionati la o pagina, unde va puteti face contul, apoi urmati restul istructiunilor. Ar trebui sa ajungeti la pagina dashboard, unde scrie, sub tabul download, “Get Unreal Engine”.
Dupa ce ati instalat launcherul si va logati, apasati butonul “Library”, apoi “add versions”. Atelierul acesta a fost realizat cu varianta 4.11, in cele viitoare este posibil ca anumite lucruri sa fie mai diferite.

Image

Incepeti instalarea motorului grafic. In sectiunea Learn, puteti descarca resurse gratuite pentru proiectele voastere. Puteti gasi resurse gratuite si in sectiunea Marketplace, de exemplu asset-urile Infinity Blade.
Dup ce instalarea s-a finalizat si ati pornit editorul, selectati file-new project. Vom incepe dezvoltarea jocului de la un sablon, pe care il vom extinde cu diverse fuctionalitati. In noua fereastra, selectati tab-ul New Project, sub-tabul blueprints, apoi apasati pe icon-ul First Person. Aveti grija ca sa fie selectata optiunea ,,With Starter Content”, deoarece vom folosi modelele 3D incluse in editor. Apasati butonul “ Create Project”.
Acum cateva sfaturi pentru cei cu PC-urile mai slabe. Ca sa imbunatatiti performanta, apasati settings>engine scalability settings>low. De asemenea, puteti face fereastra in care vedeti scena cat mai mica, tragand de despartitorul superior, inferior si cele laterale (imaginea de mai jos). In scenele mai complexe, puteti apasa butonul lit (incercuit cu rosu), si sa selectati unlit, pentru un plus de performanta in defavoarea luminilor si umbrelor.

Image


Ca si interfata, fereastra principala a editorului are mai multe elemente, numite panel-uri.

Image


Viewport
Viewport-ul este elementul central, ,,fereastra” voastra catre nivelul pe care il creati. Va permite sa interactionati cu aceasta in mod direct.
Menu
De aici va puteti salva nivelul sau proiectul. De asemenea, puteti accesa Project Settings – setari specifice pentru proiectul vostru, sau Editor Preferences, setari generale pentru editor.
Modes
De aici puteti adauga in scena diferite obiecte, cum ar fi lumini, camere, forme geometrice, etc. De asemenea, puteti sa generati un teren, sa-l sculptati sau sa adaugati vegetatie. Ca si Unreal Engine 3, Unreal Engine 4 are un sistem de “schitat” niveluri, numit BSP. Voi reveni asupra lui in articolele viitoare.
Content Browser
Aici gasiti toate fisierele existente in proiect, de la modele 3d, la texturi, sunete, animatii. Puteti importa un fisier extern apasand butonul import, sau tragandu-l de pe desktop sau din windows explorer. (drag and drop)
World Outliner
Aici aveti acces la toate modelele plasate in scena/nivelul la care lucrati. Le puteti selecta, le puteti face invizibile, sau le puteti sterge. Pentru a face camera sa se centreze pe un anumit element din nivel, dati doua click-uri pe el in World Outliner.
Toolbar – aici aveti acces la mai multe functii. De exemplu, daca apasati Play, puteti sa testati jocul. Daca apasati F8 in timp ce jocul ruleaza, deposedati personajul, drept urmare, nu il mai puteti controla. Insa, tinand apasat click dreapta, prin apasarea tastelor W,A,S,D,Q,E, puteti misca camera in orice directie, astfel incat sa vedeti actiunea din toate unghiurile. Daca apasati din nou F8, ,,spiritul” ii intra inapoi in corp, reposendndu-l. Un alt buton important este Build. Cand il apasati, motorul grafic trimite informatii legate de iluminarea scenei si texturile obiectelor la o alta aplicatie, Swarm Agent, care porneste automat. Swarm Agent face niste calcule bazate pe proiectia razelor de lumina pe suprafete, apoi trimite inapoi la motorul grafic informatiile obtinute, impreuna cu texturile ,,Iluminate”. Interfata Swarm Agent o puteti deschide din taskbar-ul Windows-ului, are un icon specific. Astfel, puteti vedea progresul mai in amanunt. Motorul de iluminare folosit de Swarm Agent se mai numeste si Lightmass.
Details
Aici puteti schimba mai multe setari specifice pentru obiectul selectat, cum ar fi locatia sau materialul alocat acestuia.

Pentru a misca camera, se pot folosi mai multe metode de control.
1. Click dreapta+ W,A,S,D pentru deplasare pe planul orizontal, sau click dreapta+Q,E pe cel vertical. Pentru a modifica viiteza cu care camera se deplaseaza, puteti roti din rotita de scroll.
2. Modul de control specific pentru programul de modelare si animatie Maya
Alt+Click stanga – rotatie
Alt+Click mijloc –translatie
Alt+ Click dreapta – dolly sau zoom

Unreal Engine 4 are un sistem de tutoriale inclus. Pentru a-l accesa, apasati butonul care clipeste cu unde verzi, din coltul drept al ferestrei.

Acum, vom incepe sa construim jocul.
Apasati File- New Level, si selectati Default. Puteti sa salvati nivelul current, daca vreti.
Selectati podeaua/Floor, iar in Details panel, setati X la valoarea 10, Y la 10, ca sa avem mai mult spatiu sa ne contruim nivelul.
In content browser, navigati in folderul Starter Content>Shapes

Image




Locul in care jocul incepe este marcat cu un gamepad si un steag. Navigati in apropierea acestuia, si trageti “Shape_Cube” langa el. In fereastra pentru viewport, aveti trei butoane- translate (move), rotate si scale. Apasati pe scale, si trageti de manerul albastru in sus, astfel incat cutia sa ajunga la o inaltime convenabila.(1) Trageti de manerul rosu, astfel incat lungimea zidului sa creasca. Selectati move, apoi, cu tasta Alt apasata, trageti zidul spre dreapta. Veti observa ca nu mutati zidul in sine, ci o copie a acestuia. Acum avem un coridor.(2) Selectati ambele ziduri, tinand apasata tasta Shift. Tineti apasat Alt, si trageti de sageata rosie, astfel incat sa dublam lungimea coridorului. Selectati bucatile de zid din dreapta, apoi le copiati spre dreapta tot cu Alt.(3) Mutati o bucata din zidul de mijloc mai in spate si spre stanga.(4)(7) Selectati tot zidul din dreapta, apoi apasati butonul rotate. Tinand apasat alt, il rotiti spre dreapta cu 90 de grade. (5) Il plasati in fata, apoi il copiati mai in spate, astfel incat sa obtinem un spatiu inchis. (6) Selectati ,,Light Source, ori din scena, ori din World Outliner, si ii reduceti intensitatea la 0.5 in panel-ul Details.

In urmatoarea parte, vom lucra cu Blueprints, sistemul de scripting visual. De asemenea, vom crea inamici, elemente de interfata precum bara de viata si alte lucruri care s-ar putea gasi intr-un shooter.
User avatar
vulp
Hammer Haunt
Posts: 1459
Joined: 12 Jun 2014, 04:23

Re: Atelier: Introducere in Unreal Engine 4 – partea I

Post by vulp »

aur curat.

sunt curios de partea cu generarea procedurala/parametica in offline - adica as dori sa import niste fisiere externe in editor si sa le bibilesc acolo. am gasit cateva tutoriale pe youtube, printre care asta, dar cum nu sunt deloc familiarizat cu UE4, nu-mi dau seama daca e relevant.

harta este intr-un CSV cu perechi de "vertex stanga jos fatza, dreapta sus spate"... oare este mai usor de importat CSV, apoi procesat in blueprint si salvat in format de harta UE4 sau e mai usor intai sa-l transform in obj/3ds/fbx (nu e problema) si sa-l incarc asa?

din cate am inteles, daca salvezi din 3ds max (sa zicem) si importi in UE4, le ia drept obiecte 3d singulare si nu drept "harti" intregi. pe cand eu vreau sa import harta de-a toata. poate scula asta e ce-mi doresc?

scuze pentru deturnare, astept episodul 2 cu nerabdare :mrgreen:
unde dai si unde doare unde dai si unde doare
User avatar
mahri726
Headcrab
Posts: 92
Joined: 18 Apr 2014, 17:12
Contact:

Re: Atelier: Introducere in Unreal Engine 4 – partea I

Post by mahri726 »

Salut. Pentru generarea procedurala, cred ca este mai bine sa imporți fiecare model separat, in format FBX.

Daca vrei insa sa imporți o harta întreaga, acest lucru este posibil in ultima versiune a motorului grafic, 4.12. Din release notes:
With Full Scene Importing you can now take that environment you’ve already constructed in Max / Maya / Blender and import the entire scene into a level in the editor.


A new Scene FBX asset is created for your environment so that you can re-import it allowing iteration on the environment as well. An early version was available in 4.11 supporting only scenes containing static meshes. The 4.12 version is more complete including the ability to import scenes that include skeletal meshes.. To try out the feature, just go to File > Import Scene, and select an FBX environment to import.
Desigur, va trebui sa transformi harta din CSV in FBX. Poti importa hărți cu tot cu personaje. (skeletal mesh) .

După ce imporți harta, daca mai vrei sa ii faci modificări, poți sa o mai modelezi in Max, o salvezi, iar in UE4 dai click dreapta pe harta- reimport asset, si se updateaza cu toate modificările noi.

Partea a 2-a este inca in lucru. As putea sa o descriu ca exploziva, deoarece voi explica arrays cu dinamita, distrugând diverse obiecte.
Post Reply

Return to “Articolele comunității”

Who is online

Users browsing this forum: No registered users and 7 guests