Project tasks
- Raytracer
- Milestone 1: Basic Raytracing (20 points + 20 bonus points)
- Milestone 2: Scene Composition (15 points + 11 bonus points)
- Milestone 3: Lighting and Reflection (15 points + 5 bonus points)
- Milestone 4: Textures (10 points + 10 bonus points)
- Milestone 5: Report and Presentation (15 points + 5 bonus points)
Raytracer
While you can work on the project in any way you see fit, this is the recommended order for the implementation, with the individual tasks, and how many points a (complete and bug-free) implementation of each task counts as. Each point is 1% of your overall grade, i.e. the mandatory tasks sum up to 75 points (= 75% of the grade). Several of the tasks are marked as “optional”, but will give you bonus points. If you implement all suggested bonus tasks, you can get up to 126 points (= 126%). If you have any additional suggestions for additions, we can also talk about more or different bonus points.
Milestone 1: Basic Raytracing (20 points + 20 bonus points)
- Task 1: Shoot rays into the scene, output result (5 points)
- Task 2: Sphere-ray intersection (5 points)
- Task 3: Plane-ray intersection (5 points)
- Task 4: Triangle-ray intersection (5 points)
Optional tasks:
- Quadric-ray intersection (Cylinder, cone, parabolic, one- and two-sheet hyperbolic); 2 points each for infinite, +2 points for height-limit
Milestone 2: Scene Composition (15 points + 11 bonus points)
- Task 5: True union (3 points)
- Task 6: Intersection (6 points)
- Task 7: Difference (6 points)
Optional tasks:
- Translation (2 points)
- Rotation (3 points)
- Scaling (3 points)
- Arbitrary camera placement and rotation (3 points)
Milestone 3: Lighting and Reflection (15 points + 5 bonus points)
- Task 10: Phong lighting (5 points)
- Task 11: Shadows (5 points)
- Task 12: Reflection (5 points)
Optional tasks:
- Transparency/Refraction (5 points)
Milestone 4: Textures (10 points + 10 bonus points)
- Task 13: uv-coordinate calculations for spheres (3 points)
- Task 14: uv-coordinate calculation for planes (3 points)
- Task 15: uv-coordinate calculation and interpolation for triangles (4 points)
Optional tasks:
- uv-calculations for optional primitives (1 point each, up to 5 total)
- Procedural textures (up to 5 points, depending on complexity/aesthetics)
Milestone 5: Report and Presentation (15 points + 5 bonus points)
- Task 16: “Flashy” test case (5 points)
- Task 17: Final presentation (5 points)
- Task 18: Report (5 points)
Optional tasks:
- Animation/video (up to 5 points, depending on complexity/aesthetics)