Skip to content

A simple JS - based 3D scene renderer using ray-tracing and rasterization.

Notifications You must be signed in to change notification settings

rajivnayanc/3D-rendering-engine-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

3D-Rendering Engine in JavaScript

This project implements basic RayTracing and Rasterization using ReactJS. More features will be added soon. This project is based on Ray Tracing in One Weekend tutorial series.

The project is deployed HERE

To-Do

Features

  • Image formation at HTML5 Canvas
  • Implementing 3D-vector Class
  • Implementing Simple Ray Class
  • Adding Sphere object
  • Shading using Surface Normals
  • Adding class for multiple objects
  • Implement Anti-aliasing
  • Implement Camera Class
  • Different Materials
    • Diffuse (Lambertian) Material
    • Metal Material
    • Dielectrics
  • Implement Positionable Camera
  • Implemented De-focus blur

Tests

  • for ray.js
  • for hittable_list.js
  • for hittable.js
  • for Sphere.js
  • for Canvas.js
  • for MainComponent.js

CI/CD pipeline

  • dev branch for development purpose
  • main branch for final code.
  • GitHub Action for CI for PR @ dev branch
  • GitHub Action for CI for PR @ main branch
  • GitHub Action for CD at github-pages.

About

A simple JS - based 3D scene renderer using ray-tracing and rasterization.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published