In recent years, the interest in Augmented Reality (AR) applications for entertainment and productivity has grown. One company exploring this technology is LAZER WOLF STUDIOS, the developers behind Thrymd: an AR-driven board games platform powered by the Unity engine. This paper details the development of a visual scripting framework, meant to provide end users with a means of developing their own games for the platform, without significant programming or background knowledge required. A graph-based visual language was implemented in a custom Unity editor window, in order to maintain a familiar and consistent feel for users. The graph consists of a series of branching, interconnected nodes which pass data in-between each other, and execute in succession. The graph is serialized as a Unity asset, and can easily be interacted with through regular C# scripts. A small number of nodes were implemented, but for the system to be viable, more are needed. For that reason, extensibility was a core ideal; creating new node types must be fast and painless. As with any script layer, performance is generally worse than compiled code. Further work is needed to improve user experience. / Intresset för användandet av Augmenterad Verklighet (AR) för underhållning och produktivitetssyften har ökat på senare tid. LAZER WOLF STUDIOS är utvecklarna bakom Thrymd, en AR-driven brädspelsplattform byggd i spelmotorn Unity. Denna rapport dokumenterar utvecklingsprocessen av ett visuellt skriptramverk byggt med avsikt att låta slutanvändare utveckla sina egna spel till plattformen utan större förkunskapskrav. Ett graf-baserat visuellt skriptspråk implementerades i en skräddarsydd editormiljö inuti Unity, för att bibehålla en bekant och konsekvent användarupplevelse. Grafen består av en serie förgrenande, sammankopplade noder som skickar data mellan varann och exekveras i sekvens. Grafen sparas som en resurs på hårddisken och är lätt att interagera med genom traditionella C#-skript i Unity. Ett mindre antal noder implementerades, men fler krävs för att systemet ska vara brukbart. Av detta skäl designades språket med vidareutveckling i åtanke, då det måste vara enkelt att skapa nya noder. Som med de flesta skriptspråk är prestandan överlag sämre än kompilerad kod. Ytterligare arbete krävs för att förbättra användarupplevelsen.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:ltu-86071 |
Date | January 2021 |
Creators | Lind, Fredrik |
Publisher | Luleå tekniska universitet, Datavetenskap |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | Swedish |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0021 seconds