My experience working on Oblivion Remastered.
Working on Oblivion Remastered was one of the most rewarding moments of my career. I was coming from The Outer Worlds ([link here]), which was a somehow chaotic and problematic project, and I landed in what, for me, was pretty much the ideal development environment.
The TA team was big, professional, always ready to help whenever possible, and honestly a pleasure to work with. Things worked like clockwork from day one. This project really taught me how valuable a TA team is, especially when it is there from the very beginning.
In Oblivion, a big part of our job was controlling what was coming from the Art department. We had a very strict set of rules that we checked on every asset that came from the artists. From polygon density to texture size and format, everything had to be validated. At first, this part of the project was a bit of a drag because it was very time-consuming, but we slowly automated the process. Someone on the team created tools that helped with validation, and eventually the artists themselves could validate their own work. That part of the job was crucial for the final result and, in my opinion, for the strong reviews the game got from day one.
But that was the team as a whole. What did I personally work on?
Well, if you have played the game and found all that rubbish lying around the dungeons ([photo here]), then you have seen the effect of a tool that I created in collaboration with another team member.
Oblivion is a massive game with over 200 dungeons. That insane number meant it would have taken thousands of hours for artists to dress all of them by hand with dirt, small pebbles, garbage, broken chests, and all that kind of stuff. Luckily for us, Oblivion’s dungeons are modular, which means the same modules are reused again and again.
What we created was a system where you could place spawners on those blueprint modules, and those spawners would generate random assets inside the level. That way, even if the blueprint modules were always the same, the final result would feel more varied every time the level was generated. I worked mostly on the UI of the tool, using Editor Utility Widgets to make it very easy for artists to add meshes to the spawning pool.
Another area of the project where I worked a lot was map generation. In the original game, the map was created by rendering the level from above with a custom shader. Since all the geometry was one-sided, looking at it from the top only showed the floor, which naturally generated the map.
Unfortunately, in Unreal, using Nanite, one-sided geometry was not really an option, so we had to find another way to do it. What we ended up doing was basically cutting the geometry with a plane, removing the top part, and then using a special shader to generate the map. Unfortunately, because of the different kinds of modules, placing that plane had to be done semi-manually. I created some tools that allowed you to quickly copy and paste the different parameters of the cutting plane, so you could go through the hundreds of modules fast enough for the process to be practical.
In the end, Oblivion Remastered was a very special project for me. Not just because of the name, or because it is such an iconic game, but because of how good it felt to be part of a team and a production that simply worked. After other more chaotic experiences, landing in a place where people were professional, helpful, and all pulling in the same direction reminded me how good game development can be when things are done properly.
That is probably what I took from it the most. More than anything specific I worked on, it made me appreciate even more the value of Technical Art, and it made very clear to me the kind of work, team, and development environment I want to be part of.