Phong Shader with Planar Shadows and Shadow Map

Shadow Mapping

Developed shaders employing Phong Shading for realistic light rendering in OpenGL, utilizing C++ and CMake for robust project management. Leveraged GLEW and GLFW libraries to enhance OpenGL functionality. The project involved object rendering, vector and matrix operations, and event-driven programming for interactive graphical applications. (repo here)

Multi-Line Fitting

Optimal Multi-Line Fitting Algorithm

Created an algorithm in Python to minimize total error for a set of input data points. Found the optimal solution by using dynamic programming to precompute sum lists in order to eliminate redundant calculations and reduce the calculations within the matrices from O(n) to O(1). My code returns a solution dictionary file along with printing out the scatterplots with fitted lines. (repo here)

Single Cycle Processor

Single Cycle Processor

Developed a Single-Cycle Processor in verilog. Components include an ALU, Data Memory, Instruction Memory, PC Logic, Register File, Sign Extender, Control Unit, and a Process Module for handling the wires, busses, and muxes. Handles ARMv8 instructions for register and immediate ALU operations, register loading and storing, MOVZ, and branch and conditional branch instructions. (private repo)

Aggie Shell

Linux Shell

Created a Linux Shell Program that handles environment variable management, command pipelining, input/output redirection, and foreground and background process management. Skills used - C/C++, Linux/Unix, System Calls, String Parsing, Process Management. (private here)