Rendering Smoke & Clouds - Presentation
-
Upload
juergentreml -
Category
Documents
-
view
2.484 -
download
5
description
Transcript of Rendering Smoke & Clouds - Presentation
![Page 1: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/1.jpg)
computer graphics & visualization
Rendering Smoke & Clouds
Game Design Seminar 2007
Jürgen Treml
![Page 2: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/2.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Talk Overview1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 3: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/3.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Where are we?1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 4: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/4.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
1. Introduction to Clouds• What are clouds?
• Mass of visible water droplets
• Technically speaking:Continuous 3D density field of (condensed) water in the air
• Form when warm air cools down and condensates
• Formation influenced by:Temperature, Pressure, HumidityRatio Conensation / Evaporation
![Page 5: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/5.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
1. Introduction to Clouds• Why do we see clouds?
• Color depends on– Spectrum of incoming light– Atmosphere– Angle to sun– Angle to viewer– ...
![Page 6: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/6.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Where are we?1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 7: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/7.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.1 Generating Clouds
2.1.1 Meteorological / Physical Model• Implement a meteorological model
– Simulating and modeling environment: air pressure, temperature, humidity and saturation
– Account for• Potential temperature• Buoyant force• Environmental lapse rate• Saturation mixing ratio• Water continuity• Thermodynamics• Vorticity confinement• Fluid flow• ...
– Clouds creation, movement and dissipation as an ad-hoc result
![Page 8: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/8.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.1 Generating Clouds
2.1.2 Noise Based Model• 1/f-noise
– Functional noise, i.e. no memory footprint
– Fast (Faster than simulation)
– Arbitary number of dimensions
– Natural look• stochastic, self-similar
• 1/f: decreasing amplitudewith increasing frequency
![Page 9: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/9.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
• In mathematical terms:
• Base Function:
– white noise, Perlin noise, image, etc.
– Pre-created and stored or pseudo-random function
2. Virtual Clouds based on physical Models
2.1 Generating Clouds
2.1.2 Noise Based Model
n
iinini
yxByxN1
)2
1,
2
1(
2
1),(
octaves ofNumber :
function Base :
valuenoise Synthetic :
n
B(x,y)
N(x,y)
i=1 i=2 i=3 i=4=n
![Page 10: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/10.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.1 Generating Clouds
2.1.2 Pseudo-Random Noise Based Model• Noise interpretation:
– 2D noise, e.g. height map (terrain)
– 3D noise, e.g. Volume density field (clouds)
– 4D noise, e.g. for time-animated 3D fields
![Page 11: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/11.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.1 Generating Clouds
2.1.2 Pseudo-Random Noise Based Model• Tweaking the noise function
n
iinin
i yl
xl
BryxN1
)1
,1
(2
1),(
octaves ofNumber :
y)(lacunarit gap fractal :
roughness :
n
l
r
![Page 12: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/12.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.1 Generating Clouds
2.1.2 Pseudo-Random Noise Based Model
![Page 13: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/13.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.1 Generating Clouds
2.1.2 Pseudo-Random Noise Based Model• Create various effects, changing...
– Base function
– Number of octaves
– Roughness, lacunarity
– …
![Page 14: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/14.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.1 Generating Clouds
2.1.3 Noise-Based Editing Model• Create basic noise field
• Let user edit the field– User may define parameters of the noise function before generating the
noise field
– User can edit the generated noise (like a brush or eraser in photoshop or paint, etc.)
• Used in Terragen for example
![Page 15: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/15.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Where are we?1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 16: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/16.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.2 Rendering Clouds using Volume Rendering Techniques
2.2.1 The Volume Rendering Integral• Optical Model:
Light (particles) travelling through / interacting with density volume
• Effects:
– Absorption
– Emission
– (Multiple) Scattering
– (Shadows)
![Page 17: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/17.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.2 Rendering Clouds using Volume Rendering Techniques
2.2.1 The Volume Rendering Integral• Physical Model: Emission and absorption only
Absorption
),(
00)()(
xxexIxI
2
1
)(),(
Absorption
Depth Optical
21
x
x
dxxxx
Initial Intensity Attenuation along [x0,x]
Ray
)( 0xI
I
x
0x
![Page 18: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/18.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Initial Intensity at x‘ Attenuation along [x‘,x]
2. Virtual Clouds based on physical Models
2.2 Rendering Clouds using Volume Rendering Techniques
2.2.1 The Volume Rendering Integral• Physical Model: Emission and absorption only
Emission (+ Absorption)
x
x
xxxxdxexqexIxI
0
0 ')'()()( ),'(),(
0
Ray
)( 0xI
I
x
'x0x
![Page 19: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/19.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.2 Rendering Clouds using Volume Rendering Techniques
4.2.1 The Volume Rendering Integral• No general closed form solution
• Approximation by discrete sum:
Ray Casting
![Page 20: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/20.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.2 Rendering Clouds using Volume Rendering Techniques
2.2.2 Backward VR: Ray Casting• Image space
algorithm
• Pixel by pixel
• Cast rays into volume
• Sample volume at discrete intervals
Image plane
![Page 21: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/21.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.2 Rendering Clouds using Volume Rendering Techniques
2.2.2 Backward VR: Ray Casting• Usually resampling required (ray doesn‘t hit
voxel centers) interpolate / filter (trilinear, splines, ...)
• Accumulate color and opacity along the ray
![Page 22: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/22.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.2 Rendering Clouds using Volume Rendering Techniques
2.2.3 Forward VR: Splatting• Object space
algorithm
• Voxel by voxel
• Project each voxel onto the image plane
• One voxel usually influences several pixels
Image plane
![Page 23: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/23.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.2 Rendering Clouds using Volume Rendering Techniques
2.2.3 Forward VR: Splatting• Apply filter when projecting voxel on pixels
(e.g. Gaussian)
• Example: Cloud rendering algorithm proposed by Dobashi (2000)
![Page 24: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/24.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Where are we?1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 25: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/25.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.3 Example: Clouds à la Dobashi
• Project each voxel on a billboard:filter using metaballs(similar to Gauss but effective radius of influence)
• Given (for now):Discrete density distribution (voxel grid)
![Page 26: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/26.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.3 Example: Clouds à la Dobashi• Render image as viewed from sun
– Orient billboards towards sun
– Starting from closest to sun: for each metaball, render billboard to framebuffer (multiply attenuation)
![Page 27: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/27.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.3 Example: Clouds à la Dobashi• Render image as viewed from sun
– Read pixel corresponding to metaball center from framebuffer attenuation between metaball and sun
– Multiply by sunlight colormetaball color
![Page 28: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/28.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.3 Example: Clouds à la Dobashi• Render image from user
perspective– Render all objects
besides clouds
– Orient billboards towards viewpoint
– Project on image plane (back to front):• multiply framebuffer
color by attenuation ratio
• Add metaball color
![Page 29: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/29.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.3 Example: Clouds à la DobashiA few notes:
• Attenuation „texture“ created during second step can be used as shadow map (for the ground)
• Method accounts for single scattering of light and shadows
![Page 30: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/30.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Where are we?1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 31: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/31.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.4 Next Step: Multiple Forward Scattering• Proposed by Harris and Lastra 2001
• Just a short overview
• Single scattering similar to Dobashi
• Extending the VRI to account for multiple forward scattering:
Dpdttdtt
dsesgeIPI
Dp
s
Dp
0
)()(
0 ),()(),( 0
![Page 32: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/32.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.4 Next Step: Multiple Forward Scattering
• What‘s the message?– Each particle besides light from outside a cloud also receives
light scattered by other particles– Amount is a function of the angle (spatial angle)– Caracterized by the BSDF and phase function (e.g. Rayleigh
scattering)
Dpdttdtt
dsesgeIPI
Dp
s
Dp
0
)()(
0 ),()(),( 0
4
')',()',,(),( dxIxrxg
![Page 33: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/33.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.4 Next Step: Multiple Forward Scattering• Again solved by discrete approximization
• Forward scattering accounts most for the optical perception of cloudsrestrict calculations to small angle around the forward direction
• Assuming BSDF and other factors being constant (due to small angle)
• Split light path into small number of discrete directions
• ...
![Page 34: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/34.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.4 Next Step: Multiple Forward Scattering
![Page 35: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/35.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Where are we?1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 36: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/36.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.5 A few Notes on Animating Clouds• Based on meteorological model (as with cloud
generation)
• Account for all physical phenomena Clouds creation, movement and dissipation as an ad-hoc result
![Page 37: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/37.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
2. Virtual Clouds based on physical Models
2.5 A few Notes on Animating Clouds• Simple model: cellular
automata– E.g. Used by Dobashi
– Cells of an automaton correspond to voxels and carry state variables: Vapor/humidity, Clouds, Phase transition
– Binary states!
– Set of transition functions
– Smoothing before redering
![Page 38: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/38.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Where are we?1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 39: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/39.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
3. Virtual Clouds – An Artistic Approach
3.1 Generating / Designing Clouds• Artist designs clouds with a
GUI based tool
• Use simple shapes (boxes, spheres) to model the basic cloud shapes
• Fill boxes randomly with (textured) sprites
![Page 40: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/40.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
3. Virtual Clouds – An Artistic Approach
3.1 Generating / Designing Clouds• Artist can specify density, etc.
• Artist specifies cloud coloring and shading
– Percentage of ambient color (time of day)
– Vertical color levels and colors
– Shading groups
– Directional colors (time of day)
• Store only sprite center points and sizes (+ coloring information)
![Page 41: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/41.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Where are we?1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 42: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/42.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
3. Virtual Clouds – An Artistic Approach
3.2 Rendering Clouds• Load sprite center points, sizes and color information
from disk
• Draw quads around sprite centers
• Map textures to quads (random rotation in quad plane)
![Page 43: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/43.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
3. Virtual Clouds – An Artistic Approach
3.2 Rendering Clouds• Rotate quads towards camera
• Calculate shading:function of angle between vector shading-group center <> sun and shading group center <> sprite
• Take into account directional and vertical color levels:interpolate between discrete levels specified by artist
• Render sprites to frame buffer
![Page 44: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/44.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Where are we?1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 45: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/45.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
3. Virtual Clouds – An Artistic Approach
3.3 Performance Tweaks• Use impostors for clouds outside a certain
range to the user aircraft– Octogonal ring
– Switch between impostors as user changes viewing direction
– Visual imperfection vs. gain of speed
![Page 46: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/46.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Where are we?1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 47: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/47.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
3. Virtual Clouds – An Artistic Approach
3.4 A few Notes on Animating Clouds• Not much animation done actually
• Only cloud formation and dissipation
– Done by slowly increasing transparency
– Start with sprites at the borders till finally reaching the innermost sprites
– Cloud formation is just the opposite
![Page 48: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/48.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Where are we?1. Introduction to Clouds2. Virtual Clouds based on physical Models
1. Generating Clouds2. Rendering Clouds using Volume Rendering3. Example: Clouds à la Dobashi4. Extending Dobashi: Multiple Forward Scattering5. A few Notes on Cloud Animation
3. Virtual Clouds – An Artistic Approach1. Generating / Designing Clouds2. Rendering Clouds3. Performance Tweaks4. A few Notes on Animation5. Evaluation
![Page 49: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/49.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
3. Virtual Clouds – An Artistic Approach
3.5 Evaluation / Comparison• Extremely rough approximization of the real
physics (e.g. Vertical shading levels)
• Inaccurate shading
• No self-shadowing or any shadowing at all
• Extremely flexible in controlling the appearance of clouds
• Pretty fast (even on older PCs)
• Visually not totally unconvincing ;-)
![Page 50: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/50.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
3. Virtual Clouds – An Artistic Approach
3.5 Evaluation / Comparison
![Page 51: Rendering Smoke & Clouds - Presentation](https://reader034.fdocuments.net/reader034/viewer/2022051314/5529589f4a79596d158b4726/html5/thumbnails/51.jpg)
computer graphics & visualization
Game Design - Rendering Smoke & CloudsJürgen Treml ([email protected])
Talk Summary• What are Clouds?• Effects to consider when dealing with clouds• Two different approaches on creating and
rendering clouds– Random noise + volume rendering– Artistic models
• Few hints on cloud animation
Questions?!?