# 15-462 Written Assignment 3

# Due in class Tuesday 11/12 or in Jessica Hodgins's mailbox in NSH 4th floor
by 9am on Wednesday 11/13

# All problems have equal weight.

## 1. Ray/Cylinder Intersection

Derive the equations for intersecting a ray with a cylinder. Start by
assuming that the cylinder is infinite and axis-aligned. Then generalize
to a capped cylinder of finite extent and then to one that is not necessarily
axis-aligned.

## 2. Visibility

You are creating a
game, all of which is set inside one extremely large building with many
rooms and corridors. Discuss how such a setting would impact visibility
culling, and describe an algorithm you would use to speed up your rendering
and achieve higher frame rates.

## 3. Soft Shadows

Shadows normally generated by raytracing and other means have the flaw
that they have hard edges--that is, there is no smooth penumbra, but
rather a sharp change from shadowed to unshadowed regions, even in
situations where a non-point light source would be desirable. Develop a general
idea for an algorithm which creates soft shadows, simulating a non-point
light source and generating a realistic penumbra. Discuss possible
advantages and disadvantages of your approach. Document your algorithm
more specifically (e.g. pseudocode-level), and explain how it would fit
into the framework of a raytracer.