Date: Fri, 29 Mar 2024 08:21:57 +0000 (UTC) Message-ID: <357175420.523.1711700517515@ip-10-0-0-233.us-west-2.compute.internal> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_522_1381746641.1711700517512" ------=_Part_522_1381746641.1711700517512 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
Shutter opening and closing rates are controlled by the shutterO= penTime, shutterCloseTime, and shutteropening RiCamera properties. The= shutter interval is determined by the values passed to RiShutter. In = shutter-normalized time, the shutter interval is mapped to [0,1]. Specifyin= g a shutterOpenTime and shutterCloseTime would appear in rib as follows:
Camera "world" = "float shutterOpenTime" [opentime] "float shutterCloseTime" [closetime]The shutter begins opening at time 0. The opentime is the time= at which it becomes fully open. Between opentime and closet= ime the shutter remains fully open. At closetime, it begins closi= ng, and it fully closes at time 1.
The following image shows a blue sphere moving from the screen lef= t to screen right. The camera shutter opens and closes instantaneously, whi= ch is the default behavior if shutteropening is not = given. The sphere is made artificially bright so that its blur shows up mor= e. Because the shutter is completely open during the enti= re shutter interval, the motion samples are uniformly distributed, giving a= constant blur:
By setting the shutterOpenTime and shutterCloseTime p= arameters to [0.0], we can make the shutter still open in= stantaneously, but then spend the time between 0 and 1 closing at a constan= t speed. This generates the most samples at the beginning of the sphere's m= otion, at screen left, and gradually fewer samples as it moves across the s= creen, making the blur fade out to screen right.
<= /span>
Camera "world" "float sh= utterOpenTime" [0.0] "float shutterCloseTime" [0.0]
Having this shutter spend = the entire interval opening and then close instantaneously reverses the ima= ge and the blur fades in over the sphere's motion.
=
Camera "world"&nbs= p;"float shutterOpenTime" [1.0] "float shutterCloseTime" [1.0]
Since real camera shutters cannot move infinitely fast= , they generally spend some nonzero amount of time opening, remain open for= a bit, and then spend some nonzero amount of time closing. We can model th= is by having the shutter opening between 0 and 0.35, fully-open between 0.3= 5 and 0.65, and closing between 0.65 and 1.
Camera "world"&nbs= p;"float shutterOpenTime" [0.35] "float shutterCloseTime" [0.65]
To approximate a real camera shutter even more accurately, we can relax = the restriction that it opens and closes at a constant rate and model the a= cceleration of the shutter as it begins to open and the deceleration as it = reaches its fully open or fully closed position. For this we need a more co= mplex parametric description:
Camera "world" = "float shutterOpenTime" [a] "float shutterCloseTime" [b] "float[8] shuttero= pening" [c1 c2 d1 d2 e1 e2 f1 f2]The eight parameters of shutteropening represent four points on a graph = representing the motion of the shutter:
The points c1,c2 and d1,d2 must lie in the axis-alig= ned rectangle with corners at (0,0) and (opentime,1) and are the control po= ints of a bezier curve segment. Likewise, e1,e2 and f1,f2&nb= sp;are control points of a bezier curve between (closetime,1) and (1,0) and= must lie in the axis-aligned rectangle with corners at those points. In ad= dition, the bezier curve itself must be a function, i.e. its slope must nev= er be infinite within the defined segment.
Here are images of the shutter taking the entire interval to open. The f= irst is the same as before, with the shutter opening at a constant rate. Th= e second bends the bezier curve segment down to make the shutter open very = slowly at first and accelerate throughout the opening interval, going very = fast at the point that it finally becomes fully open. This moves the distri= bution of motion samples even more towards the end of the shutter interval,= so the streak at the beginning of the interval is less pronounced and it b= ecomes brighter more sharply.
Camera "wo= rld" "float shutterOpenTime" [1] "float shutterCloseTime" [1] "float[8] shu= tteropening" [0 0 1 1 1 1 1 1]
Camera "world" "float shutterOpenTim= e" [1] "float shutterCloseTime" [1] "float[8] shutteropening" [0.8 0.1 0.9 = 0.2 1 1 1 1]
The sharper shutter opening curv= e preserves more of the static shape of the moving object and can be more a= esthetically appealing.