Prepare video!!!
description
Transcript of Prepare video!!!
![Page 1: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/1.jpg)
Prepare video!!!Prepare video!!!
![Page 2: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/2.jpg)
Simulation of SmokeSimulation of Smokebased on based on
Vortex Filament PrimitivesVortex Filament PrimitivesAlexis AngelidisAlexis Angelidis
Graphics & Vision Research LabGraphics & Vision Research Lab
Otago - New ZealandOtago - New Zealand
Fabrice NeyretFabrice NeyretGRAVIR / IMAG - INRIAGRAVIR / IMAG - INRIA
Grenoble - FranceGrenoble - France
![Page 3: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/3.jpg)
Tangled-SpaghettisTangled-SpaghettisAlexis AngelidisAlexis Angelidis
Graphics & Vision Research LabGraphics & Vision Research Lab
Otago - New ZealandOtago - New Zealand
Fabrice NeyretFabrice NeyretGRAVIR / IMAG - INRIAGRAVIR / IMAG - INRIA
Grenoble - FranceGrenoble - France
![Page 4: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/4.jpg)
BackgroundBackgroundBackgroundBackgroundFluid animation approaches: Fluid animation approaches: Lagrangian vs EulerianLagrangian vs Eulerian
![Page 5: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/5.jpg)
Popular: Eulerian velocity gridPopular: Eulerian velocity grid
Fluid animation approaches: Fluid animation approaches: Lagrangian vs EulerianLagrangian vs Eulerian
BackgroundBackgroundBackgroundBackground
[McNamara et al.04][McNamara et al.04] [Fattal et al.04][Fattal et al.04][Fedkiw et al.01][Fedkiw et al.01] [Pighin et al.04][Pighin et al.04]
![Page 6: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/6.jpg)
A.A. Velocity grid Velocity grid B.B. Update rules Update rules
ijkv
0
1
)( 2
v
gvvvv
p
t
0
1
)( 2
v
gvvvv
p
t
Fluid animation approaches: Fluid animation approaches: Lagrangian vs EulerianLagrangian vs Eulerian
Popular: Eulerian velocity gridPopular: Eulerian velocity grid
BackgroundBackgroundBackgroundBackground
[McNamara et al.04][McNamara et al.04] [Fattal et al.04][Fattal et al.04][Fedkiw et al.01][Fedkiw et al.01] [Pighin et al.04][Pighin et al.04]
![Page 7: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/7.jpg)
One Alternative – Vortex MethodsOne Alternative – Vortex Methodsvelocityvelocity vs. vorticityvs. vorticity
One Alternative – Vortex MethodsOne Alternative – Vortex Methodsvelocityvelocity vs. vorticityvs. vorticity
vω vω CurlCurl
vorticity vorticity vorticity vorticity velocity vvelocity vvelocity vvelocity v
vωω
)( dt
dvω
ω)(
dt
d
0
1)(
v
vvv
pt
0
1)(
v
vvv
pt
![Page 8: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/8.jpg)
One Alternative – Vortex MethodsOne Alternative – Vortex Methodsvelocityvelocity vs. vorticityvs. vorticity
One Alternative – Vortex MethodsOne Alternative – Vortex Methodsvelocityvelocity vs. vorticityvs. vorticity
vω vω CurlCurl
vorticity vorticity vorticity vorticity velocity vvelocity vvelocity vvelocity v
vωω
)( dt
dvω
ω)(
dt
d
vv
0
1)(
v
vvv
pt
0
1)(
v
vvv
pt
![Page 9: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/9.jpg)
One Alternative – Vortex MethodsOne Alternative – Vortex Methodsvelocityvelocity vs. vorticityvs. vorticity
One Alternative – Vortex MethodsOne Alternative – Vortex Methodsvelocityvelocity vs. vorticityvs. vorticity
vω vω
dx
xp
xpv 3
4
)(
dx
xp
xpv 3
4
)(
CurlCurl
vorticity vorticity vorticity vorticity velocity vvelocity vvelocity vvelocity v
vωω
)( dt
dvω
ω)(
dt
d
0
1)(
v
vvv
pt
0
1)(
v
vvv
pt
BIOT-SAVARTBIOT-SAVART
![Page 10: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/10.jpg)
One Alternative – Vortex MethodsOne Alternative – Vortex MethodsOne Alternative – Vortex MethodsOne Alternative – Vortex Methods
What’s induced by these curves?What’s induced by these curves?What’s induced by these curves?What’s induced by these curves?
dxxp
xpv
3
4
)(
dxxp
xpv
3
4
)(
BIOT-SAVARTBIOT-SAVART
Fluid described with curvesFluid described with curvesFluid described with curvesFluid described with curves
Fine simulationsFine simulations• FilamentsFilaments• FeaturesFeatures
![Page 11: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/11.jpg)
dxv
dxv
BIOT-SAVARTBIOT-SAVART
Geometric InterpretationGeometric InterpretationGeometric InterpretationGeometric Interpretation
34
)(
xp
xp
34
)(
xp
xp
![Page 12: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/12.jpg)
dxv
dxv
BIOT-SAVARTBIOT-SAVART
)()(
xppfVORTEX
)()(
xppfVORTEX
VortexVortex
Geometric InterpretationGeometric InterpretationGeometric InterpretationGeometric Interpretation
34 xp 34 xp
34
)(
xp
xp
34
)(
xp
xp
![Page 13: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/13.jpg)
34
1
xp 34
1
xp
dxv
dxv
BIOT-SAVARTBIOT-SAVART
)()(
xppfVORTEX
)()(
xppfVORTEX
VortexVortex
Rotation magnitudeRotation magnitude
Geometric InterpretationGeometric InterpretationGeometric InterpretationGeometric Interpretation
34 xp 34 xp
34
)(
xp
xp
34
)(
xp
xp
![Page 14: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/14.jpg)
Lagrangian Vortex MethodsLagrangian Vortex MethodsLagrangian Vortex MethodsLagrangian Vortex Methods
CC00
CC22
CC33
• Entire fluid = curves of vortices !Entire fluid = curves of vortices !
DynamicsDynamics
• Curves induce movement Curves induce movement
• Curves are animated with this movementCurves are animated with this movement
CC11
ConsequenceConsequence• Cheap storageCheap storage• Dynamic-keyframed curveDynamic-keyframed curve
![Page 15: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/15.jpg)
VideoVideo#2-5#2-5
VideoVideo#2-5#2-5
![Page 16: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/16.jpg)
dxv
dxv
BIOT-SAVARTBIOT-SAVART
Geometric InterpretationGeometric InterpretationGeometric InterpretationGeometric Interpretation
34
)(
xp
xp
34
)(
xp
xp
• EfficiencyEfficiency• stable vortex + noisestable vortex + noise• closed-form integralclosed-form integral• O(O(NN22)), accelerated with LOD, accelerated with LOD• time integrationtime integration
• Define smoke particlesDefine smoke particles
ContributionsContributionsContributionsContributions
![Page 17: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/17.jpg)
Sum of vortices along curvesSum of vortices along curvesSum of vortices along curvesSum of vortices along curvesA more convenient amplitudeA more convenient amplitude
Biot-SavartBiot-Savart CauchyCauchy
There are There are closed-formsclosed-forms for the Cauchy kernel for the Cauchy kernel integral along a integral along a circlecircle and a and a segmentsegment
3 4
1
d 3 4
1
d )/1(
122 rd )/1(
122 rd
Discrete segmentsDiscrete segments
[MS.98][MS.98]
![Page 18: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/18.jpg)
Large time steps: high order schemeLarge time steps: high order schemeLarge time steps: high order schemeLarge time steps: high order scheme
• Traditional forward Euler , BSTraditional forward Euler , BStrajectory = sum of velocities of rotationtrajectory = sum of velocities of rotation
• Biot-Savart tells more than velocityBiot-Savart tells more than velocity
• Our schemeOur schemetrajectory = sum of Rotationtrajectory = sum of Rotation
![Page 19: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/19.jpg)
Levels of detailLevels of detailLevels of detailLevels of detail
• We define a bound to the error We define a bound to the error between a segment and split segmentsbetween a segment and split segments
• We precompute a binary tree for each filamentWe precompute a binary tree for each filament
Too detailedToo detailed Too coarseToo coarseAlrightAlright
ppqq
pp
ijkLODijkLOD
![Page 20: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/20.jpg)
• 3 types of noise vortices :3 types of noise vortices :– Tangent vortexTangent vortex
– Normal vortexNormal vortex
– Binormal vortexBinormal vortex
Divergence-free NoiseDivergence-free NoiseDivergence-free NoiseDivergence-free Noise
tt J' tt J'
nn 1 ' JT nn 1 ' JT
)()(' 1 ntb JJ T )()(' 1 ntb JJ T
Good distribution Good distribution of directionsof directions
Noise
FilamentsSmoke
![Page 21: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/21.jpg)
SmokeSmokeSmokeSmoke• ParticlesParticles
– accumulate deformationaccumulate deformation– split when accumulated deformation too bigsplit when accumulated deformation too big
• Rendering Rendering – 2D ellipses2D ellipses– Self-shadowingSelf-shadowing
![Page 22: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/22.jpg)
VideoVideoVideoVideo
![Page 23: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/23.jpg)
• Filaments induce movement (everywhere)Filaments induce movement (everywhere)
• Filaments are animated with the movementFilaments are animated with the movement
• Smoke-particles are animated with LOD- Smoke-particles are animated with LOD- filaments and divergence-free noisefilaments and divergence-free noise
Smoke solver overviewSmoke solver overviewSmoke solver overviewSmoke solver overview
![Page 24: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/24.jpg)
ImprovementsImprovementsImprovementsImprovements
• Smoke particle mergingSmoke particle merging
• Curve split/collapse or resamplingCurve split/collapse or resampling
• Currently, limited boundary conditionsCurrently, limited boundary conditions
ConclusionConclusionConclusionConclusion• Separated dynamics & renderingSeparated dynamics & rendering
• Efficient & hi-resolutionEfficient & hi-resolution
• Not bounded in spaceNot bounded in space
• Compact: easy to load and saveCompact: easy to load and save
• Dynamics or keyframesDynamics or keyframes
![Page 25: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/25.jpg)
THANK YOUQuestions ?THANK YOUQuestions ?
![Page 26: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/26.jpg)
A new integration schemeA new integration schemeA new integration schemeA new integration scheme
• Traditional forward EulerTraditional forward Eulerptpvtpp '
pv
• With our closed form, induced velocity is With our closed form, induced velocity is given by a 4x4 matrixgiven by a 4x4 matrix
• Our schemeOur scheme... ) exp(' ptpptp
a translation is a translationa translation is a translationa rotation is a rotationa rotation is a rotationa twista twist is a twistis a twist
M
M
M M
![Page 27: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/27.jpg)
Simple rotation algebraSimple rotation algebraSimple rotation algebraSimple rotation algebra
• Rotation of center c around axis Rotation of center c around axis of angle of anglegiven by the magnitude of given by the magnitude of
0000
0
0
0
logxyzxxy
zxyzxz
yzxyyz
cc
cc
cc
R
cR ,log
![Page 28: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/28.jpg)
MotivationMotivationMotivationMotivation
A fluid is A fluid is not an actornot an actor
Existing fluid-directing techniques areExisting fluid-directing techniques areslowslow OR OR tedioustedious
A technique for keyframing fluid animationA technique for keyframing fluid animation• Not boundedNot bounded in a cube in a cube
• Predictable fluid-editing Predictable fluid-editing primitivesprimitives
• FastFast//RobustRobust
AimAimAimAim
![Page 29: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/29.jpg)
One Alternative – Vortex MethodsOne Alternative – Vortex Methodsvelocityvelocity vs. vorticityvs. vorticity
One Alternative – Vortex MethodsOne Alternative – Vortex Methodsvelocityvelocity vs. vorticityvs. vorticity
vω
dx
xp
xpv 3
4
)(
CurlCurl
vorticity vorticity vorticity vorticity
Biot-SavartBiot-Savart
velocity vvelocity vvelocity vvelocity v
vωω
)( dt
d
To get the motion: computeTo get the motion: compute velocity from vorticityvelocity from vorticity
pt
1)(
0
vvv
v
![Page 30: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/30.jpg)
![Page 31: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/31.jpg)
What does the Biot-Savart Law mean?What does the Biot-Savart Law mean?What does the Biot-Savart Law mean?What does the Biot-Savart Law mean?
34
1)(
xpxpBS
34
)()(
xp
xppfVORTEX
BIOT-SAVARTBIOT-SAVART
VortexVortex
Rotation magnitudeRotation magnitudevortexvortex
dx
xp
xpv 3
4
)(
vorticesvortices
![Page 32: Prepare video!!!](https://reader034.fdocuments.us/reader034/viewer/2022050820/56815006550346895dbdda11/html5/thumbnails/32.jpg)
The domain of the BS integralThe domain of the BS integralThe domain of the BS integralThe domain of the BS integral
CC
C
C dxxp
xpv 3
4
)(
2.2. Integral over a curveIntegral over a curve of a slice :of a slice :
3. Integral on many curves3. Integral on many curves
iCTOTAL vv
In 3D, vortices concentrate along In 3D, vortices concentrate along tubestubes(with a distribution profile around axis)(with a distribution profile around axis)
CC11
1.1. Integral over a slice of vortices :Integral over a slice of vortices :
change