RomanoRender is a quasi Monte Carlo pathtracer written in C++. It's my first project with C++, and I'm having a lot of fun learning more about computer graphics, maths, programming, software engineering and rendering with this project. The goal of it is to have a look-development ready render engine.
The project is available publicly on Github and I've decided to end it here and start over a new render engine, as I wanted to refactor everything and rewrite the engine from scratch. The reason for this restart is that I've learned a lot while making the first render engine, so I wanted to apply it and make a more performant and flexible renderer. The new renderer is available here.
Here is a list of what is available within the render engine :
- using Intel Embree3 library for scene construction and intersection
- Square, Directional, Point and Dome (with HDRI support) lights
- Basic layered shader with diffuse Lambertian model, specular Cook-Torrance/GGX brdf and btdf, and Random Walk SubSurface Scattering
- Image output with any format (exr, jpg, png...) using OpenImageIO Library
- Obj file format support
- Multithreaded rendering
- UI with basic outliner, material selection, renderview and a few shelf tools
Here are a few of the last renders I've made