Software Rasterizer








A custom CPU-based software rasterizer that loads 3D meshes and renders them to images by implementing triangle rasterization, z-buffering, and simple lighting models.
Key Points
- →Loaded OBJ triangle mesh files and converted 3D vertex positions into 2D screen coordinates with correct aspect scaling
- →Rasterized triangles using barycentric coordinates and wrote interpolated per-vertex colors per pixel
- →Implemented vertical color gradients, z-buffering, and normal visualization
- →Added simple lighting shading based on surface normals and directional light
- →Enabled geometric transformations including rotation before rasterization
- →Developed as part of CSCE 441 - Computer Graphics at Texas A&M University