[Ray Tracing] 2 Essential ray tracing algorithms

Essential ray tracing algorithms

1.Introduction

2.Ray/sphere intersection and mapping

2.1 Intersection of the sphere – Algebraic Solution

calculate the intersection of the sphere and one ray from algebraic perspective

2.2 Intersection of the sphere – Geometric Solution

Use some geometric properties to deduce the computation amount.

2.3 Comparison of algebraic and geometric solution

Algebraic solution uses many replicate calculation like add first and subtract later while geometric solutions reduces this procedure. They in fact are internal unity.

I think there are others approaches in algebraic and geometric to speed up the ray tracing.

2.4 Precision problems

four methods are introduced in float-point calculations when solving intersections.

2.5 Spherical inverse mapping

map the sphere into one plane

3.Ray/plane algorithms

3.1 Ray/plane intersection

Given a plane normal, origin and director of one ray, find the intersection on the plane.
Note: Two-sided plane and one-sided plane are different when finding the intersection.

3.2 Polygon Intersection

Finding if one point on a plane is inside a polygon in that plane.

  • Jordan Curve Theorem: two types introduced in the book, it determines whether the intersection is inside the polygon.

3.3 Convex quadrilateral Inverse mapping

Obtain the location of a point within the convex quadrilateral. Just give the conclusion no derivation. 

Triangle inverse mapping is a special case.

4.Ray/Box intersection

Tell you how to determine if the ray intersects the box but don’t tell you why.

5.Ray/Quadric intersection and mapping

5.1 Ray/Quadric Intersection

Give quadric equation to solve the intersection.
A guide to efficiency concern and floating point arithmetic imprecision.

5.2 Standard Inverse Mapping.

  • circle
  • cylinder
  • cone
  • others do not have std inverse mapping

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s