DirectX
DirectX — գրադարանների հավաքածու, որը նախատեսված է Windows օպերացիոն համակարգի գրաֆիկական բաղկացուցիչների համար։ Այն հանդիսանում է առանձին գրաֆիկական գրադարանների – Direct3D, DirectDraw, DirectMusic, DirectPlay, DirectSound միավորումը, և մեծապես կիրառվում է համակարգչային խաղերում և գրաֆիկական ծրագրերում, ինչպես նաև Մայքրոսոֆթի այլ նախագծերում, ինչպիսիք են Xbox-ը, որի X տառը սերում է հենց DirectX-ի վերջավորությունից։
![]() | |
---|---|
Տեսակ | Ծրագրերի բաղադրիչ |
Հեղինակ | Microsoft |
Նախագծումը՝ | Մայքրոսոֆթ |
Գրված է՝ | High Level Shader Language? և C++ |
ՕՀ | Microsoft Windows |
Լույս տեսավ՝ | սեմպտեմբերի 30 1995թ. |
Զարգացման կարգավիճակ | Գործադրվող |
Արտոնագիր | Microsoft EULA |
Հիմք են ծառայել | Component Object Model? |
Հաջորդ | 12 (2015) |
Կայք | DirectX |
DirectX Վիքիպահեստում |
DirectX–ի ծրագրերի զարգացման հավաքածուն (Software Development Kit, SDK) ներառում է անհրաժեշտ գրադարաններ, գլխամասային ֆայլեր և ծրագրային օրինակներ։ Գրադարանները ի սկզբանե նախատեսված էին որպես DirectX-ով գրված ծրագրերին անհրաժեշտ ուղեկցող ֆայլեր։ Մինչև Windows 8–ի թողարկումը DirectX-ի ստեղծման հավաքածուն տրամադրվում էր անվճար ներբեռնման համար, ապա ինտեգրվել է Windows–ի ծրագրերի ստեղծման հավաքածույին։
Պատմություն
խմբագրելԴեռևս 1994 թվականին, երբ Մայքրոսոֆթը պատրաստվում էր թողարկել իր հաջորդ, Windows 95 օպերացիոն համակարգը, կարևոր էր համարում այն հատկանիշը, որպեսզի օգտատերերը կարողանան աշխատել այն ծրագրերով, որոնք ստեղծված էին ավելի հին Windows–ի տարբերակների վրա։ Մայքրոսոֆթի աշխատակից Ալեքս Ստ․ Ջոնը խաղեր ստեղծող տարբեր ծրագրավորողների հետ քննարկմանը հարցրել է թե ինչպես են նրանք տեղափոխելու MS-DOS–ով գրված խաղերը դեպի Windows 95, և որպես պատասխան ստացել բացասական կարծիքներ, քանզի օպերացիոն համակարգը անհրաժեշտ հասանելիություն MS-DOS-ի և առհասարակ BIOS-ի ֆունկցիաներին և ուղիղ ապարատային սարքավորումներին[1]։ Կային նաև սուր մտահոգություններ համատեղելիության մասին․ որպես օրինակ կարելի է վերցնել «Դիսնեյի Անիմացիոն Պատմությունների Գրքի Առյուծ Արքա»–ի մասին խաղը, որը հիմնված էր WinG գրադարանի վրա[2]։ Compaq ընկերության բազմաթիվ անհամատեղելի և WinG գրադարանով ոչ թեստավորված դրայվերների առկայությունը առաջացնում էր այնքան շատ խնդիրներ, որոնք ուղղակի անհնարին էին դարձնում խաղալը և հեղեղում էին Դիսնեյի սպասարկման թեժ գծերը[3][4]։
Ստ․ Ջոնը հասկանալով խաղային անհամատեղելիության խնդիրները, վարձեց երկու ինժեներ–ծրագրավորող Կրեյգ Էյսլերին և Էրիկ Էնգստրոմին, և սկսեցին աշխատել «Մանհեթենյան Նախագիծ» անվանումով նախագծի վրա։ Այն անվանված էր Երկրորդ համաշխարհային պատերազմի Մանհեթենյան նախագծի պատվին, որպեսզի ճապոնացիների կողմից մշակած խաղային կոնսոլները փոխարինվեն Մայքրոսոֆթի օպերացիոն համակարգով աշխատող անհատական համակարգիչներով։ Սկզբում որպես նախագծի պատկերանշան օգտավործվում էր ռադիացիայի նշանը, սակայն Մայքրոսոֆթը թիմին խնդրեց փոխարինել նշանը, ինչի արդյունքում այն փոխվեց ուղղաթիռի պտտվող մեխանիզմի նշանով։ Ղեկավարությունը համաձայն չէր այս նախագծին, քանի որ նրանք արդեն հրաժարվել էին Windows-ից՝ որպես խաղային հարթակ, թեպետ երեքն էլ պարտավորվել էին զարգացնել նախագիծը:[5] Թիմի ըմբոստ բնույթը դրդեց Բրեդ Սիլվերբերգին ՝ Մայքրոսոֆթի գրասենյակային արտադրանքի ավագ փոխնախագահին, եռյակին անվանել «Հրեշավոր տղաներ» (Beastie Boys):[6]
Աշխատանքի մեծամասնությունը հանդիսանում էր 1994 թվականի վերջերին ստեղծված նմանատիպ նախագծերի միավորումը, և 4 ամսվա ընթացքում, տարբեր մատակարարների ծրագրային ներդրումների շնորհիվ թիմը ստեղծեց առաջին ծրագրերի ստեղծման հավաքածուները (API-ները), որոնք ներկայացվել էին 1995 թվականին Սան Ֆրանցիսկո քաղաքում անցկացվող Խաղային Ծրագրավորողների (GDC) կոնֆերենցիային։ API-ի մեջ ներկայացված էին DirectDraw–ը, որը բիթերով քարտեզագրված (bit-mapped) գրաֆիկա էր տրամադրում, DirectSound–ը աուդիոյի համար, և DirectPlay–ը ցանցով խաղացողների փոխկապակցման համար։
Գրադարանների «Direct» նախդիրը առաջացել էր նրանից, որ գրադարանները շրջանցում էին Windows 95–ի համակարգային ֆունկցիաները և դիմում էին ապարատային ռեսուրսներին Ապարատային Աբստրակցիայի Շերտով (Hardware Abstraction Layer, HAL), իսկ հենց «DirectX» անվանումը ստեղծվել էր մի լրագրողի կողմից, որը ընդհանրացրած կերպով ներկայացրել էր գրադարանները իր հոդվածում։ Թիմը նույնպես օգտագործեց այդ անվանումը, և հետագայում գրադարանների կազմը անվանվեց DirectX։
Առաջին DirectX-ը գործադրվեց նույն թվականի սեպտեմբերին «Windows Game SDK» անվան տակ։ Իր DirectDraw կոմպոնենտը հանդիսանում է Windows 95-ում Win32-ի նկարչական և Windows 3.1–ի WinG գրադարանների փոխարինիչը։ Սկսած Windows 95–ից DirectX–ը բոլոր հետագա Windows–ի տարբերակների համար թույլատրեց օգտագործել բարձր մակարդակի մուլտիմեդիան։ Կրեյգ Էյսլերը անգամ իր բլոգում նկարագրել էր DirectX–ի 1–5 տարբերակների մոլեգնության մասին[7]։ DirectX–ը ավելի շատ ծրագրավորողներին օգտագործելու դրդելու համար Մայքրոսոֆթը id Software–ի ծրագրավորող Ջոն Կարմակին առաջարկեց պորտավորել Doom և Doom 2 խաղերը MS-DOS–ից դեպի DirectX գրադարաններ՝ անվճար և առանց խաղային իրավունքների փոխանցման։ Կարմակը համաձայնվեց և նախագիծը ղեկավարում էր Գեյբ Նյուելը։ Արդյունքում պորտավորված խաղը 1996 թվականի օգոստոսին թողարկվեց որպես Doom 95, և հանդիսացավ DirectX–ով գրված առաջին խաղը։ Մայքրոսոֆթը խաղը մեծապես գովազդում էր, անգամ Բիլ Գեյթսի հայտնվելով գովազդում։
DirectX-ը նաև հանդիսանում է հիմք Xbox API-ի համար. Xbox API-ն ձևավորվել էր Մայքրոսոֆթի և Նվիդիայի հետ համագործակցությամբ, որում վերջինս նաև ստեղծել էր վիդեոքարտ օրիգինալ Xbox–ի համար։ Այն համաձայնեցված է DirectX 8.1-ի հետ, որը ի տարբերություն սովորական տարբերակների, թարմացվող չի հանդիսանում ապարատին հատկանշական առանձնահատկությունների պատճառով։
Մինչ DirectX–ի ստեղծումը, Microsoft-ը ներառել էր OpenGL-ը Windows NT օպերացիան համակարգում։ OpenGL–ը բազմահարթակային և օպերացիոն համակարգից անկախ համակարգ է, որը ստեղծվել է Silicon Graphics–ի կողմից՝ եռաչափ գրաֆիկան (3D) ծրագրավորման մեջ ներդնելու համար։ Դրանից զատ, OpenGL–ը նաև սպասարկում է 2D գրաֆիկա, որը ղեկավարվում էր Ճարտարապետական Վերանայման Խորհրդի կողմից (Architectural Review Board, ARB), որը ներառել էր նաև Մայքրոսոֆթը։ Direct3D դարձավ OpenGL-ի փոխարինող խաղային ոլորտում։ Այստեղից էլ սկսում է «սրբազան պատերազմը» OpenGL-ի և Direct3D-ի միջև․ ըստ էության, ամեն ծրագրավորող կարող էր օգտագործել իր նախընտրած գրադարանը։ Եթե ծրագիրը օգտագործում էր OpenGL, այն օգտագործում էր հենց OpenGL–ի գրադարանները, չնայած նրան որ OpenGL–ը չունի Direct3D–ին բնորոշ հատկությունները, ինչպիսիք են ջոյսթիկների և ձայնի սպասարկումը։
Ի սկզբանե ուղղվածություն ունենալով դեպի խաղերի ստեղծումը, DirectX ը հայտնի է դարձել այլ ծրագրային ապահովման զարգացման գործում։ Օրինակի համար, DirectX-ը, OpenGL-ի հետ միասին, շատ տարածվեց ինժեներական և մաթեմատիկական ծրագրային ապահովման մեջ։ Նաև DirectX–ի հիման վրա առկա են մոնտաժային, ֆոտոփոփոխման և այլ ծրագրեր։
2002 թ․ Microsoft-ը թողարկեց DirectX 9-ը, շեյդերներին մակարդակի 2.0 տարբերակով և մի շարք այլ թարմացումներով։ DirectX-ը չբավարարվեց մեկ անգամյա թարմացումով․ 2004 թ․ օգոստոսին DirectX-ում ավելացվեց շեյդերների 3.0 մակարդակի աջակցությունը (DirectX 9.0c)։ Մինչ օրս DirectX 9–ը հանդիսանում է 2000–ականների կեսերի խաղերի ճնշող մեծամասնության հիմքը։
2005 թ․ ապրիլին DirectShow-ի ինտերֆեյսը տեղափոխվեց դեպի Microsoft Platform SDK։
2018 թ․ հայտարարվեց ճառագայթային հետագծման (Ray Tracing) սպասարկումը, և ներկայացվել որպես DXGI։ HLSL–ից SPIR-V վերափոխման սպասարկումը ներկայացվեց նույն թվականին։
Ժամանակացույց
խմբագրելDirectX-ի տարբերակներ | Պատկերանշան | Տարբերակի համար | Օպերացիոն համակարգ | Ստեղծման տարեթիվ | Նշումներ |
---|---|---|---|---|---|
DirectX 1.0 | 4.02.0095 | Windows 95a | 30 սեպտեմբեր1995 | ||
DirectX 2.0 / 2.0a | 4.03.00.1096 | Windows 95 OSR 2
Windows NT ցածր 4.0-ից |
հունիսի 5 1996 | ||
DirectX 3.0 / 3.0a | 4.04.0068 / 69 | Windows 95 OSR 2.5
Windows NT 4.0 SP3 |
15 սեպտեմբեր1996 | DirectX-ի վերջին տարբերակն է, որը համապատասխանում է Windows NT 4.0–ին։ | |
DirectX 4.0 | 4.05.00.0155 (RC55) | Windows 95 OSR 2.5
Windows NT 4.0 SP3 |
հուլիսի 16 1997 | Հասանելի էր միայն բետա տարբերակը Windows NT 4.0–ի համար։ | |
DirectX 5.0 | 4.05.01.1721 / 1998 | Windows 98 | մայիսի 5 1998 | ||
DirectX 6.0 | 4.06.00.0318 (RC3) | Windows 98 SE | օգոստոսի 7 1998 | DirectX Media–ի վերջին տարբերակն է, որը համապատասխանում է Windows NT 4.0-ին: | |
DirectX 6.1 | 4.06.02.0436 (RC0) | Windows 95/98/98SE | փետրվարի 3 1999 | ||
DirectX 6.2 | 5.00.2516.1900 (ոչ պաշտոնական DX 6.2) | Windows NT/98SE/98/2000/ME | օգոստոսի 21 1999 | ||
DirectX 7.0 | 4.07.00.0700 (RC1) | Windows 2000
Windows ME |
սեպտեմբերի 22 1999 | ||
DirectX 7.0a | 4.07.00.0716 (RC1) | Windows 95/98/98SE/2000 | 1999 | ||
DirectX 8.0 | 4.08.00.0400 (RC10) | Windows 95/98/98SE/ME/2000 | սեպտեմբերի 30 2000 | ||
DirectX 8.0a | 4.08.00.0400 (RC14) | Windows 95/98/98SE/ME/2000 | նոյեմբերի 7 2000 | DirectX-ի վերջին տարբերակն է,որը համապատասխանում է Windows 95–ին։ | |
DirectX 8.1 | 4.08.01.0810
4.08.01.0881 (RC7) |
Windows NT/98SE/98/XP | նոյեմբերի 8 2001 | ||
DirectX 8.1b | 4.08.01.0901 | 2002 | |||
DirectX 8.2 | 4.08.02.0134 (4.09.0000.0134) | 2002 | |||
DirectX 9.0 | 4.09.0000.0900 | Windows Server 2003 | դեկտեմբերի 24 2002 | ||
DirectX 9.0a | 4.09.0000.0901 | մարտի 26 2003 | |||
DirectX 9.0b | 4.09.0000.0902 (RC2) | օգոստոսի 13 2003 | |||
DirectX 9.0c | 4.09.0000.0904 (RC0) | Windows XP SP2 | օգոստոսի 9 2004 | DirectX-ի վերջին տարբերակն է, որը համապատասխանում է Windows 98 SE–ին և Windows Me–ին։ | |
DirectX 9.0L | 4.09.0000.0905 (?) | ||||
DirectX 10 (Windows Vista-ի կազմի մեջ է) | 6.0.6000.16386 | Windows Vista | նոյեմբերի 10 2006 | ||
DirectX 10.1 | 6.00.6001.18000 | Windows Vista SP1
Windows Server 2008 |
Փետրվարի 42008 | ||
DirectX 11 (Windows 7-ի կազմի մեջ է) | 6.00.6002.18107 | Windows Vista SP2
Windows Server 2008 SP2 Windows 7 Windows Server 2008 R2 |
հոկտեմբերի 27 2009 | Windows Vista և Server 2008–ի համար հասանելի էր հատուկ հարթակային թարմացման[8] միջոցով։ | |
6.01.7600.16385 | Windows 7
Windows Server 2008 R2 |
հոկտոմբերի 22 2009 | |||
6.01.7601.17514 | Windows 7 SP1
Windows Server 2008 R2 SP1 |
Փետրվարի 16 2011 | |||
DirectX 11.1 ( Windows 8-ի կազմի մեջ է)[9] | 6.02.9200.16384 | Windows 7 SP1, Windows 8, Windows RT, Windows Server 2012 | Օգոստոսի 1 2012 | ||
DirectX 11.2 (Windows 8․1-ի կազմի մեջ է) | 6.03.9600.16384 | Windows 8.1, Windows RT, Windows Server 2012 R2 | հոկտեմբերի 18 2013 | ||
DirectX 11.3 (Windows 10-ի կազմի մեջ է) | 10.0.10240.16384 | Windows 10 | հուլիսի 29 2015 | ||
DirectX 12 (Windows 10-ի կազմի մեջ է) | 10.0.10240.16384 | Windows 10, Xbox One | հուլիսի 29 2015 |
Համատեղելիություն
խմբագրելՇատ ժամանակակից սարքեր պետք է DirectX-ը համատեղեն դրայվերների հետ, այլ կերպ ասած, օգտագործողը պետք է տեղադրի DirectX-ը, որպեսզի կարողանա օգտագործել բոլոր հնարավորությունները։ Ներկա պահին դրայվերների թարմացնելու ծրագիրը, Windows Update-ը, հնարավորություն է տալիս ներբեռնել անհրաժեշտ գրադարանները և ոչ ամբողջ դրայվերները։
Հետևյալ ցանկում ներկայացված են հիմնական օպերացիոն համակարգերը, որոնք համատեղելի են DirectX-ի հետ։
- Windows 95/98/98 SE/ME,
- Windows NT 4.0, Windows 2000, Windows 2000 Advanced Server, Windows 2000 Professional Edition, Windows 2000 Server, Windows 2000 Service Pack 2, Windows 2000 Service Pack 3, Windows 2000 Service Pack 4,
- Windows Server 2003, Windows Server 2003 Service Pack 1, Windows Server 2003 Datacenter x64 Edition, Windows Server 2003 Enterprise x64 Edition, Windows Server 2003 Standard x64 Edition, Windows Small Business Server 2003,
- Windows XP, Windows XP 64-bit, Windows XP Home Edition, Windows XP Media Center Edition, Windows XP Professional Edition, Windows XP Service Pack 1, Windows XP Service Pack 2, Windows XP Service Pack 3, Windows XP Starter Edition, Windows XP Tablet PC Edition,
- Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows 10,
- Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Server 2016.
Ծանոթագրություններ
խմբագրել- ↑ DeMaria, Rusel (2019). «11. The Manhattan Project». GAME OF X V.2. CRC Press. «Windows needs to support; ... – Page flipping – Vertical blank synchronization – Tight sound mixing – Tight synchronization of sound and video events – Raw blting performance – Ability to set graphic mode ...»
- ↑ Kelly, Christopher (June 1, 1995). «Video for Windows and WinG». Dr. Dobb's Journal. Վերցված է 2022-08-09-ին. «Lion King software, for example, is a WinToon app. ... Like WinToon, this example uses WinG for drawing on the DIB.»
- ↑ Willetts, Samual (July 27, 2020). «How DirectX defined PC gaming... with help from a shotgun-toting Bill Gates». PC Gamer. Վերցված է December 7, 2020-ին.
- ↑ Craddock, David (November 14, 2020). «Bet on Black: How Microsoft and Xbox Changed Pop Culture, Part 1 - Chapter 8: Power of X». Shacknews. Վերցված է December 7, 2020-ին.
- ↑ Քաղվածելու սխալ՝ Սխալ
<ref>
պիտակ՝ «shacknews xbox p1ch82
» անվանումով ref-երը տեքստ չեն պարունակում: - ↑ Haggarty, James (December 9, 2020). «Microsoft Misfit Helped Lead Company Into Game Market». The Wall Street Journal. Վերցված է December 9, 2020-ին.
- ↑ Craig Eisler's blog post about the frenzy to build DirectX 1 through 5(չաշխատող հղում) on craig.theeislers.com
- ↑ «Microsoft upgrades Windows Vista with DirectX 11». pcgameshardware.com. Արխիվացված է օրիգինալից 2016 թ․ մարտի 31-ին. Վերցված է 2017 թ․ մայիսի 28-ին.
- ↑ «Новые возможности Direct3D 11.1 / Хабрахабр». Արխիվացված է օրիգինալից 2011 թ․ սեպտեմբերի 17-ին. Վերցված է 2017 թ․ մայիսի 28-ին.