![]() |
|
Why MetaVR Uses Microsoft DirectX DirectX is an integrated collection of APIs for developing media rich applications optimized for the Microsoft Windows based environment. These APIs provide low level access to high performance 3D and 2D graphics accelerators, and sound and input devices in a device independent manner via the “hardware emulation layer” (HEL) and the “hardware abstraction layer” (HAL). These layers and APIs make it possible to run the same software on systems with or without hardware acceleration. But, more importantly, they make it possible to take advantage of advances in hardware acceleration without the need to continually re-write and re-optimize code. This has proven invaluable to MetaVR and our customers by enabling upgrades to hardware with the resultant increase in performance without the need to build and test new application code. The following table compares the features found in the DirectX APIs with OpenGL. From this table it is obvious that the OpenGL API provides only the 3D piece of the puzzle. In today's market, applications can no longer afford to be restricted to such a narrowly focused solution. MetaVR adopted the DirectX technology in part because of the ability to build applications based on a single integrated suite of APIs capable of delivering the full range of features required by modern simulation systems. The rapid advance in consumer-level hardware devices which support these APIs has not only made it possible to develop such robust and feature rich applications but made it practical to do so.
With the predominance of DirectX applications in the consumer market, OpenGL graphics card drivers do not receive the same level of attention from 3D hardware vendors as does the Microsoft technology. The Direct3D and DirectDraw components of DirectX were specifically designed by Microsoft to deliver world-class interactive 3D graphics on a Microsoft Windows-based platform. Microsoft has raised Windows-based simulation and game quality performance to rival Silicon Graphics Onyx and Evans and Sutherland visual systems.
Direct3D and DirectDraw enable the application developer to get much closer to the hardware than the more abstract OpenGL. While this makes application development more challenging, it affords the potential for much more efficient applications. Application developers who work with DirectX end up having a deeper understanding of 3D graphics. With the MetaVR VRSG, this low-level graphics development has been done for you, so your simulator can benefit from the increased performance. Direct3D was designed with the modern graphics architecture in mind, which consists of the host CPU performing transformation and lighting, while the graphics accelerator hardware provides the rasterization of primitives. As an example, Direct3D contains a rich set of indexed vertex primitives which minimize the amount of transformation and lighting operations which need to be performed by exploiting the shared nature of highly meshed geometry sets. Another area where significant performance increases can be realized is in the management of textures. Direct3D requires the application to supply textures to the graphics hardware in the pixel format and memory organization required by the hardware. This transfers a lot of responsibility on the application developer to supply textures in the hardware-required format, with the result being that the developer is assured that the driver will not perform any expensive pixel format conversions. OpenGL by contrast defines a finite set of texture pixel formats which if not supported directly by the hardware, results in expensive driver conversions during texture transfers. This feature of Direct3D has enabled our VRSG product to efficiently support massive amounts of texture through our patent-pending tri-tiered virtual texture memory architecture. OpenGL provides extensions to allow graphics hardware vendors to take advantage of features available in their hardware which are not part of the baseline OpenGL specification. This results in different code required to access similar advanced features in different hardware. Direct3D by contrast provides a single consistent API to access the advanced features of different hardware platforms. Microsoft has been providing releases of DirectX at a rate fast enough to keep up with the new feature development of the PC graphics industry. Since its inception in 1996, DirectX is now in its 7th generation. Direct3D and DirectDraw are much more coupled to the overall Windows environment than OpenGL. This allows for much more seamless applications and access to 2D features as well as 3D features. For example, in a DirectDraw/Direct3D application, one could use the Windows GDI interface to create a set of 2D graphics which could be color-key combined with 3D imagery rendered via Direct3D in the graphics accelerator, or GDI-based 2D graphics could be used as textures in the Direct3D 3D environment. In addition to the advantages of the Direct3D and DirectDraw APIs, DirectInput provides for the seamless integration of new and varied input devices from inexpensive 6DOF devices like the SpacePilot or SpaceBall to high resolution trackers like the InterSense IS-300. Because DirectInput bypasses the Windows message system, more devices can be supported with more functions per device and far greater responsiveness. DirectSound provides for low-latency mixing and playback of audio and, like the other DirectX APIs can take full advantage of hardware acceleration when available. DirectSound also provides for 3D effects such as positioning of sound effects, Doppler shift and roll off, providing an un-precedented level of audio realism without the need for an expensive separate audio mixing and sound effects system. DirectX has been designed as an extensible API set ready to support future enhancements and innovations in software and hardware while remaining fast and efficient on any Windows based PC. DirectX has given application developers the freedom to concentrate on developing the capabilities of their applications without having to worry about the end user's PC hardware configuration. When MetaVR software technology is combined with DirectX and consumer-level graphics cards, the result is PC-based immersive virtual environments with the highest performance to price ratio in the industry. |
|||||||||||||||||||||||||||||||||
|