Skip to content

vblanco20-1/Rasterizer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rasterizer

Fully multithreaded C++ CPU rasterizer

Using libraries:

Very basic WIP rasterizer. The goal of this project is to learn high performance multithreading and SIMD practises. The current version can rasterize the 870.000 triangles stanford dragon in a 1024x1024 window at 20 +-1 miliseconds per frame on a Ryzen 1700X.

It works by launching a parallel for on the triangle array, wich runs a "vertex shader" to update the matrices. This also bins the triangles into screenspace tiles. After that, another parallel for is launched, on the tiles, to perform thread safe tile based rasterization without data races.

This project is a work in progress, and should not be used as an example of anything due to its extremelly experimental stage and low code quality.

About

Fully multithreaded C++ CPU rasterizer

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published