Skip to content

guangchenli/Raster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Raster

This is a toy software rasterizer I wrote to learn how rasterization works.

Current Features:

  • Z-buffering
  • Perspective corrext texture mapping
  • Programmable vertex & fragment shader
  • Gouraud shading
  • Blinn-Phong shading

TODO List:

  • Add tangent space normal mapping
  • Add shadow mapping
  • Add resource manager

Build

First make sure that you have Cargo installed, then simply run:

cargo build

on your terminal.

Usage

Model must be in Wavefront obj format, make sure that your model includes tangent vector of each vertex.

cargo run <obj_model> <diffuse_texture> <spec_texture>

About

A Software Rasterizer Written in Rust

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages