Embracing the Cloud
Effects:
Theme:
• The primary theme of my independent study project is to narrow the distance between human beings and clouds, where clouds represent something charming and romantic but tender and remote to us. The object of the project is to generate a cloud by computer programs in the virtual 3D world and allow the audience to interact with it through virtual reality equipment.
• The inspiration came from my hobby and habit too that watching clouds in my spare time. Their flowing and odd shapes could relax me and stimulate my imagination. Especially in the twilight, clouds react to the colorful sunset and appear like burning itself or blooming itself over the giant canvas of the sky, which has been recorded and praised in countless artworks.
Anticipation:
The primary expected outcome of the project is that the computer program could model a realistic cloud attached with its border parameters in a 3D virtual surrounding, while the audience could touch and even embrace the cloud to make it move or dissipate with wearable devices. The generation should be computed with as less cost as well to enhance efficiency. The cloud could react to the transformation of the light, including color and direction. The VR devices could recognize the cloud in the virtual world and compare its edges. The spay sensor could import the position of the gloves and the cloud and control the spray to react to the gloves. The plot criteria of the cloud are the speed of audience movement: when they move their hands slowly and smoothly, the cloud will move slightly according to hands; otherwise, it would dissipate as the audience is too cruel.
Research:
1. Use MatCap to sample pre-stored lighting
MatCap uses spherical lighting textures that store different normal directions in the view space. The texture is directly sampled when calculating the lighting. The calculation efficiency is high, but it has its limitations. It can only be applied to a single-material model, and the light source location And respond to changes in camera position. The basic idea of MatCap Shader is to use the texture of a specific shader as the view-space environment map of the current material to achieve the display of reflective material objects with uniform surface shading. Considering that the range of the projection of all the normals of the object is x (-1,1), y (-1,1), it forms a circle, so the area where the lighting information is stored in the MatCap map is a circle.
2. Cloud sequence changes using particle sequence playback
3. Use Leap Motion to enable interaction
• Interactive objects need to add a rigid body (Rigid body) and at least one collider (Collider).
• The Interaction Manager receives FixedUpdata from the unity and processes it into the internal logic of the interaction, including updating hand and controller data and interaction object data (at least one of the interaction objects is required to run in the scene).
• Interaction Controllers do the actual content with all interaction objects (whether by picking them up, touching them, hitting them, or just being near them).
• Use Physics objects
• Custom layers for interactive objects
• Writing custom behavior for interactive objects
• Defining custom interaction behavior
Outcome:
• The program is able to generate a piece of cloud that could react to the sunlight and the angle of camera. When the audience watch the cloud from different perspective, the appearance of it would also be dynamic just like in the realistic world. In the meanwhile, the shape of the cloud will change for some part of it diffuses and other condenses as time pass by.
• When the audience stand before the screen and held out hands. The leap motion will recognize the hands and show their avatars on the screen that do the same action as real hands. The cloud is supposed to be embraced carefully, otherwise it may fly away.