Earlier this week ATI Technologies Inc.
announced Truform, a new rendering technology that adds detail to 3D objects. To find out more about how the technology works, MacCentral asked some questions of ATI technical marketing manager David Nalasco.
This technology is known to Windows developers familiar with Microsoft’s DirectX technology as “N-Patches” and known to OpenGL mavens as “PN Triangles.” Nalasco says that it’s been available to developers for the past six months or so, but ATI’s kept it under their hat until the technology was used enough to be able to show off some impressive demonstrations.
The goal: Toy Story 2 on the desktop
Nalasco says that ATI’s ultimate goal is to bring the same cinematic style and quality to computers that you can see in movies like Toy Story 2 and Shrek. That’s easier said than done, though — cinematic computer graphics use a fundamentally different way of representing 3D models, according to Nalasco — they use curved lines, rather than polygons.
Why not just use curved lines, then? Nalasco says it would require personal computer software programmers and hardware makers like ATI alike to adopt a completely new way of thinking about 3D imagery, thus sacrificing backwards compatibility and creating a comparatively tiny, delicate niche in the hugely competitive 3D graphics hardware market. And while the industry may head that way eventually, Truform gives ATI a great interim solution. The secret, in a nutshell, involves converting triangles to curves, then back again.
Polygons provide a fairly compact and convenient way of measuring the position of 3D graphics, but there’s a finite amount of polygonal data that you can make a computer or a graphics card calculate before such data processing takes its toll in the form of reduced frame rates, even on today’s fastest chips. Hardware transform and lighting capabilities aside, there are other bottlenecks to deal with, such as the speed of the CPU and the bandwidth of the various bus interfaces on the computer.
Triangles to curves, then back again
Truform will provide ATI’s next generation of graphics hardware — to be more formally introduced sometime later this year — with the ability to recalculate polygonal data on the graphics chip itself, thus removing other bottlenecks in the computer from the equation all together.
“With Truform, we’re taking the triangle, converting that into a higher-order curved surface, and converting that data back into triangles again,” said Nalasco.
By doing this, Truform is able to yield a model with a much higher polygon count — providing more detail on the surface, a smoother mesh, and more accurate lighting information.
“Basically, we get the best of both worlds — we’re able to accept triangles as input, but we output as triangles, and we calculate in curved surfaces,” said Nalasco.
Low barrier to entry for programmers
Programmers who make use of ATI’s Truform technology can tell their software applications to use Truform on the entire screen image or just on specific models.
To implement Truform in a 3D application, Nalasco told MacCentral that it’s as easy as writing a single line of code that activates support for the technology. Chances are, though, that software developers will want to customize Truform support in their applications, since there are entire libraries of objects that wouldn’t really benefit from an increased polygon mesh — any object that’s comprised of straight surfaces, for example — like walls, floors and ceilings in a game. Programmers can also define the level of detail they would like to apply using Truform.
The new technology is supported by DirectX, Microsoft’s proprietary Windows application programming interface (API), but it also works as an OpenGL extension. This means that Truform will work on the Mac just like it’ll work on the PC, although Nalasco admits that DirectX programmers have an easier time than OpenGL programmers do — DirectX enables programmers to take for granted some operating parameters that OpenGL programmers must pay closer attention to.
But Nalasco said that the bottom line is that Truform is extremely easy to use.
“The fundamental process involves making a function call — there are no new languages to learn, and nothing fancy to get your head around,” said Nalasco.
ATI emphasizes the use of Truform in games, because games are a major market for 3D hardware these days. But Nalasco says the technology goes well beyond just games. It can be used for potentially any 3D application — modeling software, CAD/CAM — anywhere that more detailed 3D models can be applied.
Artists also considered
Programming implementations are fine, but that’s only one half of the issue — the other is 3D artwork itself. To that end, ATI has developed tools for 3D artists who create models for games.
“Artists can use some tools that ATI has developed to look at their artwork to see how it’ll look in Truform,” said Nalasco. “Truform enables them to tag specific edges to prevent them from being softened.”
Nalasco used the example of a model from a 3D shooter that’s holding a weapon — the artist can tag the edges of the weapon or the model’s armor to tell Truform not to make that edge soft. This means that other organic elements — the model’s face, or bare arms, or legs, for example — may have more rounded, natural looking features, while the gun or sword still looks real too.
Nalasco described the effect in motion as “shrinkwrapping.” Meshes that were blocky before Truform is applied appear much smoother after Truform is applied. He also suggested that this would aid 3D games with “popping” problems, when objects suddenly gain detail as the game’s engine replaces a low-poly count model with a high-poly count model. The effect using Truform would be much more realistic, with detail gradually filling in as the player got closer to the object.
Better detail without a performance hit
Nalasco said that Truform-enhanced software applications will be able to provide much more detailed, complex models than we’ve seen previously, without significantly impacting the application’s performance — in fact, in many cases, without impacting performance at all.
“Truform all happens inside the chip. You can almost think of it as pre-processing,” said Nalasco. “It happens before you do your rendering and texture mapping. Things like bumpmapping, keyframe interpolation, and per pixel lighting happen after Truform has already been applied.”
“In today’s games, you don’t even come close to maxing out transform and lighting capabilities in the graphics chip itself,” said Nalasco. And, he explained, ATI’s next-generation technology utilizes a memory bandwidth architecture that has several times the capabilities of its current high-end architecture, Radeon. “Truform usually won’t affect performance at all,” said Nalasco.
Quality over quantity
Nalasco suggested that soon, the frame rate of a 3D card wouldn’t be the overriding issue, but what the 3D chip actually does with the graphics to make them looking better. Truform, said Nalasco, is an example of quality over quantity.
That analysis is probably more applicable to the PC market, where some video cards are already regularly turning in frame rates of more than 100 frames per second. Users can certainly see a measurable, playable difference between 30 and 60 frames per second, but there’s a point of diminishing return where the average user just can’t tell the difference anymore. We’re still not at that point on the Mac, but technologies like Truform certainly stand to benefit us regardless.