Skip to content

My offline multi-threaded path traced renderer Indus, where I try new things from reference texts.

License

Notifications You must be signed in to change notification settings

essentialblend/project-indus

Repository files navigation

Project Indus

Indus is a multithreaded path-tracer. It is my first attempt at fleshing out and applying concepts I learn from various reference texts on graphics, programming, and math. Presently, it serves as a revision playground which I aim to update immediately upon reaching a learning checkpoint.

Current Features:

  • Developed from scratch using C++.
  • Multithreading compatible.
  • Per pixel MSAA.
  • Jittered MSAA.
  • Gamma Correction.
  • Positionable camera with defocus blur (DOF).
  • Lambertian, Metallic, and Dielectric Materials.

Status

Actively being re-written.

Directory Structure

  • src/ -- Main source folder.

  • src/headers -- Contains all in-use headers.

  • src/headers/base -- Contains all base and utility classes.

  • src/headers/materials -- Contains all derived material classes.

  • src/headers/world_objects -- Contains all derived world-object classes.

Credit

Third party libraries:

About

My offline multi-threaded path traced renderer Indus, where I try new things from reference texts.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages