Skip to content

guijiangheng/minpt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

minpt: a tiny c++ path tracer

fireplace-room fireplace-room

minpt is a tiny c++ path tracer written for learning Matt Pharr's book " Physically Based Rendering: From Theory to Implementation". Most of codes and ideas come from PBRT and nori ray tracer, but with a lot of simplification.

Building minpt

To check out minpt together with all dependencies, be sure to use the --recursive flag when cloning the repository, i.e.

$ git clone --recursive https://github.com/guijiangheng/minpt.git

If you accidentally already cloned minpt without this flag (or to update an minpt source tree after a new submodule has been added, run the following command to also fetch the dependencies:

$ git submodule update --init --recursive

minpt uses cmake for its build system. After clone the source code, use below commnads to start compling:

mkdir build && cd build
cmake ..
make -j4

Or you can open repository root folder directly with visual studio 2019.

Gallery

dragon-rough-glass f8-14b f8-14a dragon-plastic-minpt cu dragon-rough-metal f8-24

metal-material.mp4

Demo Scene

Example scenes can be obtained from Morgan McGuire's Computer Graphics Archive.

Author

GuiJiangHeng Twitter