What is rendering programming?
Rendering, to put it simply, is using code and algorithms to generate objects and textures on a screen. Almost everything that you see in a AAA game today is rendered. This includes characters, enemies, monsters and anything else in the game environment (even the sky and the clouds)! Rendering programmers write code to animate and display all these components.
Describe your journey of discovering rendering programming and choosing it as a career. What inspired you to start?
Actually, I wanted to be an artist when I was a child. I really enjoyed drawing, painting and crafting, and of course I loved playing video games. When I entered secondary school, I came across BASIC and was awestruck by what I could do with it. I really wanted to learn how to code and so I decided to major in Programming in university. I’d say it’s completely natural for me to choose to be a rendering programmer as it’s a great fusion between both my passions – art and programming!
What does a rendering programmer do day-to-day?
We have a good variety of tasks. They include building pipelines or tools for artists, developing specific features and digging into low level graphic API (especially on console platforms). We also spend a lot of time improving performance.
What are some of your biggest and most exciting challenges at work?
It’s always an exciting challenge to learn new tech and implement, improve and optimize it. But it’s very fulfilling because I’m contributing to making tasks easier for our artists. Whenever I accomplish something or provide a good solution, I feel well recognized and appreciated by the team for my efforts. This is something I’m very motivated by and I treasure very much.
"Whenever I accomplish something or provide a good solution, I feel well recognized and appreciated by the team for my efforts. This is something I’m very motivated by and I treasure very much."
Kaori with colleagues at Ubisoft Singapore’s 10th Anniversary Party.
What are the hard and soft skills needed to get & do well in a rendering programming job?
For hard skills, I’d recommend that you have strong C++ programming skills and a great grasp of basic math. It will also be good to have knowledge in 3D graphics, Graphic API and shader programming. A good understanding of GPU architecture would be an excellent entry point.
Soft skills wise, you need to be very keen in continuously learning and upgrading your skills. Our industry moves fast and we need to keep up with the latest trends. The best rendering programmers have a burning curiosity to discover new methods and tools, and are strongly motivated by passion for their craft.
"Our industry moves fast and we need to keep up with the latest trends. The best rendering programmers have a burning curiosity to discover new methods and tools, and are strongly motivated by passion for their craft."
Why is Ubisoft Singapore a great place to be for a rendering programmer? What excites you about coming to work every day?
In Ubisoft, there are many resources you can tap into to develop your skills as a rendering programmer – both technical and non-technical. For example, we’ve got an annual internal event called the Ubisoft Developers’ Conference where experts from all over the world get together to share knowledge and breakthroughs. The content of this sharing is available to everyone in the network! Through this, I got to learn about state-of-art tech developed in other studios or projects and this really inspires me.
I also love the diversity here! I think it’s incredible that you can work with people from over the world here in Singapore, you'll get to experience different cultures and perspectives. This is an amazing place to pursue and build a career in not just rendering programming, but in any area of game development.
Do you aspire to have a career like Kaori’s? Think you have the skills and drive needed to build incredible AAA worlds? Check out our latest job opportunities here!