Saturday, May 30, 2015

Visual Effects I



The video above was my submission for the first project in VEF I. It was my first time experimenting with rigid bodies and fields. We were to simulate a Rube Goldberg Machine using a combination of active and passive bodies throughout the project to make the simulation flow smoothly and accurate to how realistic objects would behave. 

Three types of constraints were implemented also: nail, hinge and spring. The nail can be found at the beginning of the video with the hammer. Hinges are in every object that rotates in one direction, such as the wheel (also active) that starts rotating when an active body (ball) falls on it. The spring is applied to the board that shoots another ball towards the casino wheel at the end of the video. In addition to this, I used several gravity fields and manipulated their magnitude and direction to get the desired outcome from the motion of the objects. 

All of this was introduced in class, along with an explanation and examples of the attributes found in rigid bodies. I researched further into the constraint and field types to understand them better.




In this project we were supposed to simulate three effects with particles and fields from a given list. I chose rain, fire and smoke. For the rain, I used three different surface emitters with particle type tubes and placed one right after the others to control the appearance and motion better. The first set of particles only had a uniform field applied to them while the other two had both uniform and turbulence in phaseY. 

For the fire, I used cloud particles on a directional emitter affected by a uniform, turbulence and a newton field. To get the motion, I used an expression in phaseY of the turbulence field that utilized sind and cosd, along with time. 

A similar expression was also used in the smoke, which had a turbulence, newton, uniform and radial field applied to it after the cloud particles were emitted from a surface emitter and had their rate randomized with an expression. The other wispy smoke effect was created with a directional emitter and tube particles with the same forces applied to it and the PhaseY expression, but with lower numbers. 

The textures for the effects were procedural and combined ramps with marble on the life color, life incandescence, life transparency and blob map on the attributes of a volumetric cloud material. 







The last project was a simulation using soft bodies. The cape is a dynamic chain composed of a simple rig with a joint chain in the middle, left side and right side of the geometry; which was a simple thin cube with quite the number of subdivisions to make the deformations look better. I bound the geometry to the joints and made a simple blend shape to simulate the cape being draped over the statue. 

Afterwards, I did IK Spline Handles on the 3 joint chains, leaving the first joint right at the top out of the equation so I could key the rig properly. I turned the curves created with the ikHandles into soft bodies and used the copies as the goals for the original soft body. The goal weight per particle was changed in a decreasing amount ending with 0.4 on the component editor and the object goal weight was set to a number between 0.45 and 0.6 depending on the location of soft body.

For the motion, I used gravity and turbulence and keyed them on different directions, phases and magnitudes. To make it fall I simply changed to fields to make it move to the side, then forward at the same time gravity was pulling it down. The rig was also keyed to reach the floor at an specific frame matching the timing of the fields. When the cape reached the ground, the goal weight was keyed to 0. 

The statue was easier as the geometry of the goals were provided for us. However, I took the liberty of altering the last goal mesh to make a few more. The original mesh was turned to a soft body and the following meshes for the goals were also. I set them up as goals for the start particles and keyed the goal weights in order at 48 frames intervals from 0 to 1, then keyed them all to 0 on the last frame except for the ending goal which was at a value of 1.

No comments:

Post a Comment