# Philip Rideout

https://prideout.net  
https://github.com/prideout  
Los Gatos, CA

I have always been passionate about GPUs, graphics, and deep learning. Over the
years I've worked on shader compilers, OpenGL drivers, shading & lighting tools,
performance & debugging tools, rendering libraries, and graphics-intensive web
applications. Much of my work has been in C/C++ systems programming, close to the
GPU.

My hobbies include windsurfing and camping. In the late 90's I made a platformer
called _Noop's Odyssey_ and have occasionally received fan mail about it. More
recently I created the puzzle game _Blockdown_, available on Steam.

## Experience

### Software Engineer, Apple - 2025-Present

On the GPU Tools team, I build tooling that helps developers understand, debug, and
optimize GPU workloads across Apple's graphics stack.

### Chief Technology Officer, Arcol Technology - 2022-2025

Arcol is building a collaborative CAD application for architects. I pushed
the team towards technologies like WebAssembly, WebGPU, and Rust.

### Senior Software Engineer, Google - 2016-2022

At Google, I designed and implemented the Vulkan and WebGL backends for Filament,
Google's popular physically based rendering engine, written in C++.

I also authored Filament's glTF loader. Filament is used in several Google products,
most notably Google Maps. I am proud to know that my code is currently deployed to
billions of devices.

During my first two years at Google, I was part of the Daydream team, developing an
Android service that delivered VR features such as barrel distortion to client
applications. My work was primarily in C++, with occasional use of Java. I served as the
team's expert in OpenGL ES and platform-specific graphics extensions.

### Research Engineer, Pixar Animation Studios - 2011-2014

I am credited in _Brave_ and _Monsters University_. In my first two years at Pixar, I
was the sole maintainer of Slim, an in-house graph-based shader generator tool. I was
essentially self-managed, working extensively with shading artists to develop new
features and fix crucial bugs.

Later I transferred to the research team to help create and launch a GPU-based tool for
lighting artists using NVIDIA's OptiX library for path tracing. This was initially
integrated into Katana, and later other production software.

### Senior Graphics Engineer, Medical Simulation Corporation - 2010-2011

I left NVIDIA to help build a startup that developed a new way to train doctors for
catheter-based heart surgery. Our product involved a human mannequin with haptic
machinery on the inside, and an attached display that simulated a fluoroscope (real time
X ray). I wrote the C++ graphics layer that simulated the fluoroscope. This was an
OpenGL ES library that we also used in an accompanying iPad application for medical
training.

### Senior Tools Engineer, NVIDIA Corporation - 2005-2010

At NVIDIA, I designed and implemented PerfHUD ES, a cross-platform performance analysis
and debugging tool for OpenGL ES. I worked with driver engineers for the Tegra platform.
I also worked with OEM vendors and clients, including a high-profile gaming hardware
company in Japan. The client side of this tool was written in C++ using the Qt library,
and I authored most of the initial codebase. I also designed a host-client communication
protocol for the tool.

In my later years at NVIDIA, I was a founding member of the Blue Mesa team for Visual
Studio extension, which eventually became what is now known as Nsight.

### OpenGL Driver Developer, 3Dlabs - 2000-2005

My first job out of school was to maintain the VLIW microcode that performed the math
for transform and lighting in Wildcat GPUs. In a sense, I was writing shaders before
shaders existed, but in assembly language.

Later I was a founding member of the 3Dlabs shader compiler team. We developed the
industry's first GLSL shader compiler.

I also authored various graphics-related tools and demos, including the popular glsldemo
program. This demo would render various shapes like a Klein bottle on a rotating
platform, showing off the capabilities of the then-novel idea of shaders. Some of my
work for this was featured in The OpenGL Shading Language, a book by Randi Rost that was
affectionately known as "the orange book" in the graphics community.

## Skills

- C/C++, Rust, TypeScript, Python
- OpenGL, Vulkan, WebGL
- GPU optimization
- Real-time rendering
- Path tracing
- Geometry processing

## Publications

Over the years I have dabbled in technical writing. After I left NVIDIA, I wrote "iPhone
3D Programming," which I believe is the first book ever written about 3D graphics for
mobile devices.

I have also contributed chapters to various graphics books such as _WebGL Insights_,
_GPU Pro 2_, and _OpenGL Insights_.

## Education

Mississippi State University, Bachelor of Science in Computer Science.
Summa Cum Laude.
