aviralgoel / AviGL

development of my own 3d renderer in C

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Avi(ral's) Graphics Library

Development of my own 3D rendering library to learn the most fundamental algorithms (along with their implementations) of Computer Graphics. It is written in purely in C.

Only two external libaries have been used <math.h> and <SDL.H>

Things I've IMPLEMENTED so far...

  1. Vector Maths (Cross Product, Vector Product, Normalization etc.)
  2. Prespective Divide
  3. Frame Rate and Game Loop
  4. BLA and DDA Line Algorithms
  5. Scan Line Algorithm & Painters Algorithm
  6. 3D Matrix Transformation (World Matrix, Perspective Projection Matrix, etc.)
  7. Directional Lights and Flat Shading
  8. Texture Mapping (PNG Textures) and Baycentric Coordinates
  9. Perspective Correction
  10. Camera View Frustum Clipping
  11. Loading multiple meshes in a single scene

Result

Motivation

Journey into becoming a graphics programmer / rendering engineer / game engine developer.

About

development of my own 3d renderer in C


Languages

Language:C 99.3%Language:C++ 0.7%