Importance . History of Direct X Where it is mainly used ? Components of direct X . Current Version … Other similar technologies ! Future ? 2
Windows interfaces / API from Microsoft designed to provide software developers with direct access to low-level functions on PC peripherals. DirectX provides a high-level interface for accessing low-level functions "directly." by using the hardware abstraction layer in Windows . i.e. Direct access . DirectX provides the interface to access the frame buffer and advanced features of the display adapter, which are not provided in the standard Windows GDI graphics interface. DirectX is capable of emulating graphics functions in software that are not built into the display adapter 4
developer and the hardware manufacturer. Fast, low latency access to hardware Hardware emulation for certain tasks (if required) A single set of API calls regardless of system hardware. Multiplayer support that is indifferent to transport media (TCP/IP, IPX, Null Modem, etc.). And so much more! 5
September of 1995. Developed by Craig Eisler, Alex St. John, and Eric Engstrom of Microsoft Inc. In November 8, 2001 DirectX started using with Xbox . In September 2006 Microsoft Released DirectX 10 6
in applications where performance is important, such as games. Direct3D uses hardware acceleration if it is available on the graphic board. The entire or part of the 3D rendering pipeline can be accelerated in hardware. Direct3D exposes the advanced graphics capabilities of 3D graphics hardware, including z-buffering, anti-aliasing, alpha blending, mipmapping, atmospheric effects, and perspective-correct texture mapping. 18
at a level comparable to GDI. With a COM based architecture. The main difference is that Direct3D is directly connected to display drivers and gets better results at rendering than GDI. 19
a low-level interface to every video card 3D function such as transformations, clipping, lighting, materials, textures, depth buffering and so on.. is built over Immediate mode and provides higher level graphics techniques such as hierarchy and animation. Architecture…… 20
top performance is important. DirectDraw allows direct access to video memory, hardware overlays, hardware blitters, and page flipping.etc DirectDraw is a 2D API. That is, it contains commands for 2D rendering and does not support 3D hardware acceleration. As of DirectX version 8.0, DirectDraw and Direct 3D was merged into a new package called DirectX Graphics. DirectDraw 21
provides many needed capabilities such as recording and mixing sound; adding effects to sound e.g. reverb, echo, flange…. Etc It helps in positioning sounds in 3D space, capturing sounds from a microphone or other input and controlling capture effects during audio capture. DirectSound also allows several applications to conveniently share access to the sound card at the same time. This provides the ability for games to modify a musical script in response to game events in real time, DirectSound 23
allows software developers to write to a single standardized audio API instead of writing code for each audio card manufacturer. Integrated API for Xbox 3 and Microsoft Windows, Announced to release on the end of 2007 or later. DirectSound 24
allows music and sound effects to be composed and played and provides flexible interactive control over the way they are played. Acts as a layer built on top of Direct Sound. Rather than a static playback, it can respond to flexible program events. DirectMusic 25
files or resources in MIDI, WAV, or DirectMusic Produced run-time format. The file size of DirectMusic sound tracks being relatively small, makes it very well suited for Web applications Schedule the timing of musical events with high precision. Play from multiple sources simultaneously, each with separate timing and instrument sets. Possible to do tempo changes, patch changes, and other MIDI events programmatically. Locate sounds in a 3D environment. Capture MIDI data, or stream it from one port to another.……. 26
from the user, via input devices such the mouse, keyboard, joystick or game controllers. It provides a system for action mapping, which allows you to assign specific actions within a game to the buttons and axis on your input devices. DirectInput 27
application to retrieve data from input devices even when the application is in the background. It provides full support for any type of input device, as well as for force feedback. Through action mapping, applications can retrieve input data without needing to know what kind of device is being used to generate it. 28
a high-level software interface between applications and communication services that makes it easy to connect games over the Internet, a modem link, or a network. Basic Interfaces Client – server Pear - to - Pear DirectPlay 30
complementing DirectX. It included DirectAnimation for 2D web animation, DirectShow for multimedia playback and streaming media. DirectShow contained DirectX plugins for audio signal processing and DirectX Video Acceleration for accelerated video playback. Microsoft integrated direct show with Direct media since April 2005 DirectMedia 31
objects, materials, clutter, vegetation, shadowswith LESS CPU cycles, stalls, and bandwidth cost Unified, more capable, shader programming model 4.0 Flexible memory model New pipeline stages Empower the GPU to handle a new series of applications. DirectX 10.0 35
Better to use in games. • Platform Dependent (PC Windows platform) • Very difficult use (steep learning curve) with large code overhead in comparison to OpenGL. 39
on top of OpenGL . Platform Independent. Ability to distribute over the web (3D Applets). Small Code size (similar to OpenGL overhead). Also-Magician is a front-end to OpenGL. Java Language:-NO Pointers->No Headaches!!!!!!. Slow (Java Byte code is interpreted by the Java Virtual Machine, which then talks to Lower Level OpenGL Layer. 41
will be shipped with, and require, Windows Vista Service Pack 1 in January 2008. It will be backwards compatible with DirectX 10.0 hardware, but the new features are only available to 10.1 compliant . Features scheduled for DirectX 10.1 include: Mandatory 32-bit floating point filtering Mandatory 4x anti-aliasing Shader model 4.1 43