140 likes | 158 Views
Microsoft DirectX is a set of APIs for multimedia tasks, primarily game programming on Windows platforms. It consists of runtime and SDK components, enhancing game development and providing low-level libraries for creative freedom. DirectX components include Graphics, Draw, 3D, Input, Play, Show, Setup, Audio, Sound, and Music. The evolution of DirectX versions brought advancements like GPGPU computing and HLSL for graphics creation. Learn about DirectX's architecture, historical development, key features, and significance in modern gaming technology.
E N D
What is DirectX? • Microsoft DirectX is a collection of application programming interfaces (APIs) for handling tasks related to multimedia, especially game programming and video, on Microsoft platforms.
What is Direct X? • There are two parts to DirectX; the 'runtime' and the 'SDK' (Software Development Kit). Both are free; the runtime is what players need to have on their computers in order to play a game, and the SDK is what a programmer needs to create games that use DirectX. • Windows XP comes with the DirectX 8 runtime automatically installed; it's a 4 MB download if players don't have it. • The SDK, is over 100 MB to download, and it contains all the headers and libraries you need, plus documentation, samples, tutorials, and tools. Players don't need the SDK, only the runtime. • Most games for Windows nowadays use DirectX in some form or another; it is also the technology which powers Microsoft's XBox.
Why DirectX was created? The Problem: • DOS vs. Windows 3.1 platform difference. • The PC architecture was never designed as a gaming platform. • Machine can be VERY different from another. The Goal: • Make Windows a desirable platform for game development. • Fast, low-level libraries to allow the developer maintain creative freedom over his games. • Shift the burden of hardware support from the game developer to the hardware manufacture. • Coexist peacefully with other Windows components.
DirectX components • DirectX Graphics • Direct Draw • Direct3D • DirectInput • DirectPlay • DirectShow • DirectSetup • DirectAudio • DirectSound • DirectMusic
DirectX Graphics Direct Draw - for drawing 2D Graphics (raster graphics). Deprecated in favor of Direct2D, though still in use by a number of games and as a video renderer in media applications. Direct3D - The Microsoft Direct3D API (Direct3D) provides an interface to the 3-D rendering functions built into most new video adapters. Direct3D is a low-level 3-D API that provides a device-independent way for software programs to communicate with accelerator hardware efficiently and powerfully. Direct3D includes support for specialized CPU instructions sets.
DirectInput - The Microsoft DirectInput API provides advanced input for games and processes input from joysticks as well as other related devices including the mouse, keyboard, and force-feedback game controllers. DirectPlay - The Microsoft DirectPlay API supports game connections over a modem, the Internet, or LAN. DirectPlay simplifies access to communication services and provides a way for games to communicate with each other, independent of the protocol, or online service. DirectPlay provides lobbying services that simplify the initialization of a multiplayer game, and supports reliable communication protocols to ensure that important game data is not lost on the network. DirectShow - The Microsoft DirectShow API provides high-quality capture and playback of multimedia files located on your computer and on Internet servers. DirectShow supports a wide variety of audio and video formats, including Advanced Streaming Format (ASF). DirectSetup - For the installation of DirectX components, and the detection of the current DirectX version.
DirectX Audio DirectSound - The Microsoft DirectSound API provides a link between programs and an audio adapter's sound mixing, sound playback, and sound capture capabilities. DirectSound provides multimedia software programs with low-latency mixing, hardware acceleration, and access to the sound device. DirectMusic - The Microsoft DirectMusic API is the interactive audio component of DirectX. Unlike the DirectSound API, which captures and plays digital sound samples, DirectMusic works with digital audio, as well as message-based musical data that is converted to digital audio either by your sound card or by its built-in software synthesizer.
Version History • DirectX 1.0 – Released in late 1995 • DirectX 2.0-5.2 – Windows 95 to Windows 98 • DirectX 6.0+ - Windows CE, introduced 2 new SDKs (DirectX SDK & DirectX Media SDK) • DirectX 7+ - Windows Me, Media SDK merged into DirectX API, DirectX Media deprecated • DirectX 8+ - Windows XP & Xbox, DirectDraw & Direct3D merged into DirectX Graphics API - DirectSound and DirectMusic merged into DirectX Audio API • DirectX 9+ - Windows XP SP2 & Xbox 360; High Level Shader Language (HLSL) - Powerful new programming model offering easy graphics creation toolset • DirectX 10+ - Windows Vista – biggest ever update, no backwards compatibility - Departure from driver model of DirectX 9.0 - Introduction of scheduler and memory virtualization system - Got rid of “capability bits” to indicate active features on current hardware. - Defined minimum standard of hardware capabilities for a display system • DirectX 11+ - Windows 7, Win 8, Win 8 RT, Win 8.1 - Introduced GPGPU (General Purpose Computing on GPUs) & 3D tesselation • DirectX 11.X - DirectX API for Xbox One, to be updated to v12.0. • DirectX 12 was announced by Microsoft at GDC on March 20, 2014, and was officially launched alongside Windows 10 on July 29, 2015. DirectX 12 APIs are also expected to feature on the Xbox One and Windows Phone. The version of DirectX that runs on the Xbox One, DirectX 11.X, already includes a subset of the features in DirectX 12.Microsoft has stated that the performance improvements of DirectX 12 on the Xbox One will not be as substantial as that on the PC.
Conclusion • DirectX gives multimedia applications greater access to advanced features of high-performance hardware such as 3D graphics acceleration chips and sound cards. • It controls 2D graphics acceleration; • Support for input devices: 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.
https://www.youtube.com/watch?time_continue=70&v=c4cXG8zu61Y