A monster hit worldwide, Team Bondi's L.A. Noire has garnered plaudits for its innovative new motion capture techniques, which represents a colossal leap forward in the fidelity of in-game acting. The developers took over 400 actors into its Los Angeles studio, digitising every aspect of their performance via a ring of 32 cameras, turning that data into beautifully animated 3D models which are then integrated into the game.
The result is simply remarkable. The actors in L.A. Noire are so realistically rendered that facial recognition tools from the likes of Picasa can be used to identify the performer from screenshots alone, while the animation is so authentic that lip-readers have been able to easily follow the dialogue without subtitles. MotionScan is another great example of how innovative developers are taking their tech to the next level without the need for a new generation of gaming hardware.
Part of the success of the L.A. Noire motion capture tech is down to the creation of a sister studio, Depth Analysis, who are continually improving and refining MotionScan, while offering the technology to partners throughout the gaming and motion picture businesses - and beyond.
In this interview, Digital Foundry discusses MotionScan with Head of Depth Analysis R&D, Oliver Bao and head of communications, Jennie Kong.
Depth Analysis was born alongside Team Bondi studio when L.A. Noire was conceived. It was apparent from the very beginning to the team that if the game was to potently hold its own as a true detective game, where interrogation of the game's suspects was key, then a new capture technology would be instrumental.
Team Bondi had worked with existing mocap systems back in 2004 and in understanding the limitations of each, we knew that it would have been a stretch to achieve the high degree of subtlety needed for the type of game we envisioned to make. We needed a technology to reproduce performance as realistically as possible. So yes, it was always our intent to create MotionScan from the beginning, though the shape and scope of it evolved with the game. In many ways, L.A. Noire influenced the technology, and MotionScan influenced some of the game too. I guess the rest is history.
It was always our intent to create MotionScan from the beginning, though the shape and scope of it evolved with the game.
There were a few minor things that we worked on. A couple of examples include: idle loops (animation loops of a character in some emotional state), blending between animations, skinning to allow head movements, texture transfer between frames, etc.
I would say redundancy mainly; should four cameras not capture properly during the shoot we are still able to use the take. Having the extra samples also allow us to reconstruct a better 3D surface in general and allow us remove reconstruction noise a little more easily.
Once we had the foundation of the MotionScan rig up and running, the team worked on a number of tests with the goal of making it looks as realistic as possible. Our focus then turned to ensuring that we could render cost-effectively for a video game console. When we had refined the technology and capture rig to achieve the most realistic presentation; we laid a lot of importance in getting the right "look" by fine-tuning it to match what the current gen consoles could do or else it wouldn't blend in with the rest of the game world.
We chose Camera-Link machine vision cameras with 1600x1200 at 30fps back in 2005/2006. These were the best we could get back then within our price range with each model calibrated for colour and gain at factory already - that is, all units are identical in image quality. With facial performance, we didn't really need high frame rates (60fps or above), and two megapixels was the highest resolution we could get. Machine vision cameras are of small form factor, robust, work under controlled environments (also cheaper) and often used in remote sensing or monitoring.
We work with lossless streams from the camera. We do perform lossless compression (around 2:1) on capture machines before written to HDD.