The API that all gamers love to hate is about to undergo its next evolutionary step. DirectX 8.0 is taking shape and is set to go into beta testing in the next month or so. There are lots of new features in this as-yet-unreleased version, but the most revolutionary part may be the way Microsoft is handling the API release process. More on that in a bit.
If you recall, DirectX is divided into APIs that cover different technologies essential for gaming: graphics, sound, multiplayer, and game controllers. Let's examine each one in turn and see what will be shaking.
Graphics
Historically, graphics in DirectX has been divided into two parts: DirectDraw for 2D graphics and Direct3D for taking care of the 3D graphics pipeline. That's about to change. Microsoft's goal for DirectX 8.0 is to merge DirectDraw and Direct3D into a single entity. The focus is to give the best possible support for full-screen 3D game titles. That doesn't mean that 3D in a window goes away. It means that the work that will go into DirectX 8.0 will focus on making full-screen titles run well. Microsoft feels that DirectX 7.0 solved the windowed 3D problem, so 3D in a window is still viable, and it certainly won't disappear.
Microsoft is also working to abstract the API a little more so that more innovative hardware can be developed without having to wait for the API. Rather, innovations can be hidden underneath. For example, the front buffer - which actually contains the displayed image - won't be directly accessible any longer. There will also be a cursor API, which lets hardware vendors finally have a fully supported hardware-accelerated cursor that's supported by DirectX.
One extremely important aspect in the 3D part of the API is the idea of the programmable shader. There are two types of programmable shaders: vertex shaders and pixel shaders. Vertex shaders can be used for complex environment mapping, procedural geometry (things like displacement meshes), and enhanced matrix palette skinning, which allows for more realistic characters (elbows look like elbows when they bend, for example, rather than a pair of 2x4s loosely connected).
Programmable pixel shaders will allow interesting effects, such as true reflective bump mapping. Programmable shaders are nothing new, but the idea of having them in hardware is something new. This will let 3D programmers have the equivalent of register-level access to the shading hardware on the graphics card without having to know the internals of the card. Theoretically, this opens up the possibility of hardware-accelerated procedural textures (textures that are calculated, rather than stored as bitmaps).
Next: Sound and more graphics