Skip to content

Zichuanyun/CUDA-Rasterizer

 
 

Repository files navigation

CUDA Rasterizer

University of Pennsylvania, CIS 565: GPU Programming and Architecture, Project 4

  • Zichuan Yu
  • Tested on: Windows 10.0.17134 Build 17134, i7-4710 @ 2.50GHz 16GB, GTX 980m 4096MB GDDR5

Features

  • Basic features
  • Line and point rendering
  • UV texture mapping with bilinear texture filtering and perspective correct texture coordinates.

Results

Basics

albedo normal lighting
Albedo Normal Lambert + Blinn-phong

Line and point rendering

line_render point_render
Line Point

Perspective correct UV and bilinear texture

incorrect_uv correct_uv
Incorrect UV Correct UV

Performance Analysis

Time spent in each stage

To give guarantee enough operations for each step, all the features are turned on.

breakdown

We can clearly see that the more space an onject took the window, the more time is spent on rasterization. Rasterization in our implementation is of heavy work.

Performance impact of backface culling

fps

As we can see, there's no significant improvement after we add backface culling (even drawbacks). This indicate that in our naive implementation of backface culling (mainly the backface detection part) has more overhead than contribution in these models.

Credits

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 43.4%
  • C++ 24.5%
  • CMake 23.7%
  • Cuda 6.4%
  • GLSL 1.9%
  • Makefile 0.1%