Softwere vs. OpenGL vs. DirectX
Модератор: gloom
Softwere vs. OpenGL vs. DirectX
Softwere vs. OpenGL vs. DirectX
Что лучше и прикаких конфигах железа ?
Что лучше и прикаких конфигах железа ?
PH0b0S,
вот уж явно слышал звон, да не знаешь, откуда он...
ну неужели в нете так мало поисковиков, что необходимо гадать и предполагать, а? и что нельзя сходить и поискать информацию по этим вопросам?
на, просвящайся:
вот уж явно слышал звон, да не знаешь, откуда он...

ну неужели в нете так мало поисковиков, что необходимо гадать и предполагать, а? и что нельзя сходить и поискать информацию по этим вопросам?
на, просвящайся:
Direct X писал(а):DirectX is a set of API's (Application Programming Interfaces) developed by Microsoft that provides direct access to hardware in the Windows operating system environment. ( An API acts like a bridge between your program/game and your multimedia hardware). Each API controls a set of low-level functions that access the hardware or provide emulation of the hardware if the hardware does not exist. These functions include support for 2D and 3D graphics acceleration, control over several input devices, functions for mixing and sampling sound and music output, control over networking and multiplayer gaming, and control over various multimedia streaming formats. DirectX through its low level libraries has shifted the burden of hardware support from the game developer to the hardware manufacturer.
DirectX contains two parts - the Runtime and the SDK (Software Developer's Kit). The SDK contains all the headers, libraries, samples, tools, tutorials, and the complete documentation you need to unleash the game programmer in you. Alternatively, if you are in the middle of a game installation and the installer says that you don't have the proper version of DirectX installed, then what you need is just the Runtime!
OpenGL писал(а):Open GL is a library of graphics routines that makes sophisticated 3-D graphics programming accessible to common programmers. It is Platform Independent as it is supported on Windows, Mac, Linux, and several other UNIX variants. Take note that Direct3D works on Windows only. Whether OpenGL or Direct3D, which is best for you, depends on the hardware acceleration provided by their drivers for your graphics card! If you don't have a separate card then Open GL applications that use the hardware features simply won't work.
DirectX on the other hand supports all its features through its 'REF' software rasterizer. So even if the software emulation is "dead-slow"they guarantee that the app will work
. By using the more than 100 supported Open GL commands, a programmer can do anything from creating simple shapes to composing animated scenes. Open GL uses a function oriented interface, while Direct3D uses an object oriented interface. The underlying math and 3D programming theory is the same for both DirectX and OpenGL and if you can learn that you will do fine with both. Other than Direct3D and DirectDraw all other components of DirectX can be used with OpenGL. Although you cannot use DirectDraw for blitting with OpenGL you can still use it to arbitrarily set the display mode resolution and color depth before creating the OpenGL window. All other DirectX API's like DirectSound, DirectInput and DirectPlay can be used together with OpenGL as there is no conflict.
Windows only officially support OpenGL 1.1. On the other hand they try to support each new version of DirectX through their Windows Version that follows. Direct3D as a Microsoft product is updated very frequently and hence supports the latest card features. OpenGL being an open-standard and a community product, takes some time for every member of the committee to jointly reach a new standard. DirectX doesn't support any unofficial features. But OpenGL has an 'extensions' mechanism that allows you to play with certain features of the card before it's been agreed how it officially works. Also since DirectX8's programmable pipeline (Vertex shader and pixel shader), DirectX was almost equivalent with Open GL in terms of 3D Graphics Performance. Developers play a leading role in deciding who will ultimately win in this API war.