Architects and designers have long valued the pen and paper as their foremost design tools. Hand sketching produces immediate results for communication, testing, iteration, and idea generation. Physical models have also played a primary role in the process of conceptual design validation and formal experimentation. The hands’ capability for fine motor control and direct linkage to the brain allows for an unhindered flow of conceptual brainstorming and creative expression. The introduction of CAD softwares has changed the design process landscape in regards to physical interaction with the end product. The mouse and screen have now become the dominant instruments for architectural design. By requiring a fixed bodily position and minimal physical engagement, these tools limit the potential for intuitive emotional response and tactile creative ability.
Many Architecture firms still rely upon the production of scale models throughout the design process, but others have turned away from this methodology due to the economics of time, labor, materials, and equipment, in favor of a purely digital workflow. Archiverse aims to bridge the gap between the traditional analog and current digital processes by creating an immersive, interactive design tool for generating architectural sketch, concept, and program massing studies. A user can manipulate virtual program objects with their hands and interact with compositions within a digital project site. These studies can then be explored through a VR headset in a navigable world from different viewpoints, scales, and environmental conditions, providing the designer with deeper insights and greater capacity for iteration.
Archiverse is built within Unity3d which allows for the integration of many different components including output to Oculus Rift, input from the Leap Motion hand recognition controller, Arduino sensor input and outputs, and server networking. Unity provides powerful real time rendering capabilities that are able to approximate lighting conditions, reflections, materials and facilitates the creation of procedural meshes (in the form of the sketch). The Leap Motion is used to accurately track the position of fingers in 3d space which results in a seamless and natural interaction with the virtual environment. Arduino powers a custom-built foot controller for hands free navigation along with a coin cell vibration motor that attaches to the index finger for haptic tactile feedback. The foot controller has two buttons per foot that work in concert to move forward, backwards, up, down, and rotate left or right. The vibration motor is triggered upon touching user interface components, picking up virtual objects, sculpting objects, and sketching. Additional features include the ability to save screenshots and the mesh file which can be opened in other programs such as Rhino to facilitate a functional 3d pipeline.
The starting point for this investigation was the architectural design process, but the tools and virtual environment can apply to many different design disciplines. Along with numerous digital creation features, Archiverse also allows for real time collaboration between multiple individuals. The participants may be colleagues, who are able to modify and adjust each other’s design decisions, or a client who can observe the design creation process in complete immersion. The user interface and experience is built to be natural and intuitive and the end user may not be a “designer” in the professional sense, but anyone is now able to express creativity in a free flowing manner that traditional 3d modeling softwares may inhibit. The ambition is that Archiverse will then also be able to help democratize design and encourage the current and next generation of potential designers to Architect their own or collective universe.
Part of the project research involved interfacing between Unity and Arduino. I created an Arduino based foot controller and finger vibration apparatus to both resolve the problem of hands free navigation in virtual reality as well as generate tactile feedback during interaction with virtual elements. The Arduino sends serial commands from four buttons placed in a pair of slippers which are mapped to control forward, backwards, up, down, and left/right rotation. The Arduino also recieves serial input from Unity and switches a small coin cell vibration motor to buzz when certain actions are triggered such as touching a virtual button, moving an object, or sculpting an object.
Oculus Rift has recently implemented a threshold for the performance level of graphics card necessary to run their hardware. My laptop was not powerful enough so this led my intial investigation towards the use of a cardboard viewer used with a smartphone. Using a free third party application TrinusVR allowed for wireless streaming of my Unity build to a smartphone and makes use of the phone's positional sensors to imitate the Rift's rotational tracking. While functional, the experience was far from ideal and I ultimately ended up buying a new desktop computer to run the Rift, partially funded by the MDes Final Project Research & Development Award.