Developeri, kreirajte virtuelnu realnost lakše uz Three.js biblioteku

Pošto sam već neko vreme radio sa three.js-om, implementiranje alata za VR je zahtevalo još tri dodatne linije koda i importovanje dva JS fajla. Za manje od pola sata mogao sam da šetam oko svoje kreacije, u virtuelnoj realnosti.

Marpi - 21. Jul, 2016.

WebGL je relativno nova ideja, ali nam tek nadolazi nešto ogromno. Zamislite čitav internet u virtuelnoj realnosti. To je WebVR, još uvek eksperiment, ali definitivno slika budućnosti koja će vaš browser pretvoriti u VR polje. Zbog ovoga, valja razumeti kako nastaju virtuelni svetovi, a three.js, 3D biblioteka, pruža svakome priliku da se oproba u njegovom stvaranju i oživljavanju preko svog Cardboarda.

Three.js je lagana i laka za korišćenje open source 3D biblioteka koju je započeo i održavao mrdoob, uz podršku sjajne, privržene zajednice saradnika, stvaralaca i umetnika. Pretražite Instagram ili Twitter, da biste dobili bolji uvid u to kako je ljudi koriste za svoje stvaralaštvo.

my computer science masters thesis #isometric #threejs #procedural #poop #viz

Видео запис корисника FAY MONTAGE (@faymontage) дана 10. Јун 2016. у 3:08 PDT

Jedna od najvećih prednosti ove biblioteke je njena velika zajednica. Uz nju ćete imati pristup širokom polju primera koji pokazuju svaki deo engine-a u akciji, sa celim source kodom, potpuno besplatno. Ja držim predavanja o three.js-u ovde u San Francisku i vidim ljude koji bez prethodnog poznavanja kodiranja uspevaju da stvore žive svetove u nekoliko sati, samo kroz kod.

Ako želite da uđete dublje, svakako će vam trebati poznavanje JavaScripta, a valjalo bi znati bar nešto o tome kako funkcioniše GPU, ali i shader GLSL jezik. Onda ponovo, čak i ako ne znate ništa od ovoga, predlažem da uzmete nekoliko primera, poigrate se sa njima, menjate varijable i vidite šta će se desiti. Na ekranu je pet rotirajućih kocki? Vidite kako će sjajno 10000 izgledati. Spojler: baš, baš dobro :)

Pošto sam već neko vreme radio sa three.js-om, implementiranje alata za VR je zahtevalo BUKVALNO još tri dodatne linije koda i importovanje dva JS fajla; za manje od pola sata mogao sam da šetam oko svoje kreacije, u virtuelnoj realnosti.

Jedna od stvari koju uživam da gradim jesu mali svetovi — pejzaži, flora, fauna. Živa stvorenja koja unaokolo lutaju slobodno, menjajući se vremenom. Volim da postavim jednostavna pravila i ostavim sredinu da se slobodno menja. Pokušajte i vidite šta će se desiti. Sa VR-om, zapravo mogu i da uhodam U nju. Toliko je veće, stvarnije, življe. Praktično, možete stvoriti snove. Probajte nešto što sam stvorio ovde.

Kvalitet ili kvantitet?

Za alternativu, postoji još nekoliko zanimljivih WebGL engine-a: PlayCanvas i GooEngine, recimo. Siguran sam da ih ima još. Povrh toga, tu je Aframe, kao wrapper za three.js, a nudi i jednostavan jezik nalik HTML-u za stvaranje sadržaja.

Tu su uvek Unreal Engine i Unity 2, najviše korišćeni VR game engine-i. Oba rade na Web/WebVR eksporterima, ali za sada još uvek ne mogu u potpunosti da se primene u browseru.

Upravo ovde morate da birate između kvaliteta i dosega — korišćenjem WebVR-a svako će moći da pristupi vašem VR sadržaju, ali ćete ga morati pojednostaviti, optimizovati, osigurati da radi na svim različitim uređajima. Sa druge strane, imamo prvoklasni, komercijalni engine, ali će samo mali broj ljudi moći da vidi šta ste stvorili (za sada).

Više od svega, želim da vam posavetujem da probate! Ideja kreativnog kodiranja je divna — pronađite neke primere, kod, rasklopite ga, isprobajte ga, vidite šta je rezultat. Da biste naučili da slikate, nema potrebe izučavati istoriju umetnosti. Uzmite četku i vidite šta će se desiti.


Mateuš Marpi Marcinovski je Director of Web and Experiential Design u Obscura Digital studiju u San Francisku. Na naša pitanja je odgovorio tokom godišnjeg odmora, na čemu smo mu izuzetno zahvalni :)