Reviews   ::        

Articles   ::        

Home   ::        

Links   ::        

Archives   ::        

Search   ::        

About Us   ::        
HDTV Costs     

HDTV Guide     

Diskeeper 9     

Stor n Go PRO     

Blade SSD Server     


  Just what is DirectX?

Author: Mungler
Editor: Agi

With the recent release of  version 9.0c, DirectX once again takes its place in the spotlight. I thought I would use this occasion to review what makes DirectX tick.

It also occurred to me the other day that DirectX, and it's various versions, has a great impact on many aspects of Windows computing...affecting much more than just our gaming experience and yet, has managed to stay quite low on most user's radar.

What is DirectX?
DirectX is a set of multimedia Application Programming Interfaces (API's) written by Microsoft. It is a collection of Dynamic Link Libraries (DLLs) that contain functions useful to a wide range of multimedia programmers, but are all almost entirely platform independent. This allows programmers access to fast graphics, sound, and input functions while not needing their apps to test for the capabilities of the computer on which their program is running. DirectX will evaluate these capabilities and if they are not present, DirectX may attempt (in many cases) to emulate the functions in software instead of hardware.

DirectX Logo

Back in the height of DOS, people like game developers had direct access to the hardware for which they were developing. With complete access to interrupts, sound cards, input devices, and the VGA controller, the developers could usually make the hardware do anything they could dream up. The release of Windows 3.1 did not tempt developers because of the massive overhead that came along with it for game development. However, DOS had its own problems.


Hardware device support in DOS became a complicated nightmare. As the desktop computer became more and more popular with the average household, more hardware competition developed, giving rise to hundreds of different posible PC configurations. With the skyrocketing number of configurations to code for, more development time was being spent programming support for the hardware, which left less and less time in the project plans for programming the games themselves!! Fortunately, that was about to change.

[Ed. Note - How many gamers remember how difficult it was to get things like soundcards working in DOS games? Fooling around with IRQ's and DMA channels was an exercise in frustration. Or how about memory allocation? Working with EMM/XMS could be equally frustrating.]

With the usual promises of something new, different and better, Microsoft unleashed Windows 95 into the world. Windows 95 had many new things to offer over and above its DOS-based predecessor. ??Plug and Play? was introduced in an attempt to make it simple for the average PC user to install the latest hardware. The resource-handling system was completely revamped to make device management easier and device independence more of an actual reality. Unfortunately, Windows 95 lacked the necessary performance enhancements to sway developers interest in the Windows 95 Platform. Consequently, many games ran in a DOS mode or required a reboot of the PC so that they could start up their own DOS-like system. DirectX set out to change all this.

Windows 95

The seemingly simple goal of making Microsoft Windows a desirable platform for multimedia development turned out to be a much greater undertaking than MS probably first thought. It was quickly determined that in order to provide the performance needed, DirectX would need to operate through fast, low-level libraries that allowed the developer to maintain creative freedom over their code.

The next item on the DirectX developers list was to shift the burden of hardware support from the multimedia developer to the hardware manufacturers. This makes much more sense, as hardware manufacturers are more qualified to write the drivers for their products than any application developer. This approach also helped to unify the standard for technology drivers, keeping the essential compatibility aspects in the forefront for all kinds of additional PC components.

Another feature of DirectX is the capability of DirectX applications to run side by side with non DirectX applications without causing any system problems. Lastly, DirectX would have the performance that was capable in DOS while meeting all the other specifications. 


What does DirectX do.
DirectX provides a key set of tools and commands to enhance games and other multimedia applications allowing the hardware and the software to "talk" to each other with much greater ease. The API gives multimedia applications greater access to the advanced features of high-performance hardware such as three-dimensional (3D) graphics acceleration chips and uber sound cards. They also control many other lower-level functions; this includes two-dimensional (2D) graphics acceleration; support for the wide range of input devices such as joysticks/joy-pads, keyboards, mice, controls sound mixing and sound output on a vast range of audio hardware, controls networking and multiplayer gaming, and control over various multimedia streaming formats. With each new revision, more feature support is added for emerging technology so that developers can begin to use that new technology as soon as possible, and hopefully, bringing the technology to us sooner.

Major Components
The following are the major components (with their related function) that make up DirectX:

  • DirectDraw - 2D Graphics
  • Direct3D - 3D Graphics
  • DirectSound - 2D Sound
  • DirectSound3D - 3D Sound
  • DirectMusic - Music
  • DirectPlay - Network/Multiplayer
  • DirectInput - Input Devices

Next Page
Table of Contents
Page 1:
Page 2: DirectX (cont)

      Posted by: , September 21, 2004, 6:00 pm  

    Cool banner #1
       ::  USB News

       ::  Bjorn 3D

       ::  [H]ardOCP

       ::  BurnOutPC

       ::  I am Not a Geek

Top Products














Sound Cards

Creative Labs



Graphic Cards




Hard Drives







2001 - 2004 Digital Silence
Digital Silence is not responsible for the information or the accuracy of the information above.
All trademarks and copyrights owned by their respective companies.

Graphical Design by Mohsin Ali
Website Layout by Universal Interactive

PHP Programming by Network Innovations
Additional HTML Programming by Moddin.Net