Why I loved working on MODO 10.0

May 20, 2016
 0

I’ve been into the whole idea of game programming for as long as I can remember: I was one of those geeky kids in the eighties typing in games from paper magazines on my trusty Sinclair ZX Spectrum. That was quite a step up from its predecessor, the ZX81. The entry model had a whopping 16 KB of RAM, 16 times that of the ZX81. Who could possibly need all that memory?

MODO & Unity for MODO 10.0

My mom, now sadly passed, was a systems analyst at a local bank, and I had spent my early childhood sitting on the data center floor, playing with discarded punched cards while I waited for her to finish her work. It seemed only natural that I should follow her footsteps into programming. As a visually orientated type, the obvious choice for my career was multimedia programming, so I specialized in that by being part of the demo scene (where you showed off your programming and artistic skills by using code to create audio-visual presentations) in the early days, and later went on to a career in game development.

Leaving my native Serbia, I ended up in Germany in the mid-2000s, where I worked as lead programmer, engine programmer and consultant on multiple game projects at various companies. Some of the best fun I had was working on early Nintendo Wii games using the Unity engine, and working on source engine mods. But in most of the game development projects I worked on, the content creation pipeline was over-complicated and very tedious, both for artists and developers.

The content creation software we used at the time had lot of version-to-version inconsistencies and bugs, and in general was not optimized for real-time pipelines. For example, baking normal maps was very hard to do properly, and more often than not things ended up with rendering seams showing and various visual artifacts cropping up out of nowhere. On top of that, the artists always complained about all of the different software products they had to use and move assets between, which made organizing the data flow a nightmare. So everyone was struggling along, which you can imagine is never good for the creative process.

For me, it was kind of a touch of destiny that I was given the chance to improve all of that when I left the games industry and came to work at The Foundry. I think that with MODO 10.0, we managed to significantly reduce the effort the 3D artist requires to bring any newly created content into real-time engines. So in a way, by leading MODO 10.0 development, I managed to solve most of the problems which I was struggling with in my game development days—but for everyone else who’s still out there doing it, instead of for myself. That's quite rewarding and a big deal for me, and I'm really proud I was given the chance to do just that.

In a way, you could say that I didn't leave games industry at all. I'm now just contributing to it from a different perspective—working on optimizing the front end of VR/games content pipelines for all studios using MODO around the world. Just ironing out all the workflow kinks for artists, as we did, and having them be able to do most things in one piece of software should be a big boost for any game studio, and a relief for game developers.

The Foundry is an amazing and open-minded company. For me, working with all of the talented colleagues and beta testers, and being in touch with all the smart people in technology-leading companies like ILM, Pixar, AMD, NVIDIA, Unity, Epic… (you name it) is a dream come true. It’s a really friendly and collaborative environment, and I think extraordinary things can happen when you have all of that in your workplace.

On that note, I'd like to extend big props to the whole MODO 10.0 team, and especially to James O'Hare and Simon Lundberg, who helped the release a lot with their invaluable game and 3D content creation experience.

Let's keep on rocking.


user_avatar

Milan Bulat

Milan is a CG and games industry veteran, who currently heads up VR/games-related feature development for MODO. His interests run the gamut from UX to low-level code optimizations.

Share this story 

blog comments powered by Disqus