Programmer
CMU Entertainment Technology Center
1 month : 2018/11
Team of 5
Programming (Unity, C#, Shader)
“Oddly Satisfying” is project from "Building Virtual World" course at Entertainment Technology Center, Carnegie Mellon University. "Oddly Satisfying" was exhibited at ETC Festival 2018 as a selected work. This work is a unique audio-visual art crafting experience in CAVE (3 walls surrounded immersive space) with Vive controllers.
#CAVE #HTC_Vive
#Immersive_Space #Media_Art
#Shader_Programming
Oddly Satisfying is an audio-visual experience designed for CAVE (an immersive virtual reality environment with surround three walls). Following the steps starting from simple designing choices to 3D drawing phase, guests go through unique art-crafting experience that is meditative yet creative. Even for those who do not feel confident in art crafting, Oddly Satisfying can give visually appealing final results for everyone. Sculting and painting in 3 dimensional space is a unique experience that brings 2D physical action into virtual space.
"CAVE" is an immersive space where three projected screens can surround a number of people to provide immersive experience . HTC Vive Controllers are tracked through lighthouse and enables guests to explore 3D space.
Utilizing the strength of CAVE , unique space transitions have been designed : opening up the new space, horizontal and vertical movements, and rotation of the space. These transitions invite guest into the atmosphere of the world and que the next phase of creative activity.
The most technologically challenging part in implementation was the sculpting . The team tried to deliver freedom to the guest to change the shape of the object. At the beginning stage, lot of tests have been done, such as generatively creating shape, morphing the shape, and creating liquidy blob shapes with sub points. However, in order to run this experience in CAVE, which requires at least 4 displays rendering at the same time, these options were too heavy in calculation.
The solution we ended up was to give optical illusion or morphing with displacement map . With the custom shader, grayscale pixel values of displcement texture correlates to the height of each points in the sphere object. Mapping 2D UV texture into sphere shape was another challenging part.
In order to morph the shape in real time, the collision contact points with the guest's controller interface are calculated and bumps out smoothly around the contact points. Circular areas around the contact points bump out . Although there is more possibility for much smoother morphing, such as calculating the whole map with gaussian blur, heavy calculations were intentionally elimiated from options.
What satisfies the guest the most is that every single guest creates the work different from each other. As guest walk around in the exhibition space, he/she can draw particle trails with the controller in 3D space. In order to intensify the depth and 3 dimensional effectively, the object rotates around on its own.