Loop is a digital, gamelike experience that lets the user explore, deconstruct and alter its virtual worlds as he moves through them. The game’s goal is to manipulate the game experience, its side effect is that the player learns about the basics of programming.
The game is being played with an Oculus Rift, an attached Leap motion sensor, and a mechanic treadmill. As the user walks through the virtual world, he will be confronted with scenes and surroundings that are (sometimes more, sometimes less) referencing real objects and sceneries in the form of system simulations. By raising his hand and grabbing »code objects«, he can interact with the world as he changes pieces of code the simulations run on.
On a conceptual level, the game can be seen as a tool for editing digital worlds, with the code editor and compiler accessible directly from within the virtual experience.
Each scenery focuses on a topic that is being used in object-oriented programming and for the creation of simulation systems: arrays and for-loops, flocking behavior and l-systems. Using the »code tools« given, the player can let plants and geometrical forms grow, make walls move in sine waves and manipulate the movement of bird flocks. The experience lets him gain an understanding for the semantics of code in general and the techniques used to build virtual worlds.
In Loop, code is not being written, but put together by using hand gestures. Number values can be changed with a slide gesture, formulas can be assembled by dragging and dropping elements like building blocks. This gameflow has been designed to also appeal to an audience that is not familiar with coding at all, yet it offers enough flexibility to offer a huge amount of ways to play with code.
With the progression of computer graphics and the increasing immersion through hardware like the Oculus Rift, the line between our perception of »real« and »virtual« worlds blurs more and more. As humans get used to more advanced information technologies (including games and entertainment software) and regarding the ongoing discussions about privacy concerns, surveillance, and losing self-control of their digital lifes, what they need is some sort of digital sovereignty, a maturity as to these technologies.
Loop is an attempt to connect the audience of games to the bare substance of digital game design: the code, i.e. the ruleset of a game can be changed and therefore be understood and deconstructed. The game, defined by its rules, can be transformed into something else. On the other hand, it raises questions as to what a game is in the first place – there is no defined target, no obstacles or enemies, and at the end of the game, you start right at the beginning. The underlying ruleset only defines the visual presence of the landscape. So the game is being created by the player’s experience only. Altering the various rulesets of the game he can change this experience.
The title Loop hints to the programming method used in most timed-based simulations: the loop (or update, or draw) function that is called once every frame the program is running. This method is mainly what creates the illusion of movement, liveliness or reaction to user input. It is what differs the experience of an interactive simulation or a video game from a static image. Not least I choose the title in honor of the Processing IDE, the creative coding toolkit I learned programming with.
Loop also refers to the one-dimensional movement on the treadmill (which also alludes to classic side-scroller arcade games): there is no defined end of the game. You will always end up where you started. This linear movement relates to the linear sign language of code. The linearity is being broken where the player starts to interact and alter his experience (from which moment on, the game can go in thousands of possible directions). This points to the fascinating fact that code as a linear medium can create non-linear products and experiences, once compiled.
Still in its infancy, virtual reality has not yet obtained any best practices when it comes to art work and level design. With Loop, I approached the design to be overall bright and positive, with many references to nature. The play between free, open spaces and narrow rooms and passages (which of course, can be removed by changing their code) hints at the often anti-utopic worlds, obstacles and tension-filled sceneries of video games and their apparent (or even pretended) necessity to create atmosphere. The colored code pieces that can be collected with a grabbing gesture add a touch of point-rewarding arcade games to the mix. The code interface itself is more technical-looking and refers to science-fiction artwork. This style is intended to add the impression of a device connected to the world surrounding the player, a futuristic machine allowing to change the structure of space and time.
Loop has been developed using the Unity game engine and the respective Oculus Rift as well as Leap Motion SDKs. To generate most of the background sceneries, I used the Terragen render engine. All footage you can see in the video documentation (except for the intro and outro and the »real-world« footage) was recorded from within the game. For the installation, the Rift Developer Kit 2 was used. For the setup during the video documentation, I obviously removed / hid the camera for positional tracking as well as the pc hardware. Fun fact, for tracking the treadmill movement, I used a gaming mouse:
Though it would need some adjustments and refinements to make this possible, in case I get an ample amount of feedback, I’d be very willing and happy to release Loop as a game to the public. If you want this to happen, please don’t hesitate to contact me.
Loop was the practical installment of my master thesis on “the possibilities of connecting game-related elements to information design” at University of Applied Sciences, Würzburg, faculty of design. My master thesis, including Loop, was supervised by Professor Erich Schöls and Dr. Christian Bauer.
My thanks go to Lucas Dittebrand who created all the sounds and ambient music for the game, to Christoph Kirchner for filming the documentation »real-world« footage, as well as to Sandra Beckstein for all her support.