Skip to content

project for educational purposes "2D/3D" , "Drawing/Rendering" using HTML-CANVAS and JavaScript .

License

Notifications You must be signed in to change notification settings

Mouradouchane/Graphics_Testing

Repository files navigation

Graphics_Testing

project for educational purposes "2D/3D" , "Drawing/Rendering" using HTML-CANVAS and JavaScript .

TO-DO-LIST :

Math :

  • Vectors
  • Matrices
  • orthographic projection
  • perspective projection
  • 2D/3D movement
  • 2D/3D rotation
  • camera => rotation/movement 3D

Structures :

  • class buffer
  • class line
  • class curve
  • class triangle2D
  • class triangle3D
  • class rectangle2D
  • class circle2D
  • class point2D
  • class point3D
  • class point4D
  • class NDC
  • class mesh
  • class RGBA
  • class camera

2D Drawing :

  • line drawing
  • circle drawing
  • triangle drawing
  • rectangle drawing
  • curved line drawing
  • colors
  • gradients
  • RGB with alpha blending
  • DDA line drawing
  • gupta sproull line drawing
  • bresenham line drawing
  • mid-point circle drawing

Clipping/Culling :

  • point clipping 2D
  • line clipping 2D
  • triangle clipping
  • 3D "z near" clipping
  • back-face culling

rasterization :

  • none buffer
  • Z-buffer
  • A-buffer
  • Sampling
  • field of view "FOV"
  • aspect ratio
  • FPS control
  • V-Sync

Anti-Aliasing :

  • MSAA
  • SSAA
  • FSAA
  • Spatial Anti-Aliasing

Lighting :

  • ambient light
  • directed light
  • undirected light
  • reflection light
  • refraction light
  • global illumination
  • glow
  • some light effects

Textures :

  • mapping
  • filtering
  • MipMap

Shading :

  • shading
  • shadow map
  • ray tracing shadow

Ray-Tracing :

  • path tracing
  • ray casting

Benchmarking/Testing :

  • Graph FPS
  • Graph Preformance Data
  • Uint-Testing
  • compare custom codes to others

Releases

No releases published

Packages

No packages published