Eulerian Motion Blur: Doyub Kim and Hyeong-Seok Ko
Eulerian Motion Blur: Doyub Kim and Hyeong-Seok Ko
Abstract
This paper describes a motion blur technique which can be applied to rendering fluid simulations that are carried
out in the Eulerian framework. Existing motion blur techniques can be applied to rigid bodies, deformable solids,
clothes, and several other kinds of objects, and produce satisfactory results. As there is no specific reason to
discriminate fluids from the above objects, one may consider applying an existing motion blur technique to render
fluids. However, here we show that existing motion blur techniques are intended for simulations carried out in the
Lagrangian framework, and are not suited to Eulerian simulations. Then, we propose a new motion blur technique
that is suitable for rendering Eulerian simulations.
Categories and Subject Descriptors (according to ACM CCS): I.3.7 [Computer Graphics]: Three-Dimensional
Graphics and Realism
1. Introduction
Motion blur is essential for producing high-quality anima-
tions. The frame rate of most films and videos is either 24
or 30 Hz, whereas human vision is reported to be sensitive
up to 60 Hz [Wan95, CJ02]. Due to the lower frame rate of
film and video, when each frame is drawn as a simple in-
stantaneous sampling of the dynamic phenomena, artifacts
such as temporal strobing can occur. The graphics commu-
nity has been aware of this problem, and several motion blur
techniques have been proposed to solve this problem.
Fluids are often important elements of a dynamic scene,
and for the artifact-free production of such a scene, fluids
need to be rendered with motion blur. Since the graphics
field already has an abundance of motion blur techniques,
one may consider applying existing techniques to the mo-
tion blur of fluids. Unfortunately, existing techniques do not
produce satisfactory results. This paper describes why the
existing solutions do not work for fluids and how to modify
existing motion blur techniques to make them applicable to
fluids. Figure 1: A motion blurred image (left) produced with the
algorithm presented in this paper and an unblurred image
Motion blur techniques developed so far are intended for (right): A slice of water is falling along the wall, which
hits the logo and makes the splash. To factor out the effects
caused by the transparent material, we rendered the water
kim@graphics.snu.ac.kr as opaque.
ko@graphics.snu.ac.kr
rendering simulations that are performed in the Lagrangian global illumination and caustics using ray tracing and photon
framework. We will call this type of motion blur techniques mapping.
Lagrangian motion blur (LMB). The majority of objects en-
The third class of motion blur is known as image-based
countered in 3D graphics scenes (including rigid bodies, ar-
methods. Max and Lerner [ML85] proposed an algorithm
ticulated figures, deformable solids, and clothes) are simu-
to achieve motion blur effect by considering the motion on
lated in the Lagrangian framework; thus their motion blur
the image plane. Brostow and Essa [BE01] also proposed
can be readily rendered with LMB.
an entirely image-based method which can create motion
Simulation of fluids, however, is often carried out in the blur from stop motion or raw video image sequences. These
Eulerian framework. Considering the high quality and broad methods are suited to cases where the 3D motion is not avail-
applicability of LMB, and considering there is no specific able or the motion is already rendered. A more complete
reason to discriminate fluids from other 3D objects, one may survey of motion blur techniques can be found in Sung et
consider employing LMB for rendering fluids. An interest- al. [SPW02]
ing finding of this paper is that LMB is not suitable for ren-
We assume in this work that the 3D data of the fluid at
dering the results generated by an Eulerian simulation. So
every frame are available, but the data are not given in a pa-
far no algorithm has been proposed that can properly render
rameterized forms. Therefore the temporal super-sampling
motion blur of fluids that are simulated using the Eulerian
method seems to fit to the situation. In this paper, we de-
framework. In this paper, we explain why Lagrangian mo-
velop a motion blur technique based on the temporal super-
tion blur should not be used for rendering Eulerian simula-
sampling method.
tions. Insight obtained during this process led us to develop
a simple step that can be added to existing motion blur tech- Realistic rendering of fluids has been studied as well
niques to produce motion blur techniques that are applicable as the fluid simulation itself in the graphics community.
to Eulerian simulations (i.e., Eulerian motion blur (EMB)). Fedkiw et al. [FSJ01] visualized smoke simulation using a
Monte Carlo ray-tracing algorithm with photon mapping,
and Nguyen et al. [NFJ02] presented a technique based on
2. Previous Work Monte Carlo ray tracing for rendering fire simulations. Tech-
Motion blur was first introduced to the computer graph- niques for rendering liquids were also developed by Enright
ics field by Korein and Badler [KB83], and Potmesil and et al. [EMF02]. However, motion blur was not considered in
Chakravarty [PC83]. Korein and Badler proposed a method those studies.
that works on an analytically parameterized motion and cre- Mller et al. [MCG03] used blobby style rendering for vi-
ates a continuous motion blur. Potmesil and Chakravarty sualizing water represented with particles, and their method
proposed another method that creates continuous motion was subsequently improved by Zhu and Bridson [ZB05]
blur by taking the image-space convolution of the object to have smoother surfaces. For the visualization of La-
with the moving path. We will classify the above sort of mo- grangian particles, Guan and Mueller [GM04] proposed
tion blur techniques as analytic methods. point-based surface rendering with motion blur. Geundel-
The next class of motion blur we introduce is the tempo- man et al. [GSLF05] and Lossaso et al. [LIG06] attempted
ral super-sampling methods. Korein and Badler [KB83] pro- to include the rendering of the escaped level-set particles to
posed another method that renders and accumulates whole create the impression of water sprays.
(not partial) images of the object at several super-sampled Motion blur of Eulerian simulation has rarely men-
instants, resulting in a superimposed look of the object. tioned/practiced before; To our knowledge, there have been
The distributed ray tracing work of Cook et al. [CPC84] only two reports on motion blur of Eulerian simulations in
brought improved motion blur results. Their method suc- computer graphics thus far. In rendering water simulation,
cessfully increased the continuity of the motion blur by Enright et al. [EMF02] mentioned that a simple interpolation
retrieving pixel values from randomly sampled instants in between two signed distance volumes can be applied in order
time. Recently, Cammarano and Jensen [CJ02] extended this to find ray and water surface intersection. A few years later,
temporal super-sampling method to simulate motion-blurred Zhu and Bridson [ZB05] mentioned that the method will de-
stroy surface features that move further than their width in
one frame.
We note the intrinsic differences of the physical quantities used in
the Lagrangian and Eulerian frameworks. In the Lagrangian frame-
work, the simulator deals with the quantities carried by the moving 3. Computing Motion Blur
objects (e.g., the position, velocity, acceleration of the objects). In
The basic principle of motion blur is to add up the radiance
the Eulerian framework, on the other hand, the domain is discretized
into grids and the simulator deals with the quantities observed from
contributions over time, which can be expressed as
Z Z
fixed 3D positions (e.g., the velocity and density of the fluid at a
fixed grid point).
Lp = L(x0 ,~,t)s(x0 ,~,t)g(x0 )dA(x0 )dt, (1)
ts A
tual ray tracer. Usually multiple rays are shot for each pixel
for better results (Figure 2 (f)), which can be easily done by
t1 t2 t3 t4 associating multiple time samples to a pixel.
? ?
tn tn+1 ? ?
(a) (b)
TI
1.36
tn
0
-0.29 Figure 4: Estimation of the level-set values for Eulerian mo-
= tn+0.4 tn tn+1 tion blur. The grid points marked with ?s are the locations
(c) (d) whose level-set values must be estimated. The short solid ar-
rows at those points represent the estimated velocity u(x, ).
Figure 3: Characterization of the level-set change in a sim-
ple example: (a) the snapshot at t n , (b) the snapshot at t n+1 ,
(c) the situation at t n+0.4 , (d) the level-set changes.
the error is remarkable; and (3) the error is not related to the
grid resolution.
5.1. Why Time-Interpolation Does Not Work We now investigate why the time-interpolation gives such
an incorrect result. When specific information about the
Since the grid data are available only for the frames, we must movement is not available, exploiting the inertial compo-
somehow estimate the level-set values at arbitrary time sam- nent of the movement works quite well. The reason the LMB
ple . For the estimation, Enright et al. [EMF02] presented method works so well for Lagrangian simulations can be at-
a method which interpolates the level set data between two tributed to the fact that the LMB-estimation of object loca-
frames. Note that this is just as same as LMB-style estima- tion exploits the inertia. We can adopt this idea of exploiting
tion. An LMB-style solution would be to make the estima- inertia in the development of Eulerian motion blur. A ques-
tion with tion that arises here is whether the time-interpolation T I is
(t n+1 ) (t n ) exploiting the inertia.
T I () = (t n ) + ( t n ) . (4)
t n+1 t n It is critical to understand that it cannot be assumed that
the level-set/density change at a grid point will continue to
Contrary to expectation, the above estimation gives incor-
happen at the current rate. The space in which the fluid ex-
rect results. Imagine the simple case shown in Figure 3, in
periences inertia in the conventional sense is the 3D space.
which a spherical ball of water is making a pure translational
The inertial movement of the fluid in 3D space is reflected to
movement along the horizontal direction at a constant veloc-
the level-set field by updating the level-set according to the
ity. Figures 3 (a) and 3 (b) show two snapshots taken at t n
equation
and t n+1 , respectively. At the marked grid point, the level-set
values are (t n ) = 0.58 and (t n+1 ) = 2.54. The question is
+ u = 0. (5)
what would be the level-set value () at = t n+0.4 at that t
position? Since the fluid movement is analytically known in This equation states that the level-set should be advected in
this example, we can find out the exact location of the water the direction u at the rate |u|.
ball at , as shown in Figure 3(c). At , the marked position
comes within the body of fluid; therefore () has a negative
value. In fact, we can find out the trajectory of (t) for the 5.2. Proposed Method
duration [t n ,t n+1 ], which is plotted as a solid curve in Fig- For the Eulerian motion blur to exploit the inertial movement
ure 3(d). On the other hand, the time-interpolated result is of fluids, therefore, we propose that the estimation of the
T I () = 1.36, which is far from what has happened. Varia- level-set values at arbitrary super-sampled instants be based
tion of T I (t) within the duration follows a straight line and on the level-set advection, rather than the time-interpolation
is plotted with a dashed line in Figure 3(d). Here, we note of the level set values. More specifically, we propose to es-
that (1) the time-interpolation gives an incorrect result even timate E (x, ) of the level set value at a 3D position x,
in such a simple, non-violent, analytically verifiable case; (2) at a super-sampled time with the semi-Lagrangian advec-
tion [Sta99, SC91]
a distinct boundary. Even for cases where the surface extraction is E (x, ) = (x ( t n ) u(x, ),t n ). (6)
possible (as in the water), when the topology changes over frames,
LMB is difficult because finding the vertex correspondence is a non- This equation states that E (x, ) takes the level-set value of
trivial process. t n at the back-tracked position x ( t n ) u(x, ). In the
Figure 7: Enlarged images of motion blur for a particular frame: (a) no motion blur, (b) motion blur with T I , (c) motion blur
with E .
M10600000232-06J0000-23210), Ministry of Information [LIG06] L OSASSO F., I RVING G., G UENDELMAN E.:
and Communication, the Brain Korea 21 Project, and Au- Melting and burning solids into liquids and gases. IEEE
tomation and System Research Institute at Seoul National Transactions on Visualization and Computer Graphics 12,
University. 3 (2006), 343352.
[MCG03] M LLER M., C HARYPAR D., G ROSS M.:
References Particle-based fluid simulation for interactive appli-
[BE01] B ROSTOW G. J., E SSA I.: Image-based mo- cations. In Proceedings of the 2003 ACM SIG-
tion blur for stop motion animation. Computer Graphics GRAPH/Eurographics symposium on Computer anima-
(Proc. ACM SIGGRAPH 2001) 35 (2001), 561566. tion (2003), pp. 154159.
[CJ02] C AMMARANO M., J ENSEN H. W.: Time depen- [ML85] M AX N. L., L ERNER D. M.: A two-and-a-half-d
dent photon mapping. In EGRW 02: Proceedings of motion-blur algorithm. vol. 19, ACM Press, pp. 8593.
the 13th Eurographics workshop on Rendering (2002), [NFJ02] N GUYEN D. Q., F EDKIW R., J ENSEN H. W.:
pp. 135144. Physically based modeling and animation of fire. ACM
[CPC84] C OOK R. L., P ORTER T., C ARPENTER L.: Dis- Trans. Graph. 21, 3 (2002), 721728.
tributed ray tracing. In SIGGRAPH 84: Proceedings of [PC83] P OTMESIL M., C HAKRAVARTY I.: Modeling
the 11th annual conference on Computer graphics and in- motion blur in computer-generated images. In SIG-
teractive techniques (1984), pp. 137145. GRAPH 83: Proceedings of the 10th annual conference
[EMF02] E NRIGHT D., M ARSCHNER S., F EDKIW R.: on Computer graphics and interactive techniques (1983),
Animation and rendering of complex water surfaces. pp. 389399.
ACM Transactions on Graphics 21, 3 (2002), 736744. [SC91] S TANIFORTH A., C T J.: Semi-lagrangian inte-
[FSJ01] F EDKIW R., S TAM J., J ENSEN H. W.: Visual gration scheme for atmospheric model - a review. Mon.
simulation of smoke. Computer Graphics (Proc. ACM Weather Rev. 119, 12 (1991), 22062223.
SIGGRAPH 2001) 35 (2001), 1522. [SPW02] S UNG K., P EARCE A., WANG C.: Spatial-
[GM04] G UAN X., M UELLER K.: Point-based surface temporal antialiasing. IEEE Transactions on Visualization
rendering with motion blur. In Proceedings of the and Computer Graphics 8, 2 (2002), 144153.
2004 Eurographics Symposium on Point-Based Graphics [SSK05] S ONG O.-Y., S HIN H., KO H.-S.: Stable but
(2004). non-dissipative water. ACM Transactions on Graphics 24,
[GSLF05] G UENDELMAN E., S ELLE A., L OSASSO F., 1 (2005), 8197.
F EDKIW R.: Coupling water and smoke to thin de- [Sta99] S TAM J.: Stable fluids. Computer Graphics
formable and rigid shells. ACM Transactions on Graphics (Proc. ACM SIGGRAPH 99) 33, Annual Conference Se-
24, 3 (2005), 973981. ries (1999), 121128.
[KB83] KOREIN J., BADLER N.: Temporal anti-aliasing
[Wan95] WANDELL B. A.: Foundation of Vision. Sinauer
in computer generated animation. In SIGGRAPH 83:
Associates, 1995.
Proceedings of the 10th annual conference on Computer
graphics and interactive techniques (1983), pp. 377388. [YXU01] YABE T., X IAO F., U TSUMI T.: The con-
strained interpolation profile method for multiphase anal-
[LC87] L ORENSEN W. E., C LINE H. E.: Marching cubes:
ysis. J. Comp. Phys. 169 (2001), 556593.
A high resolution 3d surface construction algorithm. In
SIGGRAPH 87: Proceedings of the 14th annual confer- [ZB05] Z HU Y., B RIDSON R.: Animating sand as a fluid.
ence on Computer graphics and interactive techniques ACM Transactions on Graphics 24, 3 (2005), 965972.
(1987), vol. 21, pp. 163169.
[LGF04] L OSASSO F., G IBOU F., F EDKIW R.: Simulat-
ing water and smoke with an octree data structure. ACM
Transactions on Graphics 23, 3 (2004), 457462.