DirectX is the collective name for Microsoft's software development kit (SDK) designed specifically for creating high-performance games on Win32 platforms. DirectX consists of several components, including DirectDraw, Direct3D, DirectSound, DirectMusic, DirectPlay, DirectInput, and DirectSetup. Fastgraph supports but does not require the DirectDraw and Direct3D components of DirectX.

The DirectDraw component provides video memory management and hardware-accelerated blitting and page flipping capabilities. DirectDraw is most useful for creating full screen programs because you can define both the screen resolution and color depth "on the fly", much like setting a video mode under DOS. This lets you select a screen mode that matches your drawing surfaces, which usually improves performance.

The Direct3D component works together with DirectDraw to provide hardware acceleration for 3D operations. For video cards with partial or no 3D hardware support, Direct3D emulates the operation through software rendering. As you might expect, Direct3D hardware acceleration is very fast, but its software rendering is rather slow, often unbearably slow. Fastgraph includes its own 3D software rendering that is only slightly slower than Direct3D hardware acceleration (and sometimes even faster). This lets you write a DirectX application that will use Direct3D hardware acceleration if available, but if not, use Fastgraph's 3D software rendering without sacrificing too much in terms of 3D performance.

Fastgraph includes separate DirectX libraries that use the same API as its native libraries. This makes it possible to create native or DirectX programs from the same source code with just a small amount of conditional compilation. Chapters 4 and 14 show how to do this and provide complete information about using Fastgraph with DirectDraw and Direct3D.

<< Prev

Next >>

Fastgraph Home Page


copyright 2001 Ted Gruber Software, Inc.