Skip to content

smukherjee2016/ToyRT2018

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ToyRT2018

Just another ray tracing engine written in C++. Tested on Windows and Linux(Ubuntu/Linux Mint only).

Dependencies

The followings need to exist on the host machine: Embree

Execution

Clone the repository alongwith its submodules:

git clone --recursive https://github.com/smukherjee2016/ToyRT2018

If you have cloned without the --recursive flag, please run the following:

git submodule update --init --recursive

Then it should build and run like a standard CMake project.

Linux

There is an extra step needed for Linux: for Ubuntu/Linux Mint/Debian(?), you need to add /usr/lib64 to LD_LIBRARY_PATH so the executable finds the embree .so. This has been tested to work.

TODO

  • Ray-sphere intersection
  • Path Tracing with Next Event Estimation
  • Direct lighting
  • Path Tracing with MIS
  • Ray-triangle intersection
  • OBJ loading
  • Use Embree for Ray-triangle intersection
  • Replace OpenMP with threadpool or custom threading
  • Emitter selection heuristic
  • Discrete CDF class for use with emitter sampling
  • Remove static version of Sampler
  • Photon Mapping integrator

License

Apache 2.0.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published