
Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
This programming assignment for the computer graphics course, cse190, requires students to develop a ray tracer capable of rendering spheres and triangles with basic shading. The assignment consists of seven tasks, each with a specific percentage value. Students must implement camera transformation, sphere intersection, triangle intersection, barycentric interpolation, diffuse shading, specular shading, specular reflection, and shadow rays.
Typology: Assignments
1 / 1
This page cannot be seen from the preview
Don't miss anything!

This assigment involves making a ray tracer capable of ray tracing spheres and triangles with basic shading from a given camera position. Percentages indicate percentage value for this assigment.
Render at least one image demonstrating all the effects below. Send source files (all .cpp, .h and makefile - not object files) as well as rendered images as a packed .tar.gz file to [email protected] before the deadline.
Task 1: Camera transformation: 15 % Implement tracing of primary rays given a camera with a location, view direction, field of view, up vector, as well as an image of a given resolution.
Task 2: Sphere intersection: 15 % Implement a sphere object with intersections and normal computations. The sphere should be implemented such that the center and radius are parameters that can be changed.
Task 3: Triangle intersection: 20 % Implement a triangle intersection routine that computes the intersection of a ray and a triangle (specified as three vertices).
Task 4: Barycentric interpolation: 15 % Implement barycentric interpolation of normals for a triangle with three nor- mals (one per vertex).
Task 5: Implement a material with diffuse shading and specular highlights: 15 % Implement diffuse and specular shading.
Task 6: Implement specular reflection for the material: 10 % Add mirror reflection to the shader.
Task 7: Implement shadow rays to get cast shadows: 10 % Implement shadow rays to compute shadow regions in the model.