-
Notifications
You must be signed in to change notification settings - Fork 65
Developer Manual
This document describes the internal data structures and algorithms that comprise the Scotty3D codebase, focusing mainly on core functionality (e.g., meshing, ray tracing, and animation). Limited documentation of the graphical user interface (GUI) is available via comments in the source itself (though this information is not needed for implementation tasks).
The components of the Developer Manual are exhaustively listed on the sidebar to the right, and are organized under the three main components of the software:
The header error_dialog.h
declares a function void showError(std::string errorString, bool fatal = false)
which will display a message to the user in the GUI and block until the user dismisses the dialog. If fatal
is true
, the program will exit after the user dismisses the dialog, otherwise it will return from showError()
and continue executing. You are encouraged to utilize this function in your implementations to handle cases for which there is no reasonable output, or panic if an invalid state is detected.
- Task 1: Camera Rays
- Task 2: Intersecting Primitives
- Task 3: BVH
- Task 4: Shadow Rays
- Task 5: Path Tracing
- Task 6: Materials
- Task 7: Environment Light
Notes:
- Task 1: Spline Interpolation
- Task 2: Skeleton Kinematics
- Task 3: Linear Blend Skinning
- Task 4: Physical Simulation
Notes: