Saturday, 17 November 2012

Plateau’s Laws

I have recently been looking into some principles of physics known as “Plateau’s Laws”. These laws were introduced by Belgian physicist “Joseph Plateau”. These laws state the following:-

  • Three bubbles intersecting must always do so at angles of 120 degrees. These are known as “Plateau Borders”.

  • Each Plateau border intersects in fours at one point at approximately 109.47 degrees.

  • Soap film surfaces are entirely smooth.

  • The mean curvature of the soap film is constant on every part of the film.

I also found a blog on WordPress called “WeWantToLearn.net” which has an article discussing these laws and applying them within a program called “Grasshopper”. This is a graphical algorithm editor integrated inside another 3D program called “Rhino 3D”.

Sunday, 11 November 2012

Another Test (Take 2)

I have carried out the same test as before, but this time with a higher particle count. This was done by using a higher poly sphere. I decided to do this because after meshing the first one, I noticed that the mesh turned out a bit too blobby, which I didn’t feel looked good enough. Another thing I noticed was how the particles were being meshed. When I meshed the particles created by using the “Fill Object” command, it meshed around the particles. When I meshed the particles created at each vertex of the polygon sphere however, it not only meshed around the outside of the particles but also on the inside as well. This could pose a potential problem in terms of shading the bubbles. The reason being because of the fact that bubbles are of course transparent, which means that the inner mesh would be visible when rendered.



I also meshed the second attempt and I’m more pleased with the results of this one. However, I still need to play around with the output mesh attributes in Maya a little bit more.


Maya Bubble High Particle Count from Mickey Bowen on Vimeo.

Maya Bubble High Particle Count Meshed from Mickey Bowen on Vimeo.

Wednesday, 7 November 2012

Another Test

I have done another test in which I attempt to recreate the effect of a bubble bursting. The first step of this process involved the use of a Python script which was written last year as part of a class exercise for my Scripting for Animation module. This script takes a user specified piece of polygon geometry, looks at each vertex in turn, gets its position in world space and places an nParticle at each vertex. I ran this script on a polygon sphere in Maya, to recreate the objects form with nParticles.




Next, I created a gravity field and applied it to the particles, set its volume shape attribute to "Sphere" and positioned it around the particles. I then checked on the "Volume Exclusion" checkbox, so that gravity would only have effect on the particles outdie of the sphere volume. Finally, I created a radial filed, set its volume shape to "Cube" and key framed its translation and scale so that it moved through the particles causing them to scatter.



The final result can be seen in the video below:-



Maya Particle Bubble Burst Test from Mickey Bowen on Vimeo.

Sunday, 4 November 2012

Bursting Bubbles

I have been looking into how soap bubbles burst. I have discovered this is caused by a phenomenon called "Surface Tension". This is where a liquid surface has resistance against an external force. This is what gives a soap bubble its form. I have also researched into a principle called "LaPlace's Law". This law states that the larger the radius of the vessel (in this case being the soap bubble), the larger the surface tension needs to be to withstand the internal pressure.


I have also tested an idea for simulating the effects of a bubble bursting in Maya. I created a simple polygon sphere primitive, assigned it with a blue Blinn shader, assigned a black and white ramp node into the transparency attribute of the shader and animated the position of the colour sliders of the gradient.




Maya Bubble Burst Test from Mickey Bowen on Vimeo.

I found a video by a Vimeo user by the name of "Scubedio" in which a bubble bursting is simulated using Realflow 2012.

Soap_Bubble from scubedio on Vimeo.

Saturday, 27 October 2012

Further Research

I have continued to research into the subject of simulating soap bubbles. I have been looking at various technical papers from the SIGGRAPH (Special Interest Group in Computer Graphics) conferences, as well as from other sources. Some of these papers include:-


  • Computer Animation: Animation of Soap Bubble Dynamics, Cluster Formation and Collision - by Roman Durikovic (2005)
  • Simulation of Bubbles - SIGGRAPH - by Wen Zheng, Jun-Hai Yong & Jean-Claude Paul (2006)
  • Animating Bubble Interactions in a Liquid Foam - by Oleksiy Busaryev, Tamal K. Dey, Huamin Wang & Zhong Ren (2012)

I have also been studying a technical paper by a former BSc 3D Computer Animation student at Swansea Metropolitan by the name of James Clarke. For his Major Project, he was aiming to produce a similar tool to my idea. After reading his report, I discovered that although he intended to take his project further, he mainly focused on allowing the bubbles to merge together by experimenting with various methods. He stated at the end of the paper, what he would like to achieve with the tool in the future. Some of these future improvements include:-

  • The ability for the user to define where the bubbles are emitted from.
  • The ability for the user to specify an arbitrary piece of geometry to use as a bubble instead of just using a sphere.
I also have some ideas of my own which I would like to implement into my project. One of these ideas is to produce a shader which could imitate the appearance of photorealistic soap bubbles. Another area which I am interested in exploring is a feature withing Pixar's Renderman called "Blobbies". These are essentially a way of merging geometry together to create blobby surfaces in a similar way to how "Metaballs" work. Below is an example of Renderman Blobbies from a site called "Fundza":-


Wednesday, 17 October 2012

Bubble Research

I have decided to explore further into the bubble generator idea. I have also done some research into various areas related to bubbles, such as how they behave and how they look.
Firstly, I investigated the phenomenon known as "Thin Film Interference". This is where incident light rays reflect off a thin film material and also refracts through it and then reflect out again to form new colours. The example below is specific to a soap bubble:-



This will hopefully help when it comes to shading the bubbles.

I also found a user on YouTube by the name of "ICMStudios" who has developed a similar project to mine. Below are some videos of his tool in action:-





Wednesday, 10 October 2012

Ideas

I have started coming up with some potential ideas for my project. I will continue to post as I think of any new ones, but for now here are some of them:-

  1. Bubble Generator
  2. This tool would be designed to create random bubbles of all different shapes and sizes. This would involve researching into the way bubbles move, the way they look in terms of shading and lighting and how bubbles behave depending on the environment in which they inhabit. How do bubbles move differently underwater in contrast to how they would move in the air fo instance. Another thing to consider would be how they pop when they come into contact with some surfaces and not others and how they might split up into smaller bubbles when they pop. But possibly the two most challenging aspects of all to consider would be how the bubbles might grow when being blown from a hoop on a stick, for example and also how bubbles can merge with each-other and either get bigger or just become attached to one another.

  3. Balloon Tool
  4. This tool would procedurally model balloons and strings which would attach the balloons to any given object and allow them to carry the object as they float in the air. The more balloons that the user would specify, the the stronger effect it would have on lifting the object. The user could also control the size and the mass of each balloon and also how much helium each balloon has or how much it's affected by the gravity of the dynamics solver. One challenging aspect of this would be how to prevent the balloon geometry from clashing with each-other. Another challenge would be how to connect the balloons with the object to be lifted. A third challenge might be how to procedurally model each balloon to look a balloon. The tool could also give each ballon a random colour by assigning random shaders of different colours to the balloon geometry.

    This idea was partly inspired by the scene from Disney Pixar's "Up" (2009), where the main character Carl uses several balloons in order to make his house fly away.

  5. Laser Tool
  6. This tool would generate laser effects from stage and disco laser lighting to sci-fi ray-guns and blasters. It would allow the user to control how the laser looks, for example the length, width, colour and distortion of the beam. Also the ability to fire a beam at a particular target.

Tuesday, 2 October 2012

Introduction

Welcome to my Final Major Project blog. Here I will be posting various ideas and updates on the progress of my 3rd year BSc 3D Computer Animation final project at Swansea Metropolitan University. The aim of this project is to develop a plugin (a software tool or feature within an already existing piece of software) to be used in a particular visual effects program, in order to bring extra functionality into it. The visual effects software which this plugin could potentially be used for include:-