Interview:Nintendo Power April 2006
|This interview does not yet have standard formatting or is otherwise incomplete. It should follow the format established in other interviews.|
Part XI of Nintendo Power's series of interviews with the development team of Twilight Princess. This eleventh one is with Makoto Sasaki, the environmental programmer for Twilight Princess.
Behind the Landscapes of Hyrule
Nintendo Power: Three issues ago, landscape designer Atsushi Miyagi revealed the importance of environment design. Two issues ago, Kazuaki Morita explained the arcane secrets of programming. And now Inside Zelda puts the intersection of these two arts under the microscope with Makoto Sasaki, whose programming skills are bringing Twilight Princess' lush worlds to life. It seems the old adage is true: The devil is in the details. Blazing sunlight, harsh rain, ambient effects – it's all vastly more complex to pull off with utterly enchanting realism. How has Sasaki prepared for the programming task of a lifetime? As he explains, the path of the programmer can lead through some very interesting realms.
Working the Network
Long before I had my first job with Link, my dreams were in the deep world of programming. In fact, I didn't even have my first professional experience with video game programming until I found myself working on the stock-trading system that operated over the Family Computer Communication Network, the Famicom system that launched only in Japan in the late 1980s.
Before that, my programming background centered around controlling machines, though I did have a little personal experience in game programming. But after I finished my work on the Famicom stock-trading project, I went back to my previous work and spent several years developing inventory-organizing systems for warehouses, and automatic point-scoring systems for bowling alleys. But, in my spare time, I did side work on another game-related project: Students who wanted to study game development could experiment with a program based on the original Super Mario Bros. game, which let the student customize characters and add programming changes. I also got involved with another networking project, this one for the Super Famicom system, which used a satellite network add-on system to enable network connection. Based on the original Zelda game, the networked game let consumers interact with each other over the satellite broadcasting system. Back in that time, it was a really cutting-edge idea – I remember thinking that it was like a live TV show! But it was quite a difficult programming project, since the goal was to have no interactive lag or any programming bugs. The strain was incredible.
I had played games from a young age, but I'd never imagined that I'd actually work in game development someday. When I was 14 years old, the Famicom came out in Japan, and I loved Super Mario Bros. And Xevious – that I played until my thumbs got sore. When I first saw the original Legend of Zelda, I wasn't very impressed because the graphic system was somewhat simple. Other games had prettier graphics at the time. But once I experienced it, I was utterly captivated and couldn't stop playing it. I was so impressed at how the game was designed to let players play. Around the same time, I started messing around with personal computers. But, unlike today, no useful applications or tools existed back then. You needed to create your own programs from scratch, or else your PC did almost nothing at all. It was a vast and fascinating void to fill with my creations, and that would become my total obsession.
Environmental Protection in Hyrule
From my perspective, a programmer's job is to follow and meet the expectations set out for what a game's designers, planners, and creators would like to see happen. During the programming process, we'll propose more ideas and concepts to make things even better, if possible, then get responses back from the creative staff. After many communications back and forth, the overall effect becomes better and better.
I know that sounds theoretical, so let me explain a specific instance from one of the environments of The Legend of Zelda: Ocarina of Time. When I started work on Kokiri Village, the creative guidance that I got was to program their environments in a way that evoked a feeling of wonder – and then the turned me loose to explore what that meant. So I created a place where eerie light balls floated around. To that I added another touch: that the lights would follow the character's movements. Then and now, I sometimes build these touches into the environments and surprise the designers with them. In that case, the designers really liked the wondrous effect and decided that the floating lights would stay in the game. That approach really meshes well with my creative philosophy: if it's enjoyable to create, then it'll be loved by the game player.
Creating environments requires a sense of many factors: sunlight, rain, lighting effects that change to reflect the passage of time, it just goes on and on. I was responsible for environment programming in Ocarina of Time, Majora's Mask, and the Wind Waker. And, as you know, Twilight Princess will be the most realistic Zelda game to date, so you can just imagine how detailed the designer's ideas are! So many factors, such a high degree of detail – you can start to see the incredible programming challenge before us!
My goal is to create environments that are not only beautiful and detailed, also are so evocative that the players can “feel” it. For example, Link has been able to cut grass in previous games. But in Twilight Princess, cutting grass can be a richer experience. Link's sword is a little longer than before, and unlike previous games in which the sword-cutting was fairly simple, here he must use the tip of the blade. A subtle difference, but environmental programming is all about the art of subtleties! Another example is the spin attack. In Twilight Princess, the spin attack blows the grass outside of it's range due to it's sheer force. Another subtle but vital detail for achieving realism.mSince the graphics are so stunning, we need to be that much more careful about details, or the spell will be broken. On the other hand, we can't be such a slave to environmental detail that we lose excellent gameplay. We need to hit that perfect balance. Actually, the importance of the grass's relationship to the sword came from both Mr. Miyamoto and Mr. Aonuma – at the same time but on totally different tracks! I was very surprised, but it just shows how important the details are in Twilight Princess. It's been very enriching to work with Mr. Miyamoto; he's provided key insights for me to ponder. Consequently, the grass details haven't required a major amount of extra programming; but little effects can sometimes require a huge effort. It all depends on the environmental change.
The Magic of Realism
Outside of my work at Nintendo, I've had many wandering interests, but the one that's really stuck in recent years is photography – landscapes in particular. Though I've visited and been impressed by many places, it's something that happens all around us that has really struck me most: Even if you visit the same place at the same time of day, it's atmosphere can be radically different. Even on a sunny day, the sky's color can be worlds apart from one day to the next; it's apparently an effect of air quality, and the changes can be so captivating.
Could I achieve similar effects in the upcoming Zelda game with my programming? I truly hope so. If players suddenly realize that they're seeing more clouds then they did yesterday, it really could evoke that elusive, realistic feeling of the Zelda world. In programming for Twilight Princess, I've gained a strong appreciation for ordinary things: Keeping their realism intact is wonderfully challenging. Such simple things, like Link walking or rain falling – those are such ordinary things, but if a player spots one detail wrong, they'll be hit by the incongruity. Challenging, so challenging! But the overall effect will be magical, as long as we pay proper attention to the details.
I can feel the worldwide anticipation as people wait for Twilight Princess. While my job isn't directly tied to gameplay, the art of programming can make a big impact. When Link is being forced to spend a long time in a damp, dark underground, I'll do my best to make the player feel it. And once Link breaks free of such a burden-some place and enters a refreshing environment, I'll ensure that the player feels immense release.
Environments are everything to me. Actually, I'd be delighted if, after playing the upcoming Zelda game, players then longed to visit the extraordinary real-life places that can be found in nature. It'd be the ultimate compliment to Twilight Princess.