A CPU renderer using z-buffer scan line algorithm.
Course project for Computer Graphics.
Main feature: render 3d models using z-buffer scan line algorithm on CPU
- Support: camera manipulation
- Support: fps ~30 for small scenes
- Support: common model formats
- Support: texture
- Support: post-render effects using shaders (like anti-aliasing)
- Not support: lighting
- Not support: concurrency
Prebuilt dependencies for Windows 10 x64 VS2015 are included in the repo.
- GLEW
- GLFW3
- SOIL
- ASSIMP
-
Prepare dependencies if necessary
-
Use CMake to configure the project
-
Build (only tested on Win10 VS2015 x64)
-
Run the program given an integer [1-4] as argument, e.g. :
./ScanLine.exe 2 #choose the 2nd prepared model
-
You can use mouse to rotate and zoom the model
- Read models as DrawableObject class
- Use ZBufferScanLine class to rasterize the scene into a single quad of pixels
- Render the quad on a window using a simple shader