Keyframe Control of Smoke Simulations SIGGRAPH 2003.

Post on 21-Dec-2015

222 views 3 download

Tags:

Transcript of Keyframe Control of Smoke Simulations SIGGRAPH 2003.

Keyframe Control of SKeyframe Control of Smoke Simulationsmoke Simulations

SIGGRAPH 2003SIGGRAPH 2003

OverviewOverview

► IntroductionIntroduction►Basis equationBasis equation►Proposed methodProposed method►ResultsResults►Future workFuture work

IntroductionIntroduction

►Goal:Goal: Control of smoke simulationControl of smoke simulation

►DifficultiesDifficulties ComplexityComplexity Non-linearityNon-linearity

►Proposed method:Proposed method: Control the simulation by given density Control the simulation by given density

and velocityand velocity

Basis EquationsBasis Equations

►Navier-Stoke Equation:Navier-Stoke Equation:

Velocity diffusionVelocity advection

External forces

Smoke density advection

General procedureGeneral procedure

)(0 xw )(1 xw )(2 xw

)(3 xw)(4 xw

Add force Advect

Diffuse

Project

FrameworkFramework

► State consists of State consists of of densitiesof densities of velocity vectorof velocity vector

► Initial state:Initial state:

► State at time t:State at time t:

► Simulation: Simulation:

v

0q

ControlControl

► A set of keyframes that the smoke should achiA set of keyframes that the smoke should achieveeve

Specifies the density should match at timSpecifies the density should match at time te t

Specifies the constraint on Specifies the constraint on

► A set of parameterized forcesA set of parameterized forces Amount/directionAmount/direction

t

*tv tv

*t

Matching KeyframesMatching Keyframes► GoalGoal

Match the user-specified keyframeMatch the user-specified keyframe

Use as little force as possibleUse as little force as possible

Solve for the Solve for the equationequation

Computing DerivativesComputing Derivatives

►Calculating derivatives by simulating the Calculating derivatives by simulating the entire process in a space consisting ofentire process in a space consisting of A density and velocity fieldA density and velocity field Their derivativesTheir derivatives

► Initial state:Initial state:►State at time t:State at time t:

Computing DerivativesComputing Derivatives

► Standard solver process:Standard solver process:

Mass preservation stepMass preservation step Advects the smoke densityAdvects the smoke density Projects the resulting fieldProjects the resulting field Performs diffusionPerforms diffusion Advects the velocityAdvects the velocity External forcesExternal forces

M

DP

FvA

A

Calculating S

Computing DerivativesComputing Derivatives

►CalculatingCalculating Each operation induces a operationEach operation induces a operation Ex: Ex:

And similarly forAnd similarly for

Therefore, Therefore,

DerivativesDerivatives

►ProjectionProjection

►Diffusion Diffusion

DerivativesDerivatives

►AdvectionAdvection

DerivativesDerivatives

►Mass PreservationMass Preservation

►ForcesForces

Control ParametersControl Parameters

►Two types:Two types:

Wind forces Vortex forces

Wind forcesWind forces

►A single control vector scaled by a A single control vector scaled by a Gaussian falloff functionGaussian falloff function

►DerivativeDerivative

Vortex ForcesVortex Forces

►Using Gaussian falloff approachUsing Gaussian falloff approach

►DerivativesDerivatives

Objective FunctionObjective Function

►SmoothnessSmoothness

DerivativesDerivatives

Objective functionObjective function

►Keyframe-matchingKeyframe-matching Straightforward methodStraightforward method

Proposed methodProposed method

DerivativesDerivatives

ResultsResults

Future WorkFuture Work

►Drawbacks:Drawbacks: Computationally prohibitive with fine-grained Computationally prohibitive with fine-grained

controlcontrol Optimization might be caught in local minimuOptimization might be caught in local minimu

mm

►To paradigms other than keyframesTo paradigms other than keyframes