Skip to content

aksris/Project4-CUDA-Rasterizer

 
 

Repository files navigation

CUDA Rasterizer

CLICK ME FOR INSTRUCTION OF THIS PROJECT

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

  • Akshay Shah
  • Tested on: Windows 10, i7-5700HQ @ 2.70GHz 16GB, GTX 970M 6GB (Personal Computer)

GPU Rasterizer

Renders:

Textures: with Bilinear Interpolation

Without Bilinear Filtering With Bilinear Filtering

And Perspective correct texture coords

Without Perspective correct Texture With Perspective correct Texture

Materials: Diffuse, Specular (Blinn-Phong), Toon Shading

Diffuse Specular Toon Shading
Different Primitives: Triangles (default), Lines (wireframe), Points

Triangles Lines Points

CUDA summary and analysis

The following chart shows the approximate percentage time spent by each cuda function. It is clear that _rasterizePrims has the largest time spent because of the calculation of barycentric coords and perspective correct texture coords.

This following image shows the percentage time spent while doing the wireframe for the cow.gltf

Here however, we see that the time is most spent in initDepth.

And similarly with points

Credits and References

About

CIS565: CUDA Rasterizer

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 44.1%
  • C++ 23.9%
  • CMake 23.8%
  • Cuda 6.2%
  • GLSL 1.9%
  • Makefile 0.1%