Skip to content

HuynhNguyenPhuc/3D-Rendering

Repository files navigation

Ray Tracing Techniques

This repository contains several fundamental ray tracing techniques implemented in C++. The techniques, ranging from basic ray tracing to advanced methods like global illumination and volume rendering.

Implemented Techniques

  • Ray Tracing with Blinn-Phong shading for rendering 3D meshes.
  • Whitted Ray Tracing with support for reflection and refraction.
  • Path Tracing (Global Illumination) using BRDF sampling and Next Event Estimation.
  • Volume Rendering via both Forward and Backward Ray Marching.

Results

Ray Tracing with Blinn-Phong Shading

Sphere

Sphere on the ground

Barrel Motocompo

Left: Barrel | Right: Motocompo

Whitted Ray Tracing

Whitted Ray Tracing with Reflection and Refraction

Path Tracing

Path Tracing with BRDF Sampling + Next Event Estimation

Volume Rendering: Forward vs Backward Ray Marching

Forward Ray Marching Backward Ray Marching

Left: Forward Ray Marching | Right: Backward Ray Marching

About

Implement some rendering techniques in C++

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors