Hi, I'm Andrew Fagan

A sophomore Computer Science student with a love for pushing the boundaries of real-time graphics and game engines.

About Me

I am a highly motivated student with a passion for real-time 3D graphics and game engines. My journey into graphics was initiated by a desire to understand how complex visuals are made from the fundamental building blocks of programming.

This curiosity led me to deep dive into C++, rendering techniques, and low-level graphics APIs. I love the challenge of designing, building, and optimizing systems that work together to deliver cutting edge visuals and enable stories to be told at a grand level that brightens people’s days.

Featured Project

Astral Engine, Lumberyard Bistro Sample Screenshot

Astral Engine

A work-in-progress 3D engine built from scratch using C++20 and Vulkan, designed with a focus on modern rendering architecture.

  • Physically-Based Vulkan Renderer: Features a Cook-Torrance BRDF, Image-Based Lighting, and HDR pipeline with both forward and deferred paths.
  • Frame Graph: Manages render pass resources, dependencies, and synchronization with automated barrier placement and pass culling.
  • Low-Level Systems: Includes a proof-of-concept suite of custom memory allocators and a memory profiler to research performance optimization.

Technical Skills

Languages

C++ C Python GLSL

Technologies & APIs

Vulkan Git CMake OpenGL (Fundamentals) Physically-Based Rendering (PBR) Memory Management

Tools & Software

CLion Visual Studio Xcode RenderDoc NVIDIA Nsight Xcode Metal Debugger Blender Substance Painter Unreal (Basic) Unity (Basic)

Project Showcase

Take a look at what Astral Engine can do with this collection of rendered pictures and GIFs.

Showcase example screenshot

Design & Analysis

I have compiled documentation that goes through my thought process, problem-solving, and analysis for features in Astral Engine.

Documentation example screenshot

Get In Touch

I'm actively seeking internship opportunities for Summer 2026 in graphics, rendering, or low-level systems engineering. I'm always excited to connect with new people, so please feel free to reach out!