Page 1:Was It Worth The Wait?
Page 2:Food For Thought: Reasons For This Design
Page 3:Meet The Entire Family
Page 4:Command Processor (CP)
Page 5:Setup Engine
Page 6:Ultra-Threaded Dispatch Processor
Page 8:SIMD Arrays
Page 9:Texture Units
Page 10:Memory Read/Write Cache
Page 11:Render Back-Ends - AA To Z
Page 12:Z Buffers And HiZ
Page 13:Memory Interface And Distribution
Page 14:Tessellation - Needed Or Preemptive?
Page 15:Real World For Games
Page 16:AVIVO-A Lot Of New Hardware
Page 17:AVIVO-A Lot Of New Hardware (Continued)
Page 18:Show Me The Benchmarks!
Page 19:Test Setup
Page 20:Benchmarks Results
Page 21:F.E.A.R. - XP Pro
Page 22:Dude! Where's My Driver?
Page 23:3DMark05 - Vista Ultimate
Page 24:Doom 3 - Vista Ultimate
Page 25:Pricing, Game Bundles And Availability
Real World For Games
Utilizing a tessellator in the pipeline accelerated the performance of games, which had access and were coded for it. This is the case for games built for the Xbox 360. Not only models can be morphed but entire environments. During the Ruby demo, the development team showed just how easy it was to generate an entire scene by using procedurally generated maps.
From this map of noise...
...to this final image using procedurally generated content in hardware.
The team started by showing how a height map could be generated by either using Perlin noise or another technique. They were able to generate a low-poly wire frame mesh of the terrain and a normal map from the same height map. From here the snow was added to the mountains using a shader. There was no need for an artist to touch up the entire scene, which would have taken countless hours. Once all of the code was written, the entire scene came alive and was dynamically controlled by a set of sliders for tessellation and the snowfall.
|Low Resolution with Tessellation||High Resolution, No Tessellation|
|On-disk model polygon count (pre-tessellation)||840 triangles||1,280,038 triangles|
|Original model rendering cost||1210 fps (0.83 ms)|
|Actual rendered model polygon count||1,008,038 triangles||1,280,038 triangles|
|VRAM Vertex buffer size||70 kB||31 MB|
|VRAM Index buffer size||23 kB||14 MB|
|Rendering Time||821.41 fps (1.22 ms)||301 fps (3.32 ms)|
The memory footprint savings alone make it worth using tessellation. Then add in the cost savings for a studio measured by how much time it would take for an artist to create everything versus doing it procedurally. But here's the deal. While tessellation is a great feature, can you really expect that titles will come to market soon, which can use it? Let me put it this way, on the slide before the block diagram shown below, Boyd stated that a fixed function tessellator is already in the proposal and could even get its own stage in the pipeline.
Click for a larger image. Source: Chas Boyd "The Future of DirectX", GDC 2007
Xbox 360 already has these titles. Many tools like Softimage exist on the market that can port DX9 over to DX10. Future releases of DX10 will include tessellation. In what exact format will tessellation come? So far it looks similar to what we see in R600. Of course, the change to tessellation will not happen overnight but the question isn't a matter of "if" but "when." ATI was smart to include such a piece of dedicated hardware.
- Was It Worth The Wait?
- Food For Thought: Reasons For This Design
- Meet The Entire Family
- Command Processor (CP)
- Setup Engine
- Ultra-Threaded Dispatch Processor
- SIMD Arrays
- Texture Units
- Memory Read/Write Cache
- Render Back-Ends - AA To Z
- Z Buffers And HiZ
- Memory Interface And Distribution
- Tessellation - Needed Or Preemptive?
- Real World For Games
- AVIVO-A Lot Of New Hardware
- AVIVO-A Lot Of New Hardware (Continued)
- Show Me The Benchmarks!
- Test Setup
- Benchmarks Results
- F.E.A.R. - XP Pro
- Dude! Where's My Driver?
- 3DMark05 - Vista Ultimate
- Doom 3 - Vista Ultimate
- Pricing, Game Bundles And Availability