Skip to content
ryryssPublic

About

ry is learning ray trace

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

100 Commits

Folders and files

Repository files navigation

ry‘s ray

ry is learning ray trace.

This project is dedicated to testing and validating various ray tracing algorithms and techniques, using Blender Cycles as the reference renderer.

Env

This project requires the following third-party libraries:

  • tinygltf
  • glm
  • glfw

Features

  • receive a simple glb/gltf input
  • use the first camera and the first light found to render target
  • pbr : being implemented

Hardware

intel i7-8700

Perf

  • v1.0.0 3000+ triangles take about 3 seconds to render on intel i7-8700
  • v1.1.1 4000+ triangles simple PBR (SPP=64 bounces=3) with BVH 26s, without BVH 168s (BVH have bug)
  • v1.2.0 4000+ triangles simple PBR (SPP=64 bounces=3) with BVH 300s, without BVH 1500s
  • v1.3.0 4000+ triangles simple PBR (SPP=1 bounces=3) with temporal denoise and atrous denoise 3s

Version

  • v1.0.0 use the first camera and the first light found to render target
  • v1.0.1 multi-primitive, light, simple texture support
  • v1.0.2 simple shadow support
  • v1.0.3 fix some bug
  • v1.1.0 PBR base
  • v1.2.0 refactor and reflection
  • v1.3.0 denoise

TODO List

  • some render bug : reflection and denoise
  • acceleration (real time)
  • multiple importance sampling
  • gpu support
  • simple real-time interaction (move camera)
  • specify material

Test File

See https://github.com/KhronosGroup/glTF-Sample-Models or branch model

v1.3.0

denoise have some bug

v1.2.0

right side is blender Cycles engine also use 64 spp and 3 bounces

About

ry is learning ray trace

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages