NAME¶
pmdblur - generate views for combined camera motion and depth blurring
SYNOPSIS¶
pmdblur speed aperture nsamp v0file
v1file
DESCRIPTION¶
Pmdblur takes two viewfiles and generates
nsamp views starting
from
v0file and moving towards
v1file, simulating an aperture of
diameter
aperture in world coordinate units. When rendered and averaged
together, these views will result in a picture with motion and depth-of-field
blur due to a camera changing from v0 to v1 in a relative time unit of 1,
whose shutter is open starting at v0 for
speed of these time units.
Either
pinterp(1) or
rpict(1) may be called to do the actual
work. (The given
v0file must also be passed on the command line to the
chosen renderer, since
pmdblur provides supplemental view
specifications only.)
For
pinterp, feed the output of
pmdblur to the standard input of
pinterp and apply the
-B option to blur views together. In most
cases, two pictures with z-buffers at v0 and v1 will get a satisfactory
result, though the perfectionist may wish to apply the
-ff option
together with the
-fr option of
pinterp.
To use
pmdblur with
rpict, apply the
-S option to indicate
a rendering sequence, and set the
-o option with a formatted file name
to save multiple output pictures. When all the renderings are finished,
combine them with the
pcomb(1) program, using appropriate scalefactors
to achieve an average. Note that using
rpict is MUCH more expensive
than using
pinterp, and it is only recommended if the scene and
application absolutely demand it (e.g. there is prominent refraction that must
be modeled accurately).
For both
pinterp and
rpict, the computation time will be
proportional to the number of views from
pmdblur. We have found a
nsamp setting somewhere between 7 and 15 to be adequate for most
images. Relatively larger values are appropriate for faster camera motion.
The
-pm and/or
-pd options of
rpict may be used instead or
in combination to blur animated frames, with the added advantage of blurring
reflections and refractions according to their proper motion. However, this
option will result in more noise and expense than using
pmdblur with
pinterp as a post-process. If both blurring methods are used, a smaller
value should be given to the
rpict -pm option equal to the
shutter speed divided by the number of samples, and the
-pd option
equal to the aperture divided by the number of samples. This will be just
enough to blur the boundaries of the ghosts which may appear using
pmdblur with a small number of time samples.
To simulate a particular camera's aperture, divide the focal length of the lens
by the f-number, then convert to the corresponding world coordinate units. For
example, if you wish to simulate a 50mm lens at f/2.0 in a scene modeled in
meters, then you divide 50mm by 2.0 to get 25mm, which corresponds to an
effective aperture of 0.025 meters.
EXAMPLES¶
To use
pinterp to simulate motion blur between two frames of a
walk-through animation, where the camera shutter is open for 1/4 of the
interframe distance with an aperture of 0.1 world units:
-
- pmdblur .25 .1 8 fr1023.hdr fr1024.hdr | pinterp -B -vf
fr1023.hdr -x 640 -y 480 fr1023.hdr fr1023.zbf fr1024.hdr fr1024.zbf >
fr1023b.hdr
AUTHOR¶
Greg Ward
SEE ALSO¶
pcomb(1),
pdfblur(1),
pinterp(1),
pmblur(1),
rcalc(1),
rpict(1),
vwright(1)