simulation and rendering of liquid foams hendrik kück (ubc, vancouver) christian vogelgsang (fau...
Post on 19-Dec-2015
218 views
TRANSCRIPT
Simulation and Rendering of Liquid FoamsHendrik Kück (UBC, Vancouver)Christian Vogelgsang (FAU Erlangen, Germany) Günther Greiner (FAU Erlangen, Germany)
Graphics Interface 2002
MotivationMotivation
• Liquid foams can be found in many places in the real world
• Very difficult / impossible to recreate using standard techniques• extremely complex microscopic
structures • unique optical properties• complex dynamic behaviour
• Liquid foams can be found in many places in the real world
• Very difficult / impossible to recreate using standard techniques• extremely complex microscopic
structures • unique optical properties• complex dynamic behaviour
GoalsGoals
• Visually convincing simulation and rendering of liquid foams• Not: Physically accurate• But: Efficient
• Interaction with external objects• Integration into existing raytracing
systems
• Visually convincing simulation and rendering of liquid foams• Not: Physically accurate• But: Efficient
• Interaction with external objects• Integration into existing raytracing
systems
OutlineOutline
• Structure and dynamics of liquid foams
• Previous work• Simulation of foam dynamics• Shading• Results• Future Work
• Structure and dynamics of liquid foams
• Previous work• Simulation of foam dynamics• Shading• Results• Future Work
Structure of liquid foamsStructure of liquid foams
Plateauborders
LiquidFilms
Plateau bordercross section
Dynamics of liquid foamsDynamics of liquid foams
• Viscoelastic, can behave like• Solids (elastic deformation)• Fluids (viscous flow)
• Film rupture• Rising bubbles
• Viscoelastic, can behave like• Solids (elastic deformation)• Fluids (viscous flow)
• Film rupture• Rising bubbles
• Physics• Durian, 1995
2D foam dynamics
• Physics• Durian, 1995
2D foam dynamics
Previous workPrevious work
• Computer Graphics• Almgren & Sullivan, 1993
Surface Evolver, Interference Colours
• Icart & Arquès, 1999‚2D‘ foam, Interference colours
• Glassner, 2000Soap bubbles, Interference colours
• Durikovic, 2000Soap bubble dynamics,Mass-spring-damper system
• Computer Graphics• Almgren & Sullivan, 1993
Surface Evolver, Interference Colours
• Icart & Arquès, 1999‚2D‘ foam, Interference colours
• Glassner, 2000Soap bubbles, Interference colours
• Durikovic, 2000Soap bubble dynamics,Mass-spring-damper system
General approachGeneral approach
• Use simple model in simulation step
• Fixed size spheres• No explicit computation
of foam micro geometry• Forces acting on spheres• Output sphere geometry
• In ray-tracing step• Reconstruct liquid films
and Plateau borders• Use appropriate shading
models
• Use simple model in simulation step
• Fixed size spheres• No explicit computation
of foam micro geometry• Forces acting on spheres• Output sphere geometry
• In ray-tracing step• Reconstruct liquid films
and Plateau borders• Use appropriate shading
models
Bubble Bubble ForcesBubble Bubble Forces
• Soap films minimize surface area due to surface tension
• Soap films minimize surface area due to surface tension
Bubble Bubble ForcesBubble Bubble Forces
• Soap films minimize surface area due to surface tension
• Soap films minimize surface area due to surface tension
Bubble Bubble ForcesBubble Bubble Forces
• Soap films minimize surface area due to surface tension
• Soap films minimize surface area due to surface tension
Bubble Bubble ForcesBubble Bubble Forces
• Soap films minimize surface area due to surface tension
• Soap films minimize surface area due to surface tension
120°
Bubble Bubble ForcesBubble Bubble Forces
• Model with 2 spring forces per pair of overlapping spheres• Attractive force• Repulsive force
• Model with 2 spring forces per pair of overlapping spheres• Attractive force• Repulsive force
SimulationSimulation
• Forces acting on spheres due to • Contact with other spheres/bubbles• Viscosity • Air resistance• Gravity• Contact with external objects
• Assumption: Bubbles have no mass Forces have to add up to 0 for each bubble• Results in 1. order ODE system
• Forces acting on spheres due to • Contact with other spheres/bubbles• Viscosity • Air resistance• Gravity• Contact with external objects
• Assumption: Bubbles have no mass Forces have to add up to 0 for each bubble• Results in 1. order ODE system
SimulationSimulation
• Start with randomly generated bubbles • Initial simulation to get a stable
configuration• For each animation frame
• Randomly add/remove spheres• Numerical integration to compute sphere
positions for that point in time• Generate sphere geometry
• Flatten spheres at external objects
• Start with randomly generated bubbles • Initial simulation to get a stable
configuration• For each animation frame
• Randomly add/remove spheres• Numerical integration to compute sphere
positions for that point in time• Generate sphere geometry
• Flatten spheres at external objects
RenderingRendering
• Special shader
• Invoked at every ray/sphere intersection• Has to
• Decide if intersection corresponds to Plateau border or liquid film
• Perform shading using corresponding shading model
• Special shader
• Invoked at every ray/sphere intersection• Has to
• Decide if intersection corresponds to Plateau border or liquid film
• Perform shading using corresponding shading model
Shading model selectionShading model selection
• Base decision on the order in which the ray enters and leaves spheres
• Shading only for some intersections
• Approximate separating films by averaging of adjacent intersections
• Base decision on the order in which the ray enters and leaves spheres
• Shading only for some intersections
• Approximate separating films by averaging of adjacent intersections
Bubble 1Bubble 2
• 2 different cases• Overlap of 3 spheres• Empty space between spheres
• 2 different cases• Overlap of 3 spheres• Empty space between spheres
Plateau BordersPlateau Borders
Liquid Film Shading Liquid Film Shading
• Fresnel reflection• (Interference
Effects)
• Fresnel reflection• (Interference
Effects)
Plateau Border ShadingPlateau Border Shading
• High curvature• Refraction & total
reflection randomize light direction
• Our shading model• Simple light diffusion
approximation (multiple scattering)
• Single scattering
• High curvature• Refraction & total
reflection randomize light direction
• Our shading model• Simple light diffusion
approximation (multiple scattering)
• Single scattering
ResultsResults
• Implemented for Mental Ray® as combination of geometry shader and material shader
• Implemented for Mental Ray® as combination of geometry shader and material shader
Resolution: 800x630 ~700 bubbles
~4 s. simulation 40 s. rendering
Future workFuture work
• Improve shading models• Interference effects• Simulation of multiple scattering
• Level of detail approach• Efficient simulation and rendering of
arbitrary dense foams at arbitrary scale
• Improve shading models• Interference effects• Simulation of multiple scattering
• Level of detail approach• Efficient simulation and rendering of
arbitrary dense foams at arbitrary scale
QuestionsQuestions
AcknowledgementsThis project was supported by Animation/VFX (SZM Studios, Munich, Germany)
Special thanks to Horst Hadler and Michael Kellner
AcknowledgementsThis project was supported by Animation/VFX (SZM Studios, Munich, Germany)
Special thanks to Horst Hadler and Michael Kellner