# Ray Tracing Implicit Surfaces - PowerPoint PPT Presentation

PPT – Ray Tracing Implicit Surfaces PowerPoint presentation | free to view - id: 6b6b3-ZDc1Z

The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
Title:

## Ray Tracing Implicit Surfaces

Description:

### Ray Tracing Implicit Surfaces. John C. Hart. CS 319. Advanced Topics in Computer ... Sphere Tracing (Hart 96) Interval Analysis (Mitchell 89) Problem Statement ... – PowerPoint PPT presentation

Number of Views:34
Avg rating:3.0/5.0
Slides: 11
Provided by: csU70
Category:
Transcript and Presenter's Notes

Title: Ray Tracing Implicit Surfaces

1
Ray Tracing Implicit Surfaces
• John C. Hart
• CS 319
• Advanced Topics in Computer Graphics

2
Problem
• Intersection of ray r(t) with implicit surface
f(x) 0
• Easy to solve f(r(t)) when f algebraic
• Implicit surfaces can be defined by an arbitrary
function
• More general techniques
• LG Surfaces (KalraBarr 89)
• Sphere Tracing (Hart 96)
• Interval Analysis (Mitchell 89)

3
Problem Statement
• Given a cell (cube), can one guarantee that the
implicit surface
• passes through it?
• does not pass through it?
• Sign of function values at corners
• Different signs guarantees surface intersects
cell
• Same signs surface may or may not intersect cell
• How can we determine definitively if a surface
intersects any given cell?

4
Lipschitz Functions
• Function f is Lipschitz if L?? f(x) f(y)/x
yfor some value L
• Smallest such L is the Lipschitz constant Lip f
• Lipschitz constant is the maximum slope of a
continuous function
• L max f(x)
• Function might by Lipschitz only over a given
region (e.g. x2)
• Function might not be Lipschitz (e.g. sin 1/x)

5
Lipschitz Arithmetic
• Let f(x) and g(x) be real functions over a
compact subset of 3-D
• Lip(fg) max(fg) max(fg) ? max f
max g Lip f Lip g
• Lip(f g) max(f g) max(fg f g) ?
max(f g) max(f g)
• Let h be a real function
• Lip(f(h)) max(f(h) h) h Liph(x) f

6
Lipschitz Guarantee
f(x)
• Let L?? Lip f be a Lipschitz bound of f, and let
f(x)?? 0
• Then f ? 0 over the region(x f(x)/L, x
f(x)/L)
• Why? Because f cant get back to zero fast enough
• Let x be the center of a cell, and let r be the
radius of the cell (distance to farthest corner)
• If f(x)/L gt r then f ? 0 over the entire cell ?
no implicit surface in cell
• Otherwise subdivide the cell

f(x)/L
r
7
Root Isolation
• Let G be a Lipschitz bound of f(t)
df(r(t))/dt
• Derivative of f(r(t))?
• Directional derivative of f
• ? df(r(t))/dt ?f ?? rd
• Change in f in ray direction
• If f(t)/G gt??t then derivative of f cant get
back to zero over interval
• Hence f is monotonic over interval
• Hence we can use Newtons method to find root
• Otherwise subdivide interval

f(t)
f(t)
8
Sphere Tracing
• Let d(x,A) be a signed distance bound
• d(x,A)?? min x y for all y in A
• If f is Lipschitz with bound L then f(x)/L is a
signed distance bound
• d(x,A) is radius of a ball guaranteed not to
intersect implicit surface A
• March along ray by distance steps
• x r0
• x d(x,A) rd
• Intersection when steps converge

9
Interval Analysis
• Replace values x with ranges of values x0,x1
• Interval arithmetic
• a,b c,d ac,bd
• a,b c,d a-d,b-c
d)
• 1 / c,d 1/d,1/c
• a,b3 a3,b3
• Implement function using interval arithmetic

f a,b
a,b
10
Interval Roots
• Let y0,y1 fx0,x1
• If y0 gt 0 or y1 lt 0 then no root over interval
x0,x1
• Otherwise subdivide x0,x1 and recurse
• Let y0,y1 fx0,x1
• If y0 gt 0 or y1 lt 0 then f monotonic over
interval x0,x1
• Then we can find root with Newtons method
• Otherwise subdivide x0,x1 and recurse

y0,y1
x0, x1
y0,y1