cs 431/636 advanced rendering techniquesdavid/classes/cs431/lectures/cgii_pres… · cs 431/636...
TRANSCRIPT
![Page 1: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/1.jpg)
CS 431/636Advanced Rendering Techniques
Dr. David BreenUniversity Crossings 149Tuesday 6PM → 8:50PM
Presentation 96/3/08
![Page 2: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/2.jpg)
Logistics
• Deadline for all assignments is– Friday 5PM 6/6/08 for graduating seniors– Wednesday 9AM 6/11/08 for everybody else
• Course evaluations
![Page 3: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/3.jpg)
Questions from Last Time?
• 3D textures• Procedural textures• Perlin noise
![Page 4: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/4.jpg)
Slide Credits
• Jian Huang - University of Tennessee
• Gordon Kindlmann & James Durkin -Cornell University
• Jonathan Cohen - Johns Hopkins University
• Pat Hanrahan - Stanford University
![Page 5: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/5.jpg)
Direct Volume Rendering (DVR):Ray-casting
Jian Huang
This set of slides references slides used by Prof.Torsten Moeller (Simon Fraser), Prof. Han-Wei
Shen (Ohio State).
![Page 6: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/6.jpg)
Papers
• Tuy and Tuy, 1984, IEEE CG & A (one of theearliest volume rendering techniques)
• Levoy, 1988 IEEE CG&A, and laterimprovements
• Drebin, Carpenter, Hanrahan, 1988, SIGGRAPH
Direct: No conversion to surface geometry
![Page 7: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/7.jpg)
Basic Idea
Based on the idea of ray tracing • Trace a ray from eachpixel into object space• Compute color valuealong the ray• Assign the value to thepixel
![Page 8: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/8.jpg)
Data Representation•3D volume data are represented by a finite number of crosssectional slices (hence a 3D raster)•On each volume element (voxel), stores a data value (if it usesonly a single bit, then it is a binary data set. Normally, we see agray value of 8 to 16 bits on each voxel.)
N x 2D arrays = 3D array
![Page 9: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/9.jpg)
Data Representation (2)
What is a Voxel? – Two definitions
A voxel is a cubic cell, whichhas a single value cover the entire cubic region
A voxel is a data pointat a corner of the cubic cellThe value of a point inside the cell is determined by interpolation
![Page 10: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/10.jpg)
Viewing
Ray Casting
• Where to position the volume and image plane • What is a ‘ray’ • How to march a ray
![Page 11: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/11.jpg)
Early Methods• Before 1988• Did not consider transparency• did not consider sophisticated light
transportation theory• were concerned with quick solutions• hence more or less applied to binary data
non-binary data - require sophisticated classification/compositing
methods!
![Page 12: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/12.jpg)
Ray Tracing -> Ray Casting• “another” typical method from traditional
graphics• Typically we only deal with primary rays -
hence: ray-casting• a natural image-order technique• as opposed to surface graphics - how do we
calculate the ray/surface intersection???• Since we have no surfaces - we need to carefully
step through the volume
![Page 13: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/13.jpg)
Ray Casting• Stepping through the volume: a ray is cast into
the volume, sampling the volume at certainintervals
• The sampling intervals are usually equi-distant,but don’t have to be (e.g. importance sampling)
• At each sampling location, a sample isinterpolated / reconstructed from the gridvoxels
• popular filters are: nearest neighbor (box),trilinear (tent), Gaussian, cubic spline
• Along the ray - what are we looking for?
![Page 14: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/14.jpg)
Example: Using the nearestneighbor kernel
In Tuys’ paperQ = P + K x V
At each step k, Q is roundedoff to the nearest voxel(like the DDA algorithm)
Check if the voxel is on the boundary or not (compareagainst a threshold)
If yes, perform shading
![Page 15: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/15.jpg)
Basic Idea of Ray-castingPipeline
- Data are defined at the corners of each cell (voxel)
- The data value inside the voxel is determined using interpolation (e.g. tri-linear)
- Composite colors and opacities along the ray path
- Can use other ray-traversal schemes as well
c1
c2
c3
![Page 16: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/16.jpg)
Ray Traversal Schemes
Depth
IntensityMax
Average
AccumulateFirst
![Page 17: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/17.jpg)
Ray Traversal - First
Depth
Intensity
First
• First: extracts iso-surfaces (again!)done by Tuy&Tuy ’84
![Page 18: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/18.jpg)
Ray Traversal - Average
Depth
Intensity
Average
• Average: produces basically an X-ray picture
![Page 19: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/19.jpg)
Ray Traversal - MIP
Depth
IntensityMax
• Max: Maximum Intensity Projectionused for Magnetic Resonance Angiogram
![Page 20: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/20.jpg)
Ray Traversal - Accumulate
Depth
Intensity
Accumulate
• Accumulate opacity while compositing colors:make transparent layers visible!Levoy ‘88
![Page 21: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/21.jpg)
Raycasting
color
opacity
1.0
volumetric compositing
object (color, opacity)
![Page 22: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/22.jpg)
Raycasting
color
opacity
Interpolationkernel
1.0
object (color, opacity)
volumetric compositing
![Page 23: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/23.jpg)
Raycasting
color c = c s as(1 - a) + c
opacity a = a s (1 - a) + a
1.0
object (color, opacity)
volumetric compositingInterpolationkernel
![Page 24: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/24.jpg)
Raycasting
color
opacity
1.0
object (color, opacity)
volumetric compositing
![Page 25: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/25.jpg)
Raycasting
color
opacity
1.0
object (color, opacity)
volumetric compositing
![Page 26: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/26.jpg)
Raycasting
color
opacity
1.0
object (color, opacity)
volumetric compositing
![Page 27: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/27.jpg)
Raycasting
color
opacity
1.0
object (color, opacity)
volumetric compositing
![Page 28: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/28.jpg)
Raycasting
color
opacity
object (color, opacity)
volumetric compositing
![Page 29: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/29.jpg)
Volume Rendering PipelineAcquired values
Data preparation
Prepared values
classificationshading
Voxel colors
Ray-tracing / resampling Ray-tracing / resampling
Sample colorscompositing
Voxel opacities
Sample opacities
Image Pixels
![Page 30: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/30.jpg)
DCH DVR Pipeline
![Page 31: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/31.jpg)
DCH - PipelineOriginal data
Material percentage volumes
Color volumeOpacity volumeDensity volume
Gradient Shaded volume
Transformed volumeFinal image
Classification
NormalsShading
shears
compositing
![Page 32: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/32.jpg)
Common Components of GeneralPipeline
• Interpolation/reconstruction
• Classification or transfer function
• Gradient/normal estimation for shading– Question: are normals also interpolated?
![Page 33: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/33.jpg)
Levoy - Interpolationeye
image pixel
viewing ray
voxel
sample point
trilinearinterpolation
![Page 34: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/34.jpg)
Levoy – Gradient/Normals• Central difference• per voxel
2
2
2
1,,1,,
,1,,1,
,,1,,1
-+
-+
-+
-=
-=
-=
kjikjiz
kjikjiy
kjikjix
vvG
vvG
vvG
X+1y-1,
Y+1
z-1
![Page 35: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/35.jpg)
Levoy - Compositing• Image order• back-to-front• using the over operator
a+a-⋅a=a
a⋅+a-⋅=
)1(
)1(
inout
inout CCC
![Page 36: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/36.jpg)
Levoy - Shading• Phong Shading + Depth Cueing
( )( )
( ) ( ) ))()((21
nsd
pap HxNkLxNk
xdkk
CkCxC ⋅+⋅
++=
• Cp = color of parallel light source• ka / kd / ks = ambient / diffuse / specular light coefficient• k1, k2 = fall-off constants• d(x) = distance to picture plane• L = normalized vector to light• H = normalized vector for maximum highlight• N(xi) = surface normal at voxel xi
![Page 37: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/37.jpg)
Classification
Classification: Mapping from data to opacities
Region of interest: high opacity (more opaque) Rest: translucent or transparent
The opacity function is typically specified by the user
Levoy came up with two formula to compute opacity1. Isosurface
2. Region boundary (e.g. between bone and fresh)
![Page 38: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/38.jpg)
Classification/TransferFunction
• Maps raw voxel value into presentable entities:color, intensity, opacity, etc.
Raw-data Æ material!(R, G, B, a, Ka, Kd, Ks, ...)
• May require probabilistic methods (Drebin).Derive material volume from input. Estimate % ofeach material in all voxels. Pre-computed. AKAsegmentation.
• Often use look-up tables (LUT) to store thetransfer function that are discovered
![Page 39: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/39.jpg)
Opacity function (1)
Goal: visualize voxels that have a selected threshold value fv - No intermediate geometry is extracted - The idea is to assign voxels that have value fv the maximum opacity (say a) - And then create a smooth transition for the surrounding area from 1 to 0 -Levoy wants to maintain a constant thickness for the transition area.
![Page 40: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/40.jpg)
DCH - Material Percentage V.• Probabilistic classifier• probability that a voxel has intensity I:
• pi - percentage of material• Pi(I) - prob. that material i has value I• Pi(I) given through statistics/physics• pi then given by:
( ) ( )Â=
=n
iii IPpIP
1
( ) ( )
( )Â=
= n
jj
ii
IP
IPIp
1
![Page 41: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/41.jpg)
DCH - Classification• Like Levoy - assumes only two materials per voxel• that will lead to material percentage volumes
• from them we conclude color/opacity:
– where Ci=(aiRi, aiGi, aiBi, ai)
Â=
=n
iiiCpC
1
![Page 42: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/42.jpg)
DCH- Classification
Air Fat TissueBone
CT Number
Air Fat Tissue Bone
histogramConstituent’s Distributions
Material Assignment%
CT
![Page 43: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/43.jpg)
Levoy - Improvements• Levoy 1990• front-to-back with early ray termination
a = 0.95• hierarchical octree data structure
– skip empty cells efficiently
![Page 44: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/44.jpg)
Semi-Automatic Generation ofTransfer Functions
G. Kindlmann, J. Durkin
Cornell University
Presented by Jian Huang, CS594, Spring 2002
![Page 45: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/45.jpg)
Direct Volume Rendering
• Render the volume by computing thevolume integration – Direct VolumeRendering
• Iso-surfacing: extract the iso-surfaces fromthe dataset, and render as surface geometryprimitives
• Pros and cons: ? depend on who you talk to
![Page 46: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/46.jpg)
Example
![Page 47: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/47.jpg)
What are we looking for?
• look for boundary regions betweenrelatively homogeneous material in thescalar volume
• The boundary might be associated with arange of values
• Use an opacity function to modulate theparameters corresponding to this range
![Page 48: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/48.jpg)
Getting a good transfer function
• Transfer function: assign renderable opticalproperties to the numerical values
• This paper focuses on the opacity functions
• Getting a good transfer function is tricky
![Page 49: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/49.jpg)
Example
![Page 50: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/50.jpg)
The Boundary Model
• Assumption– There exist a sharp, discontinuous change in the
physical property of the entity
– The data/signal has been low-pass filtered,(band-limited, or, blurred)
– The blur is isotropic
– The blurring function (low-pass filter) isGaussian
![Page 51: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/51.jpg)
The Boundary Model (2)
![Page 52: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/52.jpg)
Directional Derivatives
![Page 53: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/53.jpg)
Directional Derivatives (2)
![Page 54: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/54.jpg)
Relations between f, f’, f’’
![Page 55: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/55.jpg)
Histogram Volume
• Measure the relationship between the datavalue and its derivatives.
![Page 56: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/56.jpg)
![Page 57: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/57.jpg)
Histogram Creation
• Measure f and its directional derivativesexactly once per voxel, at the originalsample points of the data set
![Page 58: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/58.jpg)
Implementation
![Page 59: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/59.jpg)
Histogram Volume Inspection
![Page 60: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/60.jpg)
More examples
![Page 61: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/61.jpg)
![Page 62: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/62.jpg)
![Page 63: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/63.jpg)
![Page 64: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/64.jpg)
Where is the boundary?
• Average 1st directional derivative of f overall the positions x at which f(x) equals v,– g(v)
• Average 2nd directional derivative of f overall the positions x at which f(x) equals v,– h(v)
![Page 65: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/65.jpg)
![Page 66: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/66.jpg)
![Page 67: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/67.jpg)
![Page 68: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/68.jpg)
![Page 69: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/69.jpg)
![Page 70: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/70.jpg)
![Page 71: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/71.jpg)
![Page 72: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/72.jpg)
![Page 73: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/73.jpg)
Splatting
Jian Huang, CS 594, Spring 2002
This set of slides reference slides made by Ohio State University alumni overthe past several years.
![Page 74: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/74.jpg)
Volumetric Ray Integration
color
opacity
object (color, opacity)
1.0
![Page 75: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/75.jpg)
Splatting• Lee Westover - Vis 1989; SIGGRAPH 1990
• Object order method
• Front-To-Back or Back-To-Front
• Original method - fast, poor quality
• Many many improvements since then!– Crawfis’93: textured splats
– Swan’96, Mueller’97: anti-aliasing
– Mueller’98: image-aligned sheet-based splatting
– Mueller’99: post-classified splatting
– Huang’00: new splat primitive: FastSplats
![Page 76: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/76.jpg)
Splatting• Volume = field of 3D interpolation kernel
– One kernel at each grid voxel
• Each kernel leaves a 2D footprint on screen– Voxel contribution = footprint ·(C, opacity)
• Weighted footprints accumulate into image
voxel kernels screen footprints =splats
screen
![Page 77: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/77.jpg)
Splatting
• Volume = field of 3D interpolation kernel– One kernel at each grid voxel
• Each kernel leaves a 2D footprint on screen– Voxel contribution = footprint ·(C, opacity)
• Weighted footprints accumulate into image
voxel kernels screen footprints =splats
screen
![Page 78: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/78.jpg)
Splatting
• Volume = field of 3D interpolation kernel– One kernel at each grid voxel
• Each kernel leaves a 2D footprint on screen– Voxel contribution = footprint ·(C, opacity)
• Weighted footprints accumulate into image
voxel kernels screen footprints =splats
screen
![Page 79: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/79.jpg)
Splatting
• Volume = field of 3D interpolation kernel– One kernel at each grid voxel
• Each kernel leaves a 2D footprint on screen– Voxel contribution = footprint ·(C, opacity)
• Weighted footprints accumulate into image
voxel kernels screen footprints =splats
screen
![Page 80: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/80.jpg)
Footprint Extent
Approximate the 3D kernel (h(x,y,z))extent by a sphere
![Page 81: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/81.jpg)
Footprint Table
A popular kernel is a three-dimensional Gaussian (radially symmetric)
As 1D integration of 3D Gaussian is still a 2D Gaussian – we can just skip the Z integration and evaluate the Gaussianfunction on 2D image space after voxel projection
Generic footprinttable
preprocessing
![Page 82: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/82.jpg)
View-dependent footprint
It is possible to transform a sphere kernel into A ellipsoid
• The projection of an ellipsoid is an ellipse
• We need to transform the generic footprint table to the ellipse
![Page 83: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/83.jpg)
View-dependent footprint (2)
![Page 84: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/84.jpg)
Example Footprint at DifferentResolutions
![Page 85: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/85.jpg)
Footprint - principal idea
• Draw each voxel as a cloud of points(footprint) that spreads the voxelcontribution across multiple pixels.
• Larger footprint -> larger spatialkernel extent -> lower frequencycomponents -> more blurring– Large pixel/voxel ratio
![Page 86: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/86.jpg)
Rendering a Splat• Use texture mapping hardware to resample footprint
table (either single density channel or separateclassified r,g,b,a channels)
• Or, use FastSplats to render each splat as a graphicsprimitive of itself
![Page 87: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/87.jpg)
Splatting - efficiency
• “footprint” - splatted (integrated) kernel
• if interpolation kernel is isotropic (spherical) then its footprint isindependent of the view point (for orthographic viewing)
• for perspective - footprint can be approximated with an ellipse
• Hence, for common cases, we can pre-integrate it (efficient!)
• for perspective projection, to approximate, we have to compute theorientation of the ellipse
![Page 88: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/88.jpg)
Splatting - Highlights
• Footprints can be pre-integrated– fast voxel projection
• Advantages over ray-casting:– Fast: voxel interpolation is in 2D on screen
– More accurate integration (analytic for X-ray)
– More accurate reconstruction (afford better kernels)
– Only relevant voxels must be projected
![Page 89: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/89.jpg)
Early Implementation – AxisAligned Splatting
• Voxel kernels are added within axis-aligned sheets
• Sheets are composited front-to-back
• Sheets = volume slices most perpendicular to the imageplane
image plane at 70° image plane at 30°
volume slices
x
yz
volume slices
![Page 90: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/90.jpg)
Early Implementation – AxisAligned Splatting
sheet buffer
compositing buffer
volume slices
image plane
• Volume
![Page 91: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/91.jpg)
Early Implementation – AxisAligned Splatting
sheet buffer
compositing buffer
volume slices
image plane
• Add voxel kernels within first sheet
![Page 92: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/92.jpg)
Early Implementation – AxisAligned Splatting
sheet buffer
compositing buffer
volume slices
image plane
• Transfer to compositing buffer
![Page 93: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/93.jpg)
Early Implementation – AxisAligned Splatting
sheet buffer
compositing buffer
volume slices
image plane
• Add voxel kernels within second sheet
![Page 94: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/94.jpg)
Early Implementation – AxisAligned Splatting
sheet buffer
compositing buffer
volume slices
image plane
• Composite sheet with compositing buffer
![Page 95: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/95.jpg)
Early Implementation – AxisAligned Splatting
sheet buffer
compositing buffer
volume slices
image plane
• Add voxel kernels within third sheet
![Page 96: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/96.jpg)
Early Implementation – AxisAligned Splatting
sheet buffer
compositing buffer
volume slices
image plane
• Composite sheet with compositing buffer
![Page 97: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/97.jpg)
What Doesn’t Work?• Mathematically, the early splatting methods only work for X-ray type of
rendering, where voxel ordering is not important– Bad approximation for other types of optical models
• Object ordering is important in volume rendering, front objects hideback objects– need to composite splats in proper order, else we get bleeding of
background objects into the image (color bleeding!)• Axis- aligned approach add all splats that fall within a volume slice
most parallel to the image plane, composite these sheets in front- to-back order– Incorrect accumulating on axis-aligned face cause popping
• A better approximation with Riemann sum is to use the image-alignedsheet-based approach
![Page 98: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/98.jpg)
Problems Early Implementation –Axis Aligned Splatting
• In-accurate compositing, result in color bleedingand popping artifacts (Demo)!
Part of this voxel
gets composited beforepart of this voxel
![Page 99: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/99.jpg)
Image-Aligned Sheet-Buffer
sheet buffer
compositing buffer
• Slicing slab cuts kernelsinto sections
• Kernel sections are addedinto sheet-buffer
• Sheet-buffers arecomposited
image plane
![Page 100: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/100.jpg)
Image-Aligned Sheet-Buffer
sheet buffer
compositing buffer
• Slicing slab cutskernels into sections
• Kernel sections areadded into sheet-buffer
• Sheet-buffers arecomposited
image plane
![Page 101: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/101.jpg)
Image-Aligned Sheet-Buffer
sheet buffer
compositing buffer
• Slicing slab cuts kernelsinto sections
• Kernel sections are addedinto sheet-buffer
• Sheet-buffers arecomposited
image plane
![Page 102: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/102.jpg)
Image-Aligned Sheet-Buffer
sheet buffer
compositing buffer
• Slicing slab cutskernels into sections
• Kernel sections areadded into sheet-buffer
• Sheet-buffers arecomposited
image plane
![Page 103: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/103.jpg)
Image-Aligned Sheet-Buffer
sheet buffer
compositing buffer
• Slicing slab cutskernels into sections
• Kernel sections areadded into sheet-buffer
• Sheet-buffers arecomposited
image plane
![Page 104: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/104.jpg)
Image-Aligned Sheet-Buffer
sheet buffer
compositing buffer
• Slicing slab cutskernels into sections
• Kernel sections areadded into sheet-buffer
• Sheet-buffers arecomposited
image plane
![Page 105: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/105.jpg)
Image-Aligned Sheet-Buffer
sheet buffer
compositing buffer
• Slicing slab cutskernels into sections
• Kernel sections areadded into sheet-buffer
• Sheet-buffers arecomposited
image plane
![Page 106: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/106.jpg)
IASB Splatting
• No popping or color bleeding
• Sharp, noise-free images
![Page 107: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/107.jpg)
Occlusion Culling
• A voxel is only visible if the volumematerial in front is not opaque
occluded voxel: does notpass visibility test
wall of occluding voxels
occlusion map = opacity image
screen
![Page 108: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/108.jpg)
Anti-aliasing• Needed to preserve small features
• Needed for the diverging rays in perspective
• In splatting, resize the footprint according to depth
Aliased anti-aliased
![Page 109: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/109.jpg)
Motion Blur• Stretch the reconstruction kernel in the direction
of movement.
• Stretch the splat footprint in the direction of theprojected movement (2D).
![Page 110: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/110.jpg)
Camera Depth-of-Field• Two possible approaches:
– Low-pass filter the splats
– Low-pass filter the sheets
Plain with Depth-of-Field
![Page 111: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/111.jpg)
Procedural Textures• Easily done with voxel coloring
![Page 112: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/112.jpg)
Bump-Mapping
• If calculating the normal per-pixel, we canmodulate it to achieve bump mapping.
![Page 113: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/113.jpg)
Examples
7.25 sec 9.41 sec (procedural) 7.99 sec
![Page 114: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/114.jpg)
Other DVR Algorithms and AComparison
Jian Huang, CS 594, Spring 2002
![Page 115: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/115.jpg)
Shear Warp Algorithm• Goal – speed!!• Approach: make viewing rays parallel to each other and perpendicular
to the image– Achieved by a simple shear
shear
warp
Original method only works with orthogonal projection, later extendedto perspective projection but less efficient and less known.
![Page 116: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/116.jpg)
Shear Warp Algorithm• Shoot rays in every sheared slice and use bilinear interpolation to
estimate a sample value– only interpolate in-slice, not between slices as in usual raycasting– cheap bilinear interpolation instead of trilinear interpolation in raycasting
• Volume is projected onto a baseplane parallel to the volume slices– NOT the image plane: the resulting image is called intermediate image
• Undo the shearing by warping the intermediate image onto the trueimage plane (use M-1
shear, the inverse of M-shear )• The mapping of the pixels in the intermediate image to the true image is
done via resampling, using another bilinear interpolation
![Page 117: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/117.jpg)
Shear Warp Algorithm
![Page 118: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/118.jpg)
Shear Warp Algorithm• General algorithm:
warpview MSPM ⋅⋅=
• Where– Mview = general viewing matrix
– P = permutation matrix, which transposes the coordinate system inorder to make the z-axis the principal viewing axis
– S = transforms volume into sheared object space
– Mwarp = sheared object coordinates into image coordinates
![Page 119: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/119.jpg)
Shear Warp Algorithm
![Page 120: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/120.jpg)
Texture Mapping
2D image 2D polygon
+
Textured-mappedpolygon
![Page 121: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/121.jpg)
Texture Mapping (2)
(0,0) (1,0)
(0,1) (1,1)
Each texel has 2D coordinates assignedto it.
assign the texture coordinatesto each polygon to establish the mapping
(0,0.5) (0.5,0.5)
(0,0) (0.5,0)
![Page 122: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/122.jpg)
Tex. Mapping for Volume Rendering
Remember ray casting …
y
z
![Page 123: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/123.jpg)
Texture based volume rendering
x
z
y
• Render each xz slice in the volume as a texture-mapped polygon• The texture contains RGBA (color and opacity) • The polygons are drawn from back to front
![Page 124: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/124.jpg)
Texture based volume rendering
Algorithm: (using 2D texture mapping hardware)
Turn off the z-buffer; Enable blendingFor (each slice from back to front) { - Load the 2D slice of data into texture memory - Create a polygon corresponding to the slice - Assign texture coordinates to four corners of the polygon - Render and composite the polygon (use OpenGL alpha blending)}
![Page 125: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/125.jpg)
Some Considerations… (2)
What if we change the viewing position?
That is okay, we justchange the eye position(or rotate the polygons and re-render),
Until …
y
z
![Page 126: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/126.jpg)
Some Considerations… (3)
Until …
y
z
You are not going to see anything this way …
This is because the view direction now is Parallel to the slice planes
What do we do?
![Page 127: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/127.jpg)
Some Considerations… (4)
y
z
What do we do?
• Change the orientation of slicing planes
• Now the slice polygons are parallel to XZ plane in the object space
• We need to reorganize the input textures
• Reorganize the textures on the fly is too time consuming. We might want to prepare this texture sets beforehand
![Page 128: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/128.jpg)
Some Considerations… (5)
When do we need to change the slicing planes?
?
y
z
When the major component of view vector changes from z to y
![Page 129: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/129.jpg)
Major component of view vector?
Normalized view vector (x,y,z) -> get the maximum one
If x: then the slicing planes are parallel to yz planeIf y: then the slicing planes are parallel to xz planeIf z: then the slicing planes are parallel to xy plane
-> This is called (object-space) axis-aligned method.
Therefore, we need to keep three copies of data aroundall the time!!
Some Considerations… (6)
![Page 130: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/130.jpg)
Problem
Object-space axis-aligned method can create artifact:Popping Effect
y
z
V = 44.999
V = 45.0001
There is a sudden change of viewing slicing (and thus the samplingrate) then the view vector transits from one major direction to another.The change in the result image intensity can be quite visible
![Page 131: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/131.jpg)
Solution
Use image-aligned slicing plane: the slicing planes are always parallel to the image plane
![Page 132: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/132.jpg)
3D Texture Mapping
Arbitrary slicing through the volume and texturemapping capabilities are needed
- Arbitrary slicing polygon: this can be computed using software in real time
This is basically polygon-volumeclipping
![Page 133: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/133.jpg)
3D Texture Mapping
Texture mapping to the arbitrary slices
This requires 3D texture mapping harware
Input texture: volume (pre-classified and shaded) essentially an (R,G,B,a) volume
Depending on the position of the polygon, appropriate textures are resampled, constructed andmapped to the polygon.
![Page 134: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/134.jpg)
Solid (3D) Texture Mapping
Now the input texture space is 3D
Texture coordinates: (r,s,t)
(0,0,0) (1,0,0)
(0,1,0)(1,1,0)
(0,1,1) (1,1,1)
(r0,s0,t0) (r1,s1,t1)
(r2,s2,t2) (r3,s3,t3)
![Page 135: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/135.jpg)
Pros and ConsAdvantages: - Fast with volume sizes that the hardware can take e.g. 2 fps for 256 cube volumes - No popping effect
Disadvantages: - Need to compute the slicing planes for every view angle - only supported on high end hardware - low quality without per-pixel classification shading and classification (i.e. post-classification and shading)
Both 2D or 3D hardware texture mapping methods can not computeShading on the fly. The input textures have to be pre-shaded.
With multi-texturing functions, per-pixel shading and classification arebecoming possible.
![Page 136: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/136.jpg)
A Practical Comparison
• Quality is directly correlated with– how closely the volume ray integration can be approximated– and the quality of volume reconstruction– post-reconstruction shading and classification are key to visual
sharpness of renderings.
• Ray-casting and image-aligned splatting are of high quality,each is more efficient for different types of data sets
• Not considering limitations of hardware precision, 3D texturemapping can achieve high quality as well
• Shear-warp is fast but poor quality
![Page 137: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/137.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
���������������� ����������������
![Page 138: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/138.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
��������������������� ���������������������
��������������� ���������������� �
## �������������� ����������������� ���
## � ���������������������������� � �� ���������������������������� � �
������� �������
��� ��������������� ������������
## ������ �������������� ��� ������������ �������������� ��� ������
����������������������������������
## � �������������������� ���� �������������������� ���
![Page 139: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/139.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������������������� ������������������������� ������������������������� ������
���������� ��������! ������� �"���������� ��������! ������� �"
## #����$#����$������������������
���������� ������������������%�������������� ������������������%����
&�� ��� !#�������&�'��"&�� ��� !#�������&�'��"
## (���'���(���'���$$��������������������
![Page 140: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/140.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
���������������� ������������������������ ������������������������ ��������
�����$���!�
%" ����&'�
�������������
(�� ���!�
�������������
����������!�
� ����)��
![Page 141: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/141.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
���������������������������������������
��� ������� ����
## &��!��������������������� ��������&��!��������������������� ��������
## �!������������������� �!�������������������
## )�����������*�� ���������)�����������*�� ���������++�������� ���������� ��
,�������,�������
## -��������� ���� �����������������-��������� ���� �����������������������������++��������� �������������� �����
## # �������������������������� ����# �������������������������� �������.�������.����++���������� ��������������� �����
![Page 142: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/142.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������������������������������������������������������
� �������� !���!������������� �������� !���!������������
��� ���������������� ���������� ��� ���������������� ����������
## ��*���� � ��� ���� ������*���� � ��� ���� ����
![Page 143: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/143.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������������ �������������� �������������� ��
����� ����������� �������*��������� ����������� �������*����
## � � �� � �
## �������� � �������� �
## ��'���'�
## ��� ������ ���*����� ������ ���*��
������������� ����*��������� ������������� ����*���������
![Page 144: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/144.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
�������������� �������������� ��������������
�������������! ���� �������������������! ���� ������++����������
&�� �����������!� ��!�����������&�� �����������!� ��!�����������
## ������*����� ������ ����������*����� ������ ����++�����!���������� ������!���������� �
%������������������� ������ ��� ��%������������������� ������ ��� ��������������������
## *� ��*����������� ��*��� *� ��*����������� ��*���
## ���������*�����������������!!���������������*�����������������!!������
**� � �*������.�������*������ ��!�� � �*������.�������*������ ��!���������� � ����������� � ��
![Page 145: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/145.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
� �����! "�������� ������ �����!! "�������"�������
(��������(��������� ������ ����� ���� ����
��������������*��� ���������������*��� �&���������&���������� ��� �� ���� ����
��������������*��� ���������������*��� �
�����$���!�%" ����&'��������������(�� ���!��������������
����������!�� �����)+� ����,)�
![Page 146: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/146.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
� �����! ������ ������ �����!! ����������
�����$���!�
%" ����&'�
�������������
(�� ���!�
�������������
����������!�
� ����)+�
![Page 147: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/147.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
#�������������#�������������#�������������
&����� */������������� ������&����� */������������� ������
��������� */���� !������������������������������ */���� !���������������������
������������������� � ������ � ���������������
## 0������� �������������� �� ����*� */����0������� �������������� �� ����*� */����
![Page 148: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/148.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
"���)����*� ��������"���)����*�"���)����*� ����������������
������ � � ����������� �� ��������� � � ����������� �� ���
��! ���� ���! ���� �
��� �� ����$������*������� ������ �� ����$������*������� ���
## ������!!������������ ���*��������!!������������ ���*��
#����������������������#����������������������
## ��������� ���!������������� ���!����
## ���������������������� ������������������������� ���
![Page 149: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/149.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������+����������������+����������
� ������� � ������� ��� ������� � ������� ��
%%++��������������������
� ������������������� � ����������� ������������������� � ����������
������� ������������� ������
���������������$���� ������� ��� ����������������$���� ������� ��� �
![Page 150: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/150.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������� ,�#����������� ,�#����
&���������������� ���&���������������� ���
)����������������� ����'�)����������������� ����'�
1����� ������������ ������ ��� �1����� ������������ ������ ��� �
����� !�������������������� !���������������
![Page 151: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/151.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������� �#���������� �#���
&�������� ����'�! ������&�������� ����'�! ������
%������������%������������
&������� ������������! ����������&������� ������������! ����������
&����������� ����� ��� !�.��&����������� ����� ��� !�.����� ������������������ ���������������
2����������������� ������������� 2����������������� ������������� ������ ��� �� ���������� ��� �� ����
�������� ��������� ������������� �������� ��������� ��������������� ����*��%�� ����*��%++��������������������
![Page 152: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/152.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
����������������������������
���� .���� ������� ������ .���� ������� ��
%������'��%������'��
���������!��������������!�����
%���,��� �%���,��� �
#��3#�.��� ���������#��3#�.��� ���������
4������4������
-�����'�-�����'�
� � �/������ � �/�����
![Page 153: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/153.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
� ����������� ����������
�5������ ����"�5������ ����"
�).������ ����"�).������ ����"
## � ����� ���$� � ������/������ ����� ���$� � ������/�����
�� � ����2���"�� � ����2���"
## ������������$ -%� � �/�����������������$ -%� � �/�����
�� ���������"�� ���������"
## ��������������������$���� ��������������������������$���� �������������� ��������� �
![Page 154: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/154.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
� �����! ����� ������� ������ �����!! ����� ����������� ������
��������-� ��!�
%" ����&'�
���������.���
���/���0�����
����������
$�&��&���-��!�
�������������
����������!�
� �������
![Page 155: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/155.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
� �����! ������ ������ �����!! ����������
6����������76����������7
������� ����$������� ����$
�.������ ����$�.������ ����$
� � ��������� � ��������
��������-� ��!�%" ����&'����������
.������/���0���������������$�&��&��
�-��!�������������� ����������!�
� �������
![Page 156: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/156.jpg)
What Dreams May Come 1998
![Page 157: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/157.jpg)
What Dreams May Come 1998
![Page 158: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/158.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������������ ��������������������������� ������������ ������������������
���������������������� �� ��������� �� ���
![Page 159: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/159.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������������ ������ ������������ ������
���������� ����������� � ��� ������ ����� ������ �� ��������������
���� ��������� �����
## ����������������� �������������������� ���
## ������������� � ������������������ � �����
## ��������������������������������������
## ����� ��� �������� ��� ���
![Page 160: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/160.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
���� ����������������� ���� �����������������
����� �� �������������� �� ���������
������ �� ������� �� �
����� �������������������� ���������������
![Page 161: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/161.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
��� ������� �������������������� ����������� ��� ��������������
������������������� ���������� �������
���� �������� ����
!������������������ �!������������������ �
" ����� �� ������� ���" ����� �� ������� ���
## �#�#��������������������� � �����#�#��������������������� � ������� ������ �#��� ������ �#
![Page 162: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/162.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
���������������� ����������������
$ �����$ �����
## ������������������� ������������������������������ ���������������� ���������� ����� ����������
%�� ���%�� ���
## ������ ����������&����� ������ ������������ ����������&����� ������ �������#�#��������������#����������� ����#�#��������������#����������� ���
%���%���
## ���������������������� ����������������������������� �������
"� ���"� ���
## '���������������������&���� �'���������������������&���� �� ��� ���������� ���� ��� ���������� ���
![Page 163: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/163.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
���������������������������������������
����� ��������������� ������������� ��������������� ��������
��� ����� ������� ������� ����� ������� ����
����������$���% ���$���% ��� ��� ���
� &���� &�����'�����������'���������
" � ���������� ������"���" � ���������� ������"���
���(��)� ���(��)���������������������������
���������� ������������" ����*+���" ����*+�
![Page 164: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/164.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������������������ ������������������
%������������ ���%������������ ���
$ ����������� $ �����������
$ ������� ������ � ���$ ������� ������ � ���
![Page 165: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/165.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������������������������������
(����������&������������������ �(����������&������������������ �
������ �������������������� ��������������
## )���*��&������� ���)���*��&������� ���
## �� ���������� ��������
## %�� ����������%�� ����������
## '����������'����������
## +��������� �������+��������� �������
## $������������$������������
![Page 166: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/166.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������������������������
������ ��������������� ��������� ��������� ����������� �� ������������������ ���,��������������� ���,���������
����������� ���������� ������������������� ���������� �����������������������������&�� �������������������������&�� ������� ���� �
,
�
![Page 167: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/167.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
����� � ����� �
����� �����&�� ����� ������������������ �����&�� ����� �������������
## ������������� � ��������������������������� � ��������������
## +������ � �������������� ������&�+������ � �������������� ������&���� ����������� ���-�������������������� ����������� ���-����������������� ����� ��.# ����� ��.#
## $���������&������� ��������� ����$���������&������� ��������� ���������� � ���������� � ����
���� �������������� ������������� �������������� ���������
## !����������� � �������������������!����������� � ��������������������� ������������������������������ ����������������������������
���� ��� ����������� � ���&������������� ��� ����������� � ���&���������
![Page 168: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/168.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
����� ��!"�������� ��!"�������� ��!"���
����������$���% ���$���% ��� ��� ���
� &���� &�����'�����������'���������
" � ���������� ������"���" � ���������� ������"���
���(��)� ���(��)���������������������������
���������� ������������" ����*����" ����*��
![Page 169: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/169.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
������#����������#����
/������ ������������ �������/������ ������������ �������
$�-���.$�-���.����������������--������������,,��..
/�-/�-������������,,��..����������������--����������..
�0/$�-���.�0/$�-���.����������������--����������..
1��1�� 2���&���2���&��� ��� ��� ��� �������������� ��� ��� �����������
��������������������������������������
��3�� ��� � ������� ������������������3�� ��� � ������� ����������������
������� ������������ ����������� ������������ ����
![Page 170: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/170.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
��$���������%� ��$���������%�
!������������� �����!������������� �����
## ������������&� ����� ������ �����������������&� ����� ������ ���������&����������� ���������&����������� �����
$ ������$ ������
## ����� ������ �������� ���������� ������ �������� �����
������� ������������ �����
## ������� �������� ���������� ���������� �������� ���������� ���
������ �,��� ����������� �,��� �����
## � ����� ���� ���������� ���������� �� ��������������� �,���� ��������������� �,������������
![Page 171: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/171.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
����������!"�������������!"�������������!"���
����������$���% ���$���% ��� ��� ���
� &���� &�����'�����������'���������
" � ���������� ������"���" � ���������� ������"���
���(��)� ���(��)���������������������������
���������� ������������" ����*����" ����*��
![Page 172: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/172.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
����������!"�������������!"�������������!"���
����������$���% ���$���% ��� ��� ���
� &���� &�����'�����������'���������
" � ���������� ������"���" � ���������� ������"���
���(��)� ���(��)���������������������������
���������� ������������" ����*����" ����*��
![Page 173: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/173.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
����������!"�������������!"�������������!"���
����������$���% ���$���% ��� ��� ���� &���� &�����'���������" � ���������� ������'���������" � ���������� ����
��"��� ���(��)���"��� ���(��)�������������� ����������������������� ������������" ����*����" ����*��
![Page 174: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/174.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
&����'���� �������������&����'���� �������������&����'���� �������������
"���� �&�"���� �&�%�� ����%�� ����
## (�������(������������������ -������&�� ���.����������� -������&�� ���.
## 1����������������� ����������� ����1����������������� ����������� ���������� �������� ��
## $ ����������������� �� $ ����������������� ��
!��!���� ���4�! ���4�!
## 5�� ����&�� ������ � ����������� ����5�� ����&�� ������ � ����������� ����� ������ ��������� ������ ��������
## !���������&����������������� ���!���������&����������������� ���
![Page 175: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/175.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
&����(� �"��� �!"��� &����(�&����(� �"��� �!"��� �"��� �!"���
������ &�%��-���� &��'������ &�%��-���� &��'.���� %&�.���� %&� ��/����������(� ����/����������(� ��001 ����"��1 ����"��00
�� ��00(��(&&���� ����)�(��(&&���� ����)�������������� ����������������������� ������������" ������" ����
��2!���3���2!���3�
![Page 176: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/176.jpg)
��������������� �������������������������
������������������������������ ���!�"������������� �� �������
�����������!"��� ��������������!"��� ��������!"���
����������4 ��� �4 ��� � ��� &��'�� &��� &��'�� &00��������
5��������� &���5��������� &��� ���������)����������)���������������������
��� ������������� ������������" ����2����" ����2��
![Page 177: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/177.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk001.html
1 of 2 12/3/03 11:25 PM
Slide 1 of 32
![Page 178: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/178.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk002.html
1 of 2 12/3/03 11:25 PM
Slide 2 of 32
![Page 179: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/179.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk003.html
1 of 2 12/3/03 11:26 PM
Slide 3 of 32
![Page 180: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/180.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk005.html
1 of 2 12/3/03 11:27 PM
Slide 5 of 32
![Page 181: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/181.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk006.html
1 of 2 12/3/03 11:27 PM
Slide 6 of 32
![Page 182: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/182.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk007.html
1 of 2 12/3/03 11:27 PM
Slide 7 of 32
![Page 183: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/183.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk008.html
1 of 2 12/3/03 11:27 PM
Slide 8 of 32
![Page 184: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/184.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk009.html
1 of 2 12/3/03 11:28 PM
Slide 9 of 32
![Page 185: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/185.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk011.html
1 of 2 12/3/03 11:30 PM
Slide 11 of 32
![Page 186: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/186.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk012.html
1 of 2 12/3/03 11:30 PM
Slide 12 of 32
![Page 187: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/187.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk013.html
1 of 2 12/3/03 11:31 PM
Slide 13 of 32
![Page 188: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/188.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk014.html
1 of 2 12/3/03 11:31 PM
Slide 14 of 32
![Page 189: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/189.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk016.html
1 of 2 12/3/03 11:32 PM
Slide 16 of 32
![Page 190: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/190.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk018.html
1 of 2 12/3/03 11:33 PM
Slide 18 of 32
![Page 191: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/191.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk019.html
1 of 2 12/3/03 11:33 PM
Slide 19 of 32
![Page 192: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/192.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk020.html
1 of 2 12/3/03 11:34 PM
Slide 20 of 32
![Page 193: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/193.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk021.html
1 of 2 12/3/03 11:34 PM
Slide 21 of 32
![Page 194: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/194.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk022.html
1 of 2 12/3/03 11:34 PM
Slide 22 of 32
![Page 195: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/195.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk023.html
1 of 2 12/3/03 11:35 PM
Slide 23 of 32
![Page 196: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/196.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk024.html
1 of 2 12/3/03 11:35 PM
Slide 24 of 32
![Page 197: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/197.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk025.html
1 of 2 12/3/03 11:35 PM
Slide 25 of 32
![Page 198: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/198.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk026.html
1 of 2 12/3/03 11:36 PM
Slide 26 of 32
![Page 199: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/199.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk027.html
1 of 2 12/3/03 11:51 PM
Slide 27 of 32
![Page 200: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/200.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk028.html
1 of 2 12/3/03 11:51 PM
Slide 28 of 32
![Page 201: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/201.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk029.html
1 of 2 12/3/03 11:51 PM
Slide 29 of 32
![Page 202: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/202.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk030.html
1 of 2 12/3/03 11:52 PM
Slide 30 of 32
![Page 203: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/203.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk031.html
1 of 2 12/3/03 11:52 PM
Slide 31 of 32
![Page 204: CS 431/636 Advanced Rendering Techniquesdavid/Classes/CS431/Lectures/CGII_Pres… · CS 431/636 Advanced Rendering Techniques Dr. David Breen University Crossings 149 Tuesday 6PM](https://reader033.vdocuments.us/reader033/viewer/2022042216/5ebf02a3ab7a6e45d35c5d4c/html5/thumbnails/204.jpg)
Radiosity http://graphics.stanford.edu/courses/cs348b-02/lectures/lecture17/walk032.html
1 of 2 12/3/03 11:52 PM
Slide 32 of 32