CS 5620/6620 - Fall 2025 - Rendering with Ray Tracing

Project 5 - Triangle Meshes

In this project we add plane and triangle mesh object types to our ray tracer.

Requirements

XML Scene Format

We have a minor addition to the XML scene format to support new object types: plane and triangle meshes. The plane object is a square with 2 unit lengh edges. It is placed at the origin and the plane normal is aligned with the positive z-axis in object coordinates. Triangle mesh is specified in an external OBJ file. The name of the object is the filename of the OBJ file, which should be placed in the same folder as the scene XML file.

<!-- Plane -->
<object type="plane" name="square_plane" material="mtl1">
	<!-- Transformations -->
</object>

<!-- Triangle mesh from an external OBJ file -->
<object type="obj" name="teapot.obj" material="mtl1">
	<!-- Transformations -->
</object>

Source Code

The following source code files are provided to help you with this and upcoming projects. You are not required to use them, but it is highly recommened that you use some of them. Some of these files include additional code as compared to the same files in the previous project, so make sure to download them all again.

Test Scenes

The following scene files are provided to help you test your implementation. You can also prepare other scenes to show your work.

References

Student Project Pages



_