Download presentation
Presentation is loading. Please wait.
Published byRoss Owens Modified over 9 years ago
1
Stylized Shadows Christopher DeCoroPrinceton University Forrester Cole Adam Finkelstein Szymon Rusinkiewicz
2
Recreating an Artistic Example Consider this portion of John Vanderlyn’s panorama of the Palace and Garden of VersaillesConsider this portion of John Vanderlyn’s panorama of the Palace and Garden of Versailles –Note the abstracted shadow cast from the planter –The object is the focus – the shadow exists to provide cues Our goal is to provide the same stylization to rendered shadowsOur goal is to provide the same stylization to rendered shadows
3
Recreating an Artistic Example The planter appears to float without a shadowThe planter appears to float without a shadow –The shadow provides an essential cue to anchor it to the ground
4
Recreating an Artistic Example The planter appears to float without a shadowThe planter appears to float without a shadow However, an accurate shadow provides extraneous detailHowever, an accurate shadow provides extraneous detail –The planter has a handle in silhouette, yet the shadow does not –Perhaps the artist decided this detail was distracting
5
Recreating an Artistic Example The planter appears floating without a shadowThe planter appears floating without a shadow However, an accurate shadow provides extraneous detailHowever, an accurate shadow provides extraneous detail We allow a stylized shadow, providing for greater artistic controlWe allow a stylized shadow, providing for greater artistic control
6
Examples of Stylized Shadows 6 Artwork from the Metropolitan Museum of Art in New YorkArtwork from the Metropolitan Museum of Art in New York The two left examples use simplified shadows to provide cuesThe two left examples use simplified shadows to provide cues The right examples use discrete penumbrae for effectThe right examples use discrete penumbrae for effect
7
Identification of a set of useful stylization controlsIdentification of a set of useful stylization controls –Inflation –Softness –Brightness –Abstraction A framework for rendering stylized shadowsA framework for rendering stylized shadows –Establishing stylization parameters that are controlled at a high level –Interactive visualization Our Contributions Accurate Stylized OriginalInflationBrightnessSoftnessAbstraction
8
Stylization Parameters Inflation (and deflation) iInflation (and deflation) i –size of the shadow relative to original
9
Stylization Parameters Inflation (and deflation) iInflation (and deflation) i –size of the shadow relative to original Softness, sSoftness, s –width of transition from lit to occluded
10
Stylization Parameters Inflation (and deflation) iInflation (and deflation) i –size of the shadow relative to original Softness, sSoftness, s –width of transition from lit to occluded Brightness, bBrightness, b –maximum amount of occlusion
11
Stylization Parameters Inflation (and deflation) iInflation (and deflation) i –size of the shadow relative to original Softness, sSoftness, s –width of transition from lit to occluded Brightness, bBrightness, b –maximum amount of occlusion Abstraction, αAbstraction, α –smoothness of the shadow contour
12
Algorithm Description Start with hard shadow visibilityStart with hard shadow visibility 1. Visibility Accurate Shadow
13
Algorithm Description Start with hard shadow visibilityStart with hard shadow visibility Compute distance transform of visibilityCompute distance transform of visibility 1. Visibility2. Dist. Transform Accurate Shadow
14
Algorithm Description Start with hard shadow visibilityStart with hard shadow visibility Compute distance transform of visibilityCompute distance transform of visibility Apply Gaussian blurApply Gaussian blur 1. Visibility2. Dist. Transform3. Blur Accurate Shadow
15
Algorithm Description Start with hard shadow visibilityStart with hard shadow visibility Compute distance transform of visibilityCompute distance transform of visibility Apply Gaussian blurApply Gaussian blur Apply transfer functionApply transfer function 1. Visibility2. Dist. Transform3. Blur 4. Threshold Accurate Shadow
16
Algorithm Description Start with hard shadow visibilityStart with hard shadow visibility Compute distance transform of visibilityCompute distance transform of visibility Apply Gaussian blurApply Gaussian blur Apply transfer functionApply transfer function Light using modified visibility bufferLight using modified visibility buffer 1. Visibility2. Dist. Transform3. Blur 4. Threshold 5. Light Accurate Shadow
17
Inflation and Deflation Implemented by taking isocontours of distance transform, D(V)Implemented by taking isocontours of distance transform, D(V) –Inflation for D(V) > 0, deflation for D(V) < 0, original at D(V)=0 Apply a threshold transfer function f( ) to D(V)Apply a threshold transfer function f( ) to D(V) –Allows interactive changes without recomputation Analogous to inflating the original objectAnalogous to inflating the original object Visibility, V(x)Dist. Transform, D(V(x))
18
Inflation Examples Accurate Shadow Inflation, i=20 Deflation, i=-10, s=5
19
World-space and Averaged Distance Screen space distance does not account for foreshorteningScreen space distance does not account for foreshortening Screen-space Euclidean Dist.
20
World-space and Averaged Distance Screen space distance does not account for foreshorteningScreen space distance does not account for foreshortening We compute world-space distance using stored world positionsWe compute world-space distance using stored world positions Screen-space Euclidean Dist.World-space Euclidean Dist.
21
World-space and Averaged Distance Euclidean distance has sharp changes in isocontour curvatureEuclidean distance has sharp changes in isocontour curvature Screen-space Euclidean Dist.World-space Euclidean Dist.
22
World-space and Averaged Distance Euclidean distance has sharp changes in isocontour curvatureEuclidean distance has sharp changes in isocontour curvature World-space Euclidean Dist.World-space Averaged Dist.
23
World-space and Averaged Distance Euclidean distance has sharp changes in isocontour curvatureEuclidean distance has sharp changes in isocontour curvature Averaged Distance has smooth contoursAveraged Distance has smooth contours Screen-space Euclidean Dist.World-space Euclidean Dist.World-space Averaged Dist.
24
L p -averaged Distance Metric Euclidean metric determines minimum distance to contourEuclidean metric determines minimum distance to contour Instead, we use the average distance to the contourInstead, we use the average distance to the contour –Originally presented by [Peng et al. 2004] for mesh inflation Parameter p allows tradeoff between smoothness and accuracyParameter p allows tradeoff between smoothness and accuracy –We empirically found that p=8 is a reasonable compromise
25
Softness & Brightness Instead of a hard threshold, we use a smoothstep with width sInstead of a hard threshold, we use a smoothstep with width s Scale range from [0,1] to [b,1]Scale range from [0,1] to [b,1] –No upper bound, w/out loss of generality –Allows combination of multiple functions Smoothness of D(V) allows smooth penumbraeSmoothness of D(V) allows smooth penumbrae Width can be changed without additional explicit blurringWidth can be changed without additional explicit blurring
26
Softness & Brightness Examples Accurate ShadowModerate Softness, s=20 Discrete Umbra and Penumbra
27
AbstractionAbstraction Defined as a limit on the curvature detail of shadows (isocontours)Defined as a limit on the curvature detail of shadows (isocontours) By blurring distance transform, it can be shown that curvature detail decreases away from medial axisBy blurring distance transform, it can be shown that curvature detail decreases away from medial axis Analogous to smoothing the original objectAnalogous to smoothing the original object Distance Transform, D(V) Blurred, G D(V)
28
Abstraction Examples Accurate Shadow Moderate Abstraction, α=10 i=10High Abstraction, α=70 i=10
29
Non-constant Stylization Parameters Parameters can be a function of other propertiesParameters can be a function of other properties –Such as time, surface geometry, or distance to shadow casters We define parameters as quadratic functions of approximate distance to the shadow-casting objectWe define parameters as quadratic functions of approximate distance to the shadow-casting object –Allows for hardening of shadows (left) or selective detail preservation (right) Accurate Shadowα = 13+4d-8d 2, i = -2d 2, s = 12-4d 2 α = 10 s = 20d 2
30
Monte-Carlo Filtering Both distance transform and blur evaluate an integral over screenBoth distance transform and blur evaluate an integral over screen –We reduce computation by random Monte Carlo sampling Allows a time-quality tradeoff when moving light or cameraAllows a time-quality tradeoff when moving light or camera –Automatically decreases samples when necessary for frame rate Not necessary to compute when only changing stylizationNot necessary to compute when only changing stylization –Abstraction only changes blur, which is very fast 24 Samples 30 FPS 50 Samples 18 FPS 120 Samples 8 FPS
31
More Examples Accurate Shadowα = 20, i = 4, s = 1α = 7, i = −4, s = 5α = 20, i = 10, s = 25 Accurate Shadow α = 13+4d−8d 2, i = −2d 2, s = 12−4d 2 α = 5, i = −4, s = 10 α = 20+10d, i = 5+10d, s = 50 α = 20, s = 20α = 50, s = 50i = 20, s = 50
32
Future Work More efficient (or low variance) dist. transformMore efficient (or low variance) dist. transform Investigation of additional stylistic parameters and variation functionsInvestigation of additional stylistic parameters and variation functions Continuous (non-binary) visibility buffersContinuous (non-binary) visibility buffers Effective stylization for multiple lights and objectsEffective stylization for multiple lights and objects Control over shadow topologyControl over shadow topology
33
ConclusionsConclusions Our parameters allow for a range of stylization effects corresponding to traditional artistryOur parameters allow for a range of stylization effects corresponding to traditional artistry Our method provides a flexible and efficient framework for interactive stylization of shadowsOur method provides a flexible and efficient framework for interactive stylization of shadows Variation with occluder distance generalizes parameters to recreate natural phenomenaVariation with occluder distance generalizes parameters to recreate natural phenomena
34
AcknowledgementsAcknowledgements Partially supported by the Sloan Foundation, and NSF Grants CCF-0347427 and IIS-0511965Partially supported by the Sloan Foundation, and NSF Grants CCF-0347427 and IIS-0511965 Christopher DeCoro is supported by an ATI/AMD Technologies Research FellowshipChristopher DeCoro is supported by an ATI/AMD Technologies Research Fellowship Models provided by UC Berkeley, AIM@Shape and DeEsponaModels provided by UC Berkeley, AIM@Shape and DeEspona Thanks especially to everyone at Princeton GFX that gave feedback during the development of this workThanks especially to everyone at Princeton GFX that gave feedback during the development of this work
35
QuestionsQuestions
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.