Metaverse е тема, за която всички говорят, но често като за нещо абстрактно, без ясна дефиниция и с необятна перспектива. Казусът става все по-горещ, а в DEV.BG Job Board забелязваме и първите обяви за IT специалисти, които ще работят по Metaverse проекти. Затова днес решихме да разгледаме в дълбочина какво представлява това пространство и какво предлага то на света на информационните технологии.
Web3 и мечтата за интернет
Думата “Metaverse” се появява през 90-те години като портманто от думите “meta” и “universe”. По същество, това е първообразът на мечтаната световна мрежа, която е основана върху принципите на блокчейн технологията, масовата децентрализация, open source информацията и сигурността на данните. Това е своеобразна еволюция на т.нар. Web2, който е силно централизиран и представлява единен контрол върху потока на данните.
Metaverse-ът води всички тези идеи до логическия им завършек – той е не просто утопично пространство на “интернет на утрешния ден”, но и разрастване в средище на социалния живот онлайн, където хората могат да се срещат, да общуват, да се забавляват, да пазаруват и, най-общо казано, да живеят и да бъдат себе си. Всъщност този Metaverse винаги е бил тук, макар и не толкова свързан и интегриран, колкото е сега. Досега той беше ограничен до части от световете на отделни игри или пък се помещаваше в малки виртуални стаи с много конкретна цел и предназначение. Днес обаче навлизаме в истинския Web3, в който виртуалното се смесва с реалното и създава единно преживяване.
Тези развития, разбира се, водят със себе си някои интересни импликации. Например, през февруари инвестиционната банка JP Morgan Chase си закупи пространство в една от големите Metaverse платформи, направи си в него клон и сложи огромен тигър (да, тигър) във фоайето му. 3D моделът се разхожда свободно и посреща посетителите, като им дава възможност дори да го погалят (макар да е факт, че полигоните glitch-ват на моменти).
Едновременно с това, във Fortnite се провеждат както концерти на някои от най-големите музикални артисти на поколението ни (Ариана Гранде, Травис Скот) с десетки милиони посетители, така и интерактивни изложби за живота и делото на личности като Мартин Лутър Кинг.
Озовахме се, частично благодарение и на пандемията, в етап на напреднало развитие на Metaverse. Но как точно се случи всичко това? Как започнахме от смелите мечти на 70-те, минахме през фантазиите на Snow Crash и Ready Player One през 90-те и началото на 00-те и стигнахме до момента, в който всички големи компании, независимо дали се занимават с IT или са ориентирани в друга посока, търсят начини да се интегрират в Metaverse-а и да изпреварят конкуренцията в завладяването на нови интерактивни пространства?
За ролята на Meta и гейминга
Обичайно е недоразумението, че Meta (доскоро Фейсбук) е първоизточник на тази технология и неин едноличен собственик. Всъщност, през 2019г. компанията създава Facebook Horizons – видеоигра с виртуална реалност за Oculus Quest и HTC Vive, основана върху отворения OpenXR стандарт за достъп. Може би причината за честото асоцииране на Meta с Metaverse (отвъд името, което Марк Зукърбърг взаимства от концепцията) е фактът, че в общественото съзнание се е настанило впечатлението, че всички метавселени са виртуална реалност, която изисква очила, или по-скоро цял headset, за достъп. Но това далеч не е първият опит за лимитирана имплементация на метавселената.
По-ранни итерации на Metaverse има неволно в няколко добре познати игри – Minecraft, Roblox и World of Warcraft се оказват толкова необятни и социално достъпни, че създават основата за свой собствен виртуален свят без това да е тяхната оригинална цел. Това индикира, че Metaverse-ът е повече идея, отколкото конкретно изпълнение, доколкото игри като Minecraft изпълняват много от условията за Metaverse въпреки сравнително ограничените си технически възможности – играта е писана в Java и суров OpenGL.
Може да се каже, че Roblox е още по-проста игра от същата гледна точка. Тя е писана в Lua и с времето развита по такъв начин, че да завърши трансформацията от чист гейминг към гейминг платформа, която предлага open source достъп с всякакви цели, от модинг до учебно програмиране за деца. В Roblox естествено се появяват пазари за най-различни придобивки вътре в самия свят на играта, развиват се инструменти за дизайн, добавят се динамично нови елементи на база участието на самите потребители. И всичко това става възможно благодарение на един много прост Metaverse, който се основава на геопространствен mapping, интуитивен UI и малко магия на виртуалната и алтернативна реалност.

Освен игрите, в Metaverse има няколко големи компании със свои собствени платформи със специфики и особености спрямо нуждите на различни сегменти от аудиторията. Cryptovoxels, The Sandbox, Decentraland и Somnium Space са основните Metaverse пространства, като повечето от тях се занимават с продажба на недвижимо имущество в рамките на виртуалния си свят; тези имоти се наричат парцели и представляват NFT-та, в чиито рамки могат да се отварят магазини, да се организират концерти и да се строят къщи. Други платформи пък функционират като крипто-видеоигри, в които играчите могат да печелят специални криптовалути – такъв е случаят с базираната върху Ethereum блокчейна игра Illuvium. Трети пък са интерактивни пространства за организиране на срещи и работа: пример за това са Metaverse експериментите на Microsoft.
И всичко това ни води до следващия въпрос – как един програмист може да се подготви за навлизането в необятния и вълнуващ нов свят на метавселените?

Работа в и по Metaverse
Голяма част от работата по Metaverse-a включва дизайн на интерактивни 3D елементи. Модерният Metaverse е пълномащабен виртуален свят, което означава, че всичко трябва да бъде идеално гладко, за да може потребителят да се интегрира в средата. Препоръчителна е запознатост с Blender или Unity, както и задълбочено познаване на философията и дизайна на качествения UI.
В този случай си струва да се отдели специално внимание на Blender – един от най-големите open source инструменти за триизмерна анимация с над 3 милиона потребители. През миналата година той получи интеграция с т.нар. Omniverse на Nvidia, описан от компанията като “Metaverse за инженери”, в който могат в реално време да се създават и тестват най-различни дизайни. В Omniverse потребителите могат да симулират споделени виртуални светове, които се подчиняват изцяло на законите на физиката. Проектът се основава върху Universal Scene Description (USD) технологията, която Pixar разработи за анимираните си филми. Интеграция в Omniverse получават и цял куп други софтуерни пакети, които са свързани с дизайн, shader-и и всичко необходимо за мигновеното тестване на анимирани елементи.
И обратно към необходимите познания за навлизането в света на Metaverse :
Като езици за програмиране се препоръчват Python и JavaScript, като особено JS е основата на голяма част от модерните AR и VR проекти, особено когато става въпрос за WebVR преживявания. Хубава отправна точка в тази насока са frameworks като A-Frame, който е съвместим не само с установения Chrome браузър, но и с експерименталната нова версия на Firefox, Nightly, и позволява още употребата на HTML при създаването на WebVR и триизмерни сцени.
Обратно към езиците – C++ е ключов по отношение на AI моделите, както и участието в проекта на Meta за NFT Marketplaces, който ще представлява най-големият централизиран онлайн пазар за non-fungible tokens и има потенциал да се превърне в своеобразен “площад” на новия взаимнообвързан свят на метавселената. Полезно е и познаването на deepLearning алгоритми и опит с платформи за machine learning като TensorFlow, които спомагат за въвеждането на добри практики в сферата на информационната автоматизация, motion tracking-a и цялостното наблюдаване на представянето.
На последно място, но не по важност, е Solidity – обектно ориентираният език на Ethereum блокчейна, който е абсолютно необходим, ако търсите начин да интегрирате криптовалути, NFT и т.нар. smart договори в своя виртуален свят. Последните са ключови при изграждането на децентрализирани финансови екосистеми в рамките на повече от един Metaverse и чрез блокчейн позволяват сигурното запазване на информация, прозрачния обмен на NFT и елиминирането на необходимостта от посредници и трети лица в целия процес. Smart договорите са особено популярни в Decentraland и Axie Infinity и по всяка вероятност ще останат важна част от развитието на Web 3.0 като фундамент на Ethereum.
Хубаво допълнение към Solidity е и Rust, който бързо набира популярност в света на блокчейн програмирането и се превръща в стандарт за някои големи екосистеми като Solana. Това само по себе си е доста голяма работа, предвид че Solana е фаворит за изместване на Ethereum като основна платформа за децентрализираните апликации (dapps). Може би по-големият плюс (дори от психологическа гледна точка) е, че Solana измества легално-финансово звучащите smart договори на Ethereum и ги заменя с т.нар. програми, които се правят на C, C++ и Rust. Тези програми се пускат чрез Solana Runtime и остават там завинаги, подобно на начина, по който функционира Ethereum Virtual Machine (EVM). А на въпроса защо Solana работи точно с нетипичен език като Rust, най-добър отговор дава един от основателите на платформата, Анатоли Яковенко, който обяснява, че това е начинът да избегнат copy-paste код от съществуващи smart договори в други блокчейн проекти. Явно този подход наистина работи, защото преди около месец Meta започна да препоръчва на собствените си програмисти да боравят основно с Rust и C++.
Metaverse, макар още в своя зародиш като изпълнение, софтуер и технология, изглежда като истинската следваща стъпка в развитието на интернет комуникациите. Той със сигурност все още не е достигнал своята зрялост – повечето платформи нямат пълно припокриване, нямат взаимен обмен и съществуват като отделни светове – но рано или късно ще се превърнат в нова сфера на контакт, забавление, учене, а по-късно дори и в алтернативен подход при решаването на всекидневни проблеми. Дейности като пазаруване, плащане на сметки, посещаване на училище, работни срещи – всичко това ще може да се случва виртуално с помощта на Web3.0 и развития, споделен Metaverse на бъдещето. Несъмнено – една страхотна възможност в професионално и бизнес отношение.
Всичко това вероятно звучи една идея дистопично, но както често се случва по отношение на развитието на технологиите, всичко зависи от имплементацията. Web3 е демократизация на Web2 и това би трябвало да се разглежда единствено като положително развитие за нашите данни и сигурност онлайн. От нас зависи колко и докъде ще позволим иновацията да навлезе и отвъд света на информационните технологии.