Skip to content

Rainzor/Renderer

Repository files navigation

README

A Renderer is based on ray tracing.

How to use

cmake -B build      # 生成构建目录
cmake --build build # 执行构建

Qt

The UI is based on Qt 5. Before using CMakeLists.txt, please change Qt's path here

#CMakeLists.txt
....
#Change Qt Path
set(CMAKE_PREFIX_PATH "D:/Qt/5.15.2/mingw81_64")
....

Example

If you don't want to use Qt as the framework, just go to example and run run.bat in WINDOWS OS.

OpenMP

The Render is accelerated by OpenMP. Make sure your compiler support it.

Result

Cornell Box

Figure : Cornell Box

Bunny and Spot Cow

Figure : Bunny and Spot

Supported Features

  • Object: sphere, rectangle, triangle and triangle-mesh
  • Operation: translation and rotation.
  • Material: diffuse reflection, specular reflection, refraction, participating media and light source
  • Texture: solid color, noise texture and image texture mapping
  • Advanced Sampling: BRDF sampling, light sampling, NEE, multiple importance sampling
  • Acceleration:
    • BVH
    • CPU Parallel: OpenMP
    • GPU Parallel: CUDA
  • Cook-Torrance BRDF
  • Ray-Marching in volume rendering
  • Load scene in json format

Reference

About

A renderer beased on ray tracing

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published