Tuesday, 10 July 2012

Swift Shader 3.0

For real-time rendering the focus is on performance. The earliest texture mapped real-time software renderers for PCs used many tricks to create the illusion of 3D vision. (True 3D was limited to flat or Gouraud-shaded polygons employed mainly in flight simulation genres.) Wolfenstein 3D was restricted to one height of floor and ceiling, Doom introduced stairs and elevators, and Duke Nukem 3D allowed a limited form of looking up and down as well as allowed slanted floors. The technology used in these games is currently categorized as 2.5D. One of the first 'real' textured 3D games, allowing six degrees of freedom (three movement axes, three rotation axes), was Descent, which featured 3D models entirely made from polygons instead of sprites. Voxel-based graphics also gained popularity for fast and relatively detailed terrain rendering but later polygons took over completely. The 3D game revolution started with Quake, which features a technically superior software renderer by Michael Abrash and John Carmack (founder of id Software). With its popularity, Quake (which later got extensions for hardware acceleration) and other 3D games of that time helped the sales of graphics cards, and more games started using hardware APIs like DirectX and OpenGL. Although this also announced the death of software rendering as the primary rendering technology, many games well into the 2000s still had a software renderer as a fallback. Most notably Unreal and Unreal Tournament feature a software renderer that is able to produce enjoyable quality and performance and made use of CPU instruction set extensions like MMX. One of the last high-end games using only a software renderer was Outcast, which featured advanced voxel technology but also texture filtering and bumpmapping as found on graphics hardware.


Post a Comment