Custom shaders and real-time graphics for game studios, interactive agencies, and web experiences. Written by someone with a 3D art background - the shader looks right because the person writing it understands why it should.
Why work with me
01
Most shader developers come from a programming background and learn the visual side. I came from 3D art and learned the code. The difference shows in how materials look - physically plausible, not technically correct but visually wrong.
02
Shaders delivered for your target platform: GLSL for WebGL and Three.js, HLSL for Unity and Unreal Engine, or platform-agnostic GLSL for cross-platform use.
03
Real-time means performance matters. Shaders are profiled and optimised for the target hardware - visually ambitious but not at the cost of frame rate.
A selection of relevant work from 10+ years of practice.
WebGL Interactive Installation
Developed a suite of custom GLSL shaders for a browser-based interactive installation. Included procedural surface materials, dynamic lighting effects, and post-processing passes running at 60fps in-browser.
Game Studio
Built a library of custom Unreal Engine materials for a game studio - physically-based surface shaders, stylised effects, and animated environment materials. Delivered as a reusable asset library.
A material is the visual description of how a surface looks - colour, roughness, reflectivity. A shader is the code that calculates that appearance in real time. In most engines, you create materials that reference shaders. Custom shader development means writing the underlying code rather than using built-in material templates.
Yes. Three.js and WebGL shaders that run in the browser are a specific area of my practice. Product configurators, interactive backgrounds, data visualisation effects, and generative art are all possible.
I build tiered fallbacks for complex shaders - a high-quality path for capable hardware and a simplified path for mobile or lower-spec devices. Performance targets are agreed at the start of the project.
Describe what you want to achieve visually and the platform it needs to run on. I will tell you what is feasible.
Get in TouchTools & Technologies