LJHG / MicroRenderer

a soft rasterizer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MicroRenderer

A self-built soft Rasterizer, called Micro(soft)Renderer.

feature

  • Triangle Rasterization(line mode and fill mode)
  • linear and barycentric interpolation
  • Z-buffering
  • mvp transformation
  • load model
  • Gouraud shading phong shading

dependencies

  1. SDL2
  2. stb_image
  3. glm
  4. assimp

currently only test on macos, building on linux/windows requires extra dynamic libraries for sdl2.

how to run

# clone the repo
git clone https://github.com/LJHG/MicroRenderer
# make
cd MicroRenderer
mkdir build
cd build
cmake ..
make
### run ###
# run main.cpp
./MicroRenderer
# run example1
./examples/01_Triangle/01_Triangle
# run example2
./examples/02_mvpTriangle/02_mvpTriangle
# run example3 (need to cd into the folder to run example3, for the relative path setting for the model)
cd examples/03_mary
./03_mary

current stage showcase

line rasterization

line rasterization

line rasterization

About

a soft rasterizer


Languages

Language:C++ 97.9%Language:CMake 2.1%