DirectX

Material iz Vikipedii -- svobodnoi entsiklopedii
Tekushchaia versiia stranitsy poka ne proverialas' opytnymi uchastnikami i mozhet znachitel'no otlichat'sia ot versii, proverennoi 5 iiunia 2020 goda; proverki trebuiut 62 pravki.
Pereiti k navigatsii Pereiti k poisku
Microsoft DirectX
Tip Sreda dlia prilozhenii
Razrabotchik Microsoft
Napisana na HLSL i C++
Operatsionnaia sistema Microsoft Windows
Data vypuska 30 sentiabria 1995
Posledniaia versiia 12.2 (10 noiabria 2020)
Litsenziia Microsoft EULA
Sait microsoft.com/en-us/down...
Mediafaily na Vikisklade

DirectX (ot angl. direct -- priamoi, neposredstvennyi, proiznositsia kak <>) -- nabor API, razrabotannykh dlia resheniia zadach, sviazannykh s programmirovaniem pod Microsoft Windows. Naibolee shiroko ispol'zuetsia pri napisanii komp'iuternykh igr. Paket sredstv razrabotki DirectX pod Microsoft Windows besplatno dostupen na saite Microsoft. Zachastuiu obnovlionnye versii DirectX postavliaiutsia vmeste s igrovymi prilozheniiami.

Komponenty DirectX

[pravit' | pravit' kod]

Prakticheski vse chasti DirectX API predstavliaiut soboi nabory COM-sovmestimykh ob'ektov.

V tselom, DirectX podrazdeliaetsia na:

  • DirectX Graphics, nabor interfeisov, ranee (do versii 8.0) delivshikhsia na:
    • DirectDraw: interfeis vyvoda rastrovoi grafiki (ego razrabotka davno prekrashchena);
    • Direct3D (D3D): interfeis vyvoda triokhmernykh primitivov.
  • DirectInput: interfeis, ispol'zuemyi dlia obrabotki dannykh, postupaiushchikh s klaviatury, myshi, dzhoistika i prochikh igrovykh kontrollerov.
  • DirectPlay: interfeis setevoi kommunikatsii igr.
  • DirectSound: interfeis nizkourovnevoi raboty so zvukom (formata Wave)
  • DirectMusic: interfeis vosproizvedeniia muzyki v formatakh Microsoft.
  • DirectShow: interfeis, ispol'zuemyi dlia vvoda/vyvoda audio- i/ili videodannykh.
    • DirectX Instruments -- tekhnologiia, pozvoliaiushchaia na osnove mul'timediinogo API DirectX sozdavat' i ispol'zovat' programmnye sintezatory. V otlichie ot DX-plaginov, takie programmy mogut polnost'iu upravliat'sia po MIDI i sluzhat glavnym obrazom ne dlia obrabotki, a dlia sinteza zvuka. Tekhnologiia DXi byla populiarna v 2001--2004 gg., osobenno v programmnykh produktakh Cakewalk, no so vremenem proigrala <> tekhnologii VST ot Steinberg.
  • DirectSetup: chast', otvetstvennaia za ustanovku DirectX.
  • DirectX Media Objects: realizuet funktsional'nuiu podderzhku potokovykh ob'ektov (naprimer, kodirovshchiki/dekodirovshchiki)
  • Direct2D: interfeis vyvoda dvukhmernoi grafiki

Istoriia

[pravit' | pravit' kod]

Iznachal'no natselennyi na razrabotku videoigr, DirectX stal populiaren i v drugikh oblastiakh razrabotki programmnogo obespecheniia. K primeru, DirectX, nariadu s OpenGL, poluchil ochen' shirokoe rasprostranenie v inzhenernom/matematicheskom PO.

V 1994 godu Microsoft byla prakticheski gotova vypustit' sleduiushchuiu versiiu Windows -- Windows 95. Glavnym faktorom, opredeliaiushchim, naskol'ko populiarna budet novaia OS, iavlialsia nabor programm, kotorye mozhno budet zapuskat' pod eio upravleniem. V Microsoft prishli k vyvodu, chto, poka razrabotchiki vidiat DOS bolee podkhodiashchei dlia napisaniia igrovykh prilozhenii, kommercheskii uspekh novoi OS ves'ma somnitelen.

DOS pozvoliala razrabotchiku poluchit' priamoi dostup k videokarte, klaviature/myshi/dzhoistiku i prochim chastiam sistemy, v to vremia kak Windows 95, s eio zashchishchionnoi model'iu pamiati, predostavliala bolee standartizovannyi, no v to zhe vremia ves'ma ogranichennyi i nakladnyi dostup k ustroistvam. Microsoft nuzhdalas' v novom sposobe dat' razrabotchiku vsio, chto emu neobkhodimo. Aisler (Eisler), Seint Dzhon (St. John) i Engstrom (Engstrom) reshili etu problemu, nazvav samo reshenie DirectX.

Pervyi reliz DirectX byl vypushchen v sentiabre 1995 goda pod nazvaniem <>.

Eshchio do poiavleniia DirectX Microsoft vkliuchila OpenGL v OS Windows NT. Direct3D pozitsionirovalsia kak zamena OpenGL v igrovoi sfere. Otsiuda beriot svoio nachalo <> mezhdu storonnikami kross-platformennoi OpenGL i dostupnoi lish' v Windows (v tom chisle Windows NT) Direct3D. Tak ili inache, ostal'nye chasti DirectX ochen' chasto kombiniruiutsia s OpenGL v komp'iuternykh igrakh, tak kak OpenGL kak takovoi ne podrazumevaet funktsional'nosti urovnia DirectX (naprimer, dostupa k klaviature/dzhoistiku/myshi, podderzhki zvuka, igr po seti i t. d.).

DirectX iavliaetsia bazoi dlia Xbox API. Xbox API skhozh s DirectX 8.1, no obnovlenie versii, kak i na drugikh konsoliakh togo vremeni, nevozmozhno.

V 2002 godu Microsoft vypustila DirectX 9 s uluchshennoi i rasshirennoi podderzhkoi sheiderov. S 2002 goda DirectX neodnokratno obnovlialsia. V avguste 2004 goda v DirectX byla dobavlena podderzhka sheiderov versii 3.0 (DirectX 9.0c).

V aprele 2005 interfeis DirectShow byl peremeshchion v Microsoft Platform SDK.

Khronologiia versii DirectX

[pravit' | pravit' kod]
Versiia DirectX Logotip Nomer versii Operatsionnaia sistema Data reliza
DirectX 1.0 4.02.0095 Windows 95a 30 sentiabria 1995
DirectX 2.0 / 2.0a 4.03.00.1096 Windows 95 OSR 2 i Windows NT mladshe 4.0 5 iiunia 1996
DirectX 3.0 / 3.0a 4.04.0068 / 69 Windows 95 OSR 2.5 i Windows NT 4.0 SP3
posledniaia ofitsial'no podderzhivaemaia versiia DirectX dlia Windows NT 4.0
15 sentiabria 1996
DirectX 4.0 4.05.00.0155 (RC55) Dostupen kak beta dlia Windows NT 4.0 16 iiulia 1997
DirectX 5.0 4.05.01.1721 / 1998 Windows 98 5 maia 1998
DirectX 6.0 4.06.00.0318 (RC3) Windows 98 SE
posledniaia podderzhivaemaia versiia DirectX Media dlia Windows NT 4.0, a takzhe dannaia versiia DirectX byla v Dreamcast
7 avgusta 1998
DirectX 6.1 4.06.02.0436 (RC0) Windows 95/98/98SE 3 fevralia 1999
DirectX 6.2 5.00.2516.1900 (unofficial patch) Windows NT/98SE/98/2000/ME 21 avgusta 1999
DirectX 7.0 4.07.00.0700 (RC1) Windows 2000 i Windows ME 22 sentiabria 1999
DirectX 7.0a 4.07.00.0716 (RC1) Windows 95/98/98SE/2000 17 dekabria 1999
DirectX 8.0 4.08.00.0400 (RC10) Windows 95/98/98SE/2000/ME 12 noiabria 2000
DirectX 8.0a 4.08.00.0400 (RC14) Posledniaia podderzhivaemaia versiia DirectX dlia Windows 95 5 fevralia 2001
DirectX 8.1 4.08.01.0810 Windows XP/XP SP1 25 oktiabria 2001
4.08.01.0881 (RC7) Windows 98/98SE/2000/ME 8 noiabria 2001
DirectX 8.1b 4.08.01.0901 25 iiunia 2002
DirectX 8.2 4.08.02.0134 (4.09.00.0134) 27 sentiabria 2002
DirectX 9.0 4.09.0000.0900 Windows Server 2003 24 dekabria 2002
DirectX 9.0a 4.09.0000.0901 26 marta 2003
DirectX 9.0b 4.09.0000.0902 (RC2) 13 avgusta 2003
DirectX 9.0c 4.09.0000.0904 (RC0) Windows XP SP2
posledniaia podderzhivaemaia versiia DirectX dlia Windows 98SE i Windows Me
9 avgusta 2004
DirectX 9.0L 4.09.0000.0905 (?) Predostavliaet dopolnitel'nye interfeisy IDirect3D9Ex i IDirect3DDevice9Ex s funktsional'nost'iu, dostupnoi lish' cherez LDDM-draivery OS Windows Vista.
DirectX 10 (vkliuchion v sostav Windows Vista)
6.0.6000.16386 Pervaia versiia dlia Windows Vista. Informatsiia po Direct3D10
10 noiabria 2006
DirectX 10.1 6.00.6001.18000 Service Pack 1 dlia Windows Vista, Windows Server 2008 4 fevralia 2008
DirectX 11 (vkliuchion v sostav Windows 7)
6.01.7600.16385 Windows 7, Windows Server 2008 R2 22 oktiabria 2009
6.00.6002.18107 Windows Vista SP2 i Windows Server 2008 SP2 cherez Platform Update for Windows Vista and Windows Server 2008[1] 27 oktiabria 2009
6.01.7601.17514 Windows 7 SP1, Windows Server 2008 R2 SP1 16 fevralia 2011
DirectX 11.1 (vkliuchion v sostav Windows 8) [2] 6.02.9200.16384 Windows 7 SP1, Windows 8, Windows RT, Windows Server 2012 1 avgusta 2012
DirectX 11.2 (vkliuchion v sostav Windows 8.1) 6.03.9600.16384 Windows 8.1, Windows RT, Windows Server 2012 R2 18 oktiabria 2013
DirectX 11.3 (vkliuchion v sostav Windows 10) Windows 10 29 iiulia 2015
DirectX 12 (vkliuchion v sostav Windows 10) 10.00.10240.16384 Windows 10, Xbox One, Xbox Series X 29 iiulia 2015
DirectX 12.1 10.00.17763.0001 Windows 10, dobavlena podderzhka DirectX Raytracing[3] 2 oktiabria 2018
DirectX 12.2 10.00.19041.0928 Windows 10, Ultimate 10 noiabria 2020

Kliuchevye osobennosti

[pravit' | pravit' kod]

Sovmestimost'

[pravit' | pravit' kod]

Mnogie sovremennye ustroistva imeiut DirectX-sovmestimye draivery, inymi slovami, pol'zovatel' dolzhen ustanovit' DirectX dlia ispol'zovaniia vsekh vozmozhnostei ustroistva. Na dannyi moment sistema obnovleniia draiverov Windows Update pozvoliaet zagruzhat' tol'ko neobkhodimye biblioteki, a ne ves' draiver tselikom.

Podderzhivaemye operatsionnye sistemy:

Biblioteki-obiortki

[pravit' | pravit' kod]

V sluchae vozniknoveniia razlichnykh problem pri ispol'zovanii ustarevshikh prilozhenii i igr mozhno vospol'zovat'sia spetsial'noi bibliotekoi-obiortkoi (wrapper).

Na tekushchii moment sushchestvuet para takikh variantov, v tom chisle transliatsiia vyzovov v drugie API, no vysokaia skorost' raboty vozmozhna tol'ko iz <>.

  • dgVoodoo2 -- vrapper dlia zapuska ustarevshikh igr na osnove DirectX 1-7 i tak zhe 8-9 v DirectX 11 s urovnem funktsii 10/10.1 ili cherez WARP. V pervuiu ochered' ispol'zovalsia dlia zapuska Glide-igr, no pozzhe byla dobavlena podderzhka DirectX.[4]
  • dxwrapper -- obertka dlia zapuska DirectX 1-8 v DirectX 9.[5]
  • D9VK -- obertka dlia ispol'zovaniia DirectX 9 igr i prilozhenii pod Vulkan bez neobkhodimosti ikh perepisyvat'.[6]
  • DXVK -- obertka dlia ispol'zovaniia DirectX 8/9/10/11 igr i prilozhenii cherez Vulkan.
  • VKD3D -- obertka dlia zapuska DirectX 12 igr i prilozhenii cherez Vulkan.
  • WineD3D -- obertka dlia zapuska prilozhenii i igr DirectX 1-11 cherez OpenGL.

Sm. takzhe

[pravit' | pravit' kod]

Primechaniia

[pravit' | pravit' kod]
  1. | Microsoft upgrades Windows Vista with DirectX 11 . pcgameshardware.com. Data obrashcheniia: 3 maia 2016. Arkhivirovano iz originala 31 marta 2016 goda.
  2. | Novye vozmozhnosti Direct3D 11.1 / Khabrakhabr Arkhivirovano 17 sentiabria 2011 goda.
  3. | DirectX Raytracing and the Windows 10 October 2018 Update (angl.) (2 oktiabria 2018).
  4. | dgVoodoo2 . dege.freeweb.hu. Data obrashcheniia: 5 avgusta 2019. Arkhivirovano iz originala 5 avgusta 2019 goda.
  5. | Elisha Riedlinger. Fixes compatibility issues with older games running on Windows 10 by wrapping DirectX dlls. Also allows loading custom libraries with the file extension .asi into game processes.: elishacloud/dxw... -- 2019-08-04. Arkhivirovano 7 noiabria 2019 goda.
  6. | Joshua-Ashton. A Direct3D9 to Vulkan layer using the DXVK backend. Github. Data obrashcheniia: 5 avgusta 2019. Arkhivirovano 2 marta 2019 goda.

Literatura

[pravit' | pravit' kod]
  • Adams D. DirectX: prodvinutaia animatsiia. Komplekt. -- <>, 2004. -- S. 480. -- ISBN 5-9579-0025-7.

Ssylki

[pravit' | pravit' kod]
Osnovnye
Sluzhby
upravleniia
Prilozheniia
Win32
UWP/WASDK[angl.]
Istoricheskie
Igry
Iadro OS
Sluzhby
Failovye
sistemy
Servery
Arkhitektura
Bezopasnost'
Sovmestimost'
PO
Servernoe PO[angl.]
Tekhnologii
Internet
Igry
Apparatnoe
obespechenie
Obrazovanie
Litsenzirovanie
Podrazdeleniia
Reklamnye kampanii
Sovet direktorov
Istochnik -- https://ru.wikipedia.org/w/index.php?title=DirectX&oldid=150790172