This project page includes a description of 3D graphics and 3D modeling features implemented in the program
Utilized: C programming, 3D graphics algorithms
A simplified version of a 3D graphics API like OpenGL, with some 3D modeling application functionalities. Designed and built during my summer internship at AMD under the mentorship of Mac 3D Graphics Driver Director Chris Bentley.
To avoid code duplication while separating features with different core functionalities, I created three main program modes: BASIC, SCENE, and IMAGE PROCESSING mode.
To make things easier (no pun intended), I included a make-file in the top-level directory.
Unfortunately, I have only gotten the program to compile and run properly on Mac OS machines, but I hope to extend the program to different platforms in the future.
After you cd into the 3d-renderer directory:
Use to test 3D rendering techniques on a single object at a time.
make run-basic
Use to test 3D rendering techniques and modeling application features on multi-object scenes.
make run-scene file="scenes/<file-name">
Use to run various image processing algorithms on an image.
make run-image

Teapot frame

Teapot with alpha blending enabled

Bump mapping

Cube mapping

Flat shading

Phong shading

Phong shading with specular highlights

Pixelation (“Lincoln”) image processing effect

Depth of field post processing