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.