🌙

Hi! This is Nikhil

BTech'25 UG in Production and Industrial Engineering at IIT Roorkee
C++ developer building graphical renderers in Vulkan/DX12
GPU enthusiast with knowledge of RDNA & Ampere architectures

Project Showcase

Graphics renderers across OpenGL, D3D11, Vulkan, and D3D12. CPU ray tracer with multi-threading. GJK collision detection visualizer.

My Journey

My graphics journey began a few years ago (~2017) when I broke my Linux desktop environment and discovered the Mesa graphics stack. I headed over to GitLab and while the codebase flew over my head, something about the userspace drivers sparked my curiosity. I learned a lot about it for a year or so before I got involved with JEE exams.

I got myself enrolled at IIT Roorkee and started my gamedev/graphics programming journey with Unity and Unreal Engine and landed an internship working with UE5. Then joined the ACM group where I found my community. Everything clicked when I wrote my first OpenGL renderer following the LearnOpenGL tutorial. That same excitement returned as I rendered my first Vulkan triangle (three times before the API stuck), dove into the Vulkan spec, and studied multiple GPU architectures.

Since then, I've built renderers across all major graphics APIs and experimented with shaders. Currently (re)exploring Godot and Unreal Engine, and their source code, to understand graphics from a higher level perspective.