NDA
|
Academic Games
D.A.A.
|
|
Arc Apellago
|
|
DeltaBlade 2700
|
|
Gunslinger
|
|
Open Source Projects
CSYS
|
ImGui Console Widget
A Dear ImGui Console Widget built with CSYS. ImGui-Console started as a example/test project for CSYS and something I wish our team had when developing Arc Apellago. I developed all of the features below:
- Smart scrolling, command timestamps, command log filtering and colored console output. - Console settings and visuals are preserved through sessions. If you wish to see ImGui-Console in action there is an example executable in GitHub! What I learned: - ImGui - User Interface Platforms: Windows/Linux Language: C++ Team Size: Solo Development time: 3 months |
Academic Projects
3D Graphics EngineA 3D OpenGL Graphics Engine built through out DigiPen's 3D graphics courses (CS250 and CS300).
Features: - Phong and Blinn-Phong Illumination Models. - Point, Spot, and Directional lights. - Spherical, Cylindrical, and Planar projections. - Light attenuation and distance fog - Dynamic Environment Mapping.. - Reflection, Refraction and Fresnel. - Affine Math Library. - Perspective 3D Camera. - OBJ Loader. - Normal Visualizer APIs: OpenGL, GLFW, Glad, and ImGui Platforms: Windows/Linux Language: C++, GLSL Team Size: Solo Development time: 8 months |
|
Hybrid Graphics Engine with Spatial Data StructuresA 3D OpenGL Hybrid Rendering Engine built for DigiPen's Advanced Computer Graphics class.
Features: - Deferred Rendering and Forward Rendering Support. - Phong and Blinn-Phong Illumination Models. - Dynamic Octree and BSP. - Serialization support for Spatial Data Structures. - Implemented GJK Algorithm for Collision Detection. - Robust Geometry Toolbox for primitive intersections (Ray, Plane, Point, Sphere, AABB). - Multi-threaded asynchronous model loader. - Perspective 3D Camera. APIs: OpenGL, GLFW, Glad, and ImGui Platforms: Windows/Linux Language: C++, GLSL Team Size: Solo Development time: 4 months |
|
Hierarchical Modeling and Skeletal AnimationA group of projects for DigiPen's Advanced Animation and Modeling. Built/expanded from my Hybrid Graphics Engine with Spatial Data Structures project.
Features: - Animation interpolation using multiple methods (SLerp, NLerp, Lerp, etc) with custom quaternion implementation. - Support for incremental Lerp and SLerp for performance improvements. - Hierarchical structure representation of bones (Skeleton). - Hierarchical transformation and concatenation using quaternions and VQS for memory efficiency. - Custom Key Frames, Clips, and Animator structures. - Model and Animation loader supporting multiple file formats. - Animator skeleton visualization. APIs: OpenGL, GLFW, Glad, Assimp, and ImGui Platforms: Windows/Linux Language: C++, GLSL Team Size: Solo Development time: 4 months |
Curves and SurfacesA project showcasing parameterized polynomial curves and surfaces with a view toward applications in computer graphics. Built for DigiPen's MAT300 class.
Sub-projects: - De Casteljau Algorithm for Polynomial Functions. - De Casteljau Algorithm for Bezier Curves. - Interpolating Polynomials. - Interpolating Splines. - De Boor Algorithm for Spline Functions. - De Boor Algorithm for B-Spline Curves. APIs: OpenGL, GLFW, Glad, and ImGui Platforms: Windows/Linux Language: C++ Team Size: Solo Development time: 4 months |
|
A* Pathfinding
A project showcasing optimal A* pathfinding built for DigiPen's CS380 class taught by Steve Rabin. Built using a AI framework provided by the class.
Features: - Optimal A* Pathfinding supporting path smoothing and rubber-banding. - Heuristic distance calculation using Euclidean, Octile, Chebyshev, and Manhattan. Platforms: Windows Language: C++ Team Size: Solo |