Vizualno skriptiranje s Blueprint sustavom – Unreal Engine


U Machinu je upravo došao jedan od najpristupačnijih game engine za početnike - Unreal Engine. Premda je prije bio poznat kao jedan od najtežih game engine-a, uvođenjem Blueprint sustava omogućilo se osobama koje ne znaju C++ programski jezik da krenu izrađivati svoje video igre i interaktivne projekte.

Što je zapravo game engine i kako funkcionira?

Svaki game engine je u principu simulator stvarnosti. On pruža virtualni poligon u kojem postoje zakoni fizike te nam daje podlogu na kojoj izgraditi bilo kakav interaktivni sadržaj. Odlika dobrog game engine-a je da pokušava čim preciznije simulirati stvarni svijet. To uključuje osnovne zakone fizike poput gravitacije pa sve do vrlo kompleksnih izračuna odbijanja svijetla sa različitih površina.

No, takve simulacije zahtjevaju vrlo kompleksnu logiku. Kao primjer uzet ćemo osnovne vremenske uvjete. U stvarnosti, zbog sunčeve energije more isparava, te se voda iz mora kondezira u vodenu paru i sakuplja u oblacima. Nakon nekog vremena kada zrak u oblacima zbog hladnoće postane gust, vodena para koja se kristalizirala počinje padati te se prema tlu otopi/zaledi (kiša,snijeg).

Kako bi se ovaj proces simulirao u virtualnoj stvarnosti, potrebno je programiranjem objasniti programu kako da se ponaša za svaki korak ovog ciklusa. Potrebno je uvrstiti sve varijable ( gustoća, tempreatura, količina, masa, kretnja itd.) te odrediti koji omjer varijabli će dovesti do kiše, koji do isparavanja, itd.

Zato proces programiranja opisujemo kao razgovor s vrlo jednostavnim kompjuterom koji ne razumije kontekst, već mu morate na njegovom jeziku objasniti korak po korak što da napravi i kako da se ponaša.

Naravno, na svijetu postoje ljudi koji žele pomoći drugima tako da im ovakve procese olakšaju I skrate. Mi volimo takve ljude, a neki od takvih ljudi su programeri iz Epic-a, tvrtke koja je stvorila Unreal Engine i sustav vizualnog programiranja zvanog Blueprint koji će vam uštedjeti vrijeme i muke.

Što je to zapravo vizualno skriptiranje i što se u Unreal Engineu može napraviti bez znanja C++a?

Upiti za Unreal Engine edukacijom stižu nam već preko 2 godine, a proteklih tjedana od kada smo ovaj tečaj konačno i najavili pristiglo je dosta upita oko Blueprint sustava vizualnog skriptiranja bez znanja programiranja.

Kratki video:

Odličan primjer su arhitektonske vizualizacije. Uz pomoć Unreal Engine i Blueprints sustava čak i oni koji nemaju vremena posvetiti se učenju C++ programskog jezika moći će savladati izradu detaljnih i interaktivnih arhitektonskih showcaseva te ih čak prezentirati klijentima u virtualnoj stvarnosti (Oculus Rift i slični).

Blueprint sustav sačinjen je od “kutijica” koje sadržavaju metode odnosno funkcije i od “strelica” koje predstavljaju odnose među varijablama i metodama. Kutijice sadrže linije kodova koje su programeri prethodno napisali I koje izvršavaju neku od funkciju koja vam je potrebna. 

Na primjeru vremenskih uvjeta, jedna kutijica bi predstavljala isparavanje, a druga kutijica kondenzaciju.
Na vama je da odaberete koji će vam alati biti potrebni iz uistinu velikog izbora funkcija te isti “drag and drop-ate” u svoj program, stvarajući tako programski kod bez ručnog kucanja funkcija.

Ovo štedi vaše vrijeme pisanja samog koda, umanjuje vjerovatnost pogreške i otvara mogućnost da stvarate svoju video igru ili vizualizaciju prostora i objekata bez da napišete liniju koda.

Ako zvuči predobro da bi bilo istinito, donekle i je. Usprkos vrlo pojednostavljenom sustavu, svejedno je potrebno znati osnovne termine programiranja I čemu služe: varijable, funkcije, metode, petlje itd. No ako usporedimo vrijeme potrebno da se nauči C++ I da se nauče osnovni termini programiranja za rad u Blueprints sustavu, nedvojbeno je da C++ uzima više vremena I truda.

Zbog toga je Machina za vas stvorila tečaj Unreal Enginea 4 u kojem vas podučavamo Blueprint sustavu, logici programiranja te samom sučelju i korištenju ovog predivnog software-a koji će vam zasigurno otvoriti nove mnogobrojne vidike zbog svoje snage, iskoristivosti i potencijala kojeg pruža.