Spotlight: Alex Rodgers, Senior Graphics Programmer
2nd Aug 2023
- How long have you been in the industry?
Eight years - How long have you been with d3t?
Eight years - What was the first game that you worked on?
Shenmue I & II HD
How did your career begin?
I previously worked in IT for ten years before deciding to go to university and retrain to work in the games industry. I have always been passionate about games going back to the days of the Commodore Amiga, Atari systems and early PC gaming. To pursue this change, I attended the University of Hull and studied a bachelor’s degree in Computer Science, followed by a master’s degree focused on 3D graphics. I always loved the creativity and satisfaction that programming visuals in games gives you and decided that this was the field that I wanted to specialise in.
What do you do day-to-day in your role?
Graphics programming work can be quite varied depending on the project you are on. You tend to work on lower-level systems, closer to the engine side than some other disciplines, which lends itself well for looking at performance and optimisations of various kinds. You also make use of various graphics debugging tools for troubleshooting issues and highlighting bottlenecks.
You’ll work with various rendering API’s (such as DirectX12) where implementation is split between two different domains. Firstly, the CPU side where you are programming the renderer to create and manage the various graphical resources and systems that will ultimately interface and issue commands to the GPU hardware. Then, you have the GPU itself, where you are programming the rendering pipeline stages via shaders. Shader programming can be challenging to debug, hence the importance of being familiar with the graphics tools that can aid you. Shaders also tend to draw on more specific areas of graphics theory such as lighting, image manipulation, sampling and the nuances of GPU hardware required to optimise performance. Sometimes I could be working purely on the renderer API, or alternatively writing shaders for lighting, post-FX and other techniques which often borders on a more technical art level at times.
You may also find yourself working closely with content and art teams to help facilitate their needs and troubleshoot various material pipeline issues. You may implement a new rendering feature into the engine, but it is the artists who may need to utilise it to achieve the desired look, so you have some role in supporting that.
What is it like working at d3t?
d3t is very friendly place to work with a great work-life balance and anti-crunch mindset which was one of the most appealing aspects for me. There were only 20 or so employees when I joined, and despite the business having grown much larger, they still manage to maintain that same friendly and accommodating atmosphere. As well as many new juniors coming into the fold, we have a good amount of industry veterans that have been around the block, and yet choose to stay and work here and I think that speaks for itself.
I worked in the office for six years or so, but then following Covid I have worked remotely from home full-time. For me, this has offered greater flexibility and d3t has provided support and the tech infrastructure enabling this to be a seamless process for the projects I’ve been involved with.
Do you have any tips for people looking to get into the games industry?
From a graphics programmer perspective, one of the key things would be having a stand-out portfolio of 3D rendering related techniques to showcase your knowledge. Rather than making a game, I would strongly recommend instead starting your own C++ engine / renderer project in your own time, utilising DirectX API (preferably 12), reading around on modern graphical techniques (e.g. forward and deferred rendering, PBR lighting and materials, normal mapping, shadow mapping, screen-space techniques and/or post-processing FX, anti-aliasing etc) and implementing these into your renderer, importantly taking the time to understand how they work fundamentally.
I also recommend getting very familiar with graphics debugging software such as PIX and RenderDoc since these really help understand what is going on behind the scenes. For me, working on my own renderer is a fun hobby too and if you enjoy this process, it’s also a good sign you’d enjoy getting into a graphics programming role which I’d definitely encourage people to do.
We are hiring
Stay tuned for more spotlight features coming soon. In the meantime, if you’re feeling inspired and want to join our team, check out our vacancies page!