simulation and rendering of liquid foams hendrik kück (ubc, vancouver) christian vogelgsang (fau...

24
Simulation and Rendering of Liquid Foams Hendrik Kück (UBC, Vancouver) Christian Vogelgsang (FAU Erlangen, Germany) Günther Greiner (FAU Erlangen, Germany) Graphics Interface 2002

Post on 19-Dec-2015

218 views

Category:

Documents


0 download

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

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