DirectX
| DirectX | |
|---|---|
| Pembangun | Microsoft |
| Pelancaran pertama | |
| Versi terkini/stabil | 12 Ultimate API (5 Oktober 2021) |
| Ditulis dalam | High Level Shader Language (en) |
| Sistem pengendalian | Microsoft Windows |
| Jenis | Series of creative works (en) |
| Genre | Rangka kerja aplikasi |
| Lesen | EULA proprietari |
| Pautan berkaitan | |
| Tapak web | Laman utama DirectX |
| Blog | |
| Repositori | |
| sunting · sunting di Wikidata | |
Microsoft Direct eXtension (juga sentiasa dipanggil DirectX) merupakan koleksi antara muka pengaturcaraan applikasi untuk mengawal tugas berkaitan dengan multimedia, terutamanya pengaturcaraan permainan dan video, di atas platfom Microsoft. Asalnya, nama-nama PPA ini semua bermula dengan Direct, seperti Direct3D, DirectDraw, DirectMusic, DirectPlay, DirectSound, dan lain-lain. DirectX, kemudian, adalah istilah generik untuk semua PPA Direct, dan istilah itu menjadi nama koleksi itu. Dalam tahun-tahun yang menghalang, sesuatu daripada PPA ini telah dikecamkan dan digantikan, supaya konvensi penamaan ini tidak sama sekali. Oleh sebab itu, X telah menggantikan Direct sebagai bahagian sama dalam nama-nama baru teknologi-teknologi DirectX, termasuklah XAct, XInput, dan lain-lain.
Direct3D (APA grafik 3D graphics di dalam DirectX) yang banyak digunakan dalam pemajuan permainan-permainan komputer untuk Microsoft Windows, Microsoft Xbox dan Xbox 360. Direct3D juga digunakan oleh applikasi peribadi untuk tugas visualisasi dan grafik. Sementara Direct3D adalah APA yang paling dikenali dalam DirectX, nama DirectX yang sering digunakan dalam tempat Direct3D.
Antara muka itu yang mempunyai DirectX termasuk komponen untuk kegunaan oleh applikasi yang dijalankan (komponen masa perjalanan) dengan komponen untuk kegunaan oleh pemaju peribadi pada masa reka bentuk (kit pemajuan peribadi). Masa-masa perjalanan yang asalnya diedarkan semula oleh pemaju permainan komputer serta dengan permainan mereka, tetapi sekarang included as built-in parts of Microsoft Windows. KPP yang didapati sebagai muat turun bebas. Walaupun masa-masa perjalanan adalah peribadi proprietari, punca tertutup, kod punca yang disediakan untuk kebanyakan sampel KPP.
Versi Direct3D yang terbaru, Direct3D 10 dan Direct3D 9Ex, adalah eksklusif kepada Windows Vista. Ini kerana banyak perubahan secara meluas dalam reka bentuk grafik Windows, dan tertentu perkenalan Windows Display Driver Model. Reka bentuk semula ini infrastruktur grafik untuk Windows Vista menyokongkan pemayaan perkakasan grafik kepada applikasi dan servis berganda seperti Desktop Window Manager, berbeza dengan kemudahan eksklusif afforded kepada kebolehan applikasi DirectX di atas Windows XP. Kedua-dua Direct3D 9Ex dan Direct3D 10 berharap pada infrastruktur WDDM dan pengemudi-pengemudi WDDM.
Sejarah pembangunan
Pada akhir tahun 1994, Microsoft bersedia untuk mengeluarkan Windows 95, sistem pengendalian terbaharunya. Faktor penting dalam nilai sistem ini kepada pengguna ialah program-program yang dapat dijalankan di atasnya. Pekerja Microsoft Alex St. John telah mengadakan perbincangan dengan pelbagai pembangun permainan video untuk bertanya sejauh mana kemungkinan mereka memindahkan permainan MS-DOS ke Windows 95, dan mendapati maklum balas kebanyakannya negatif. Ini kerana para pengaturcara mendapati persekitaran Windows tidak menyediakan ciri-ciri penting yang sedia ada di bawah MS-DOS menggunakan rutin BIOS atau akses peranti keras secara terus.[1] Terdapat juga kebimbangan besar terhadap keserasian; satu kes yang ketara ialah permainan Disney's Animated Storybook: The Lion King yang berasaskan antaramuka pengaturcaraan WinG.[2] Disebabkan oleh pemacu grafik yang tidak serasi daripada komputer baharu Compaq yang tidak diuji dengan antaramuka WinG yang disertakan bersama permainan tersebut, ia sering tergendala (crash) pada banyak sistem komputer meja sehingga ibu bapa membanjiri talian bantuan panggilan Disney.[3][4]
Seorang lagi pekerja Microsoft, Craig Eisler, telah menyertai pasukan multimedia Windows 95 untuk mengerjakan teknologi permainan video.[5] Selepas mendengar daripada St. John bahawa teknologi sedia ada Microsoft tidak mendapat sambutan daripada pembangun, Eisler mula membina set API baharu dan model pemacu yang membolehkan pembangun mengakses keupayaan asal peranti keras grafik, serta memberi syarikat peranti keras grafik keupayaan untuk berinovasi dalam cara yang boleh digunakan oleh pembangun.[6] Bagi mendapatkan sokongan pengurusan program, Eisler merekrut Eric Engstrom, dan bersama-sama mereka dianugerahkan 11 paten atas hasil kerja DirectX mereka.[7] Projek ini diberi nama kod "Manhattan Project", bersempena projek Perang Dunia II dengan nama yang sama, dan idea di sebaliknya adalah untuk menggantikan konsol permainan video buatan Jepun dengan komputer peribadi yang menjalankan sistem pengendalian Microsoft.[3] Pada mulanya, projek ini menggunakan simbol keradioaktifan sebagai logonya, tetapi Microsoft meminta pasukan tersebut menukar logo berkenaan.[3] pihak pengurusan tidak bersetuju dengan projek ini kerana mereka sudah memadamkan harapan terhadap Windows sebagai platform permainan video, namun ketiga-tiga mereka tetap berkomitmen terhadap pembangunan projek ini.[4] Sifat penentang mereka menyebabkan Brad Silverberg, naib presiden kanan produk pejabat Microsoft, menggelar trio tersebut sebagai "Beastie Boys".[8]
Sebagian besar kerja oleh ketiga-tiga mereka dilakukan di celah-celah projek rasmi lain yang ditugaskan bermula menjelang akhir tahun 1994.[4] Dalam tempoh empat bulan dan dengan input daripada beberapa pengeluar peranti keras, pasukan itu telah membangunkan set antaramuka pengaturcaraan aplikasi (API) pertama yang mereka bentangkan di Persidangan Pembangun Permainan (GDC) 1995.[4] SDK tersebut merangkumi pustaka yang melaksanakan DirectDraw untuk grafik pemetaan bit (bit-mapped),[9] DirectSound untuk audio,[10] dan DirectPlay untuk komunikasi antara pemain melalui rangkaian.[11] Selain itu, API kayu ria lanjutan yang sedia ada dalam Windows 95 didokumentasikan buat kali pertama sebagai DirectInput,[12] manakala penerangan tentang cara melaksanakan prosedur pemasangan tajam perisian secara serta-merta selepas memasukkan CD-ROM (ciri yang dipanggil AutoPlay) turut menjadi sebahagian daripada SDK tersebut.[13] Bahagian "Direct" pada pustaka itu dinamakan sedemikian kerana rutin-rutin ini memintas rutin teras Windows 95 sedia ada dan mengakses peranti keras komputer secara terus melalui Lapisan abstraksi peranti keras (HAL).[14] Walaupun pasukan itu menamakannya "Game SDK" (Pakej pembangunan perisian), nama "DirectX" berasal daripada seorang wartawan yang mengejek skema penamaan pelbagai pustaka tersebut. Pasukan itu memilih untuk terus menggunakan skema penamaan tersebut dan menamakan projek itu sebagai DirectX.[3]
Versi pertama DirectX dikeluarkan pada September 1995 sebagai Windows Game SDK. Komponen DirectDraw merupakan pengganti Win32 bagi API DCI[15] dan WinG untuk Windows 3.1.[16] DirectX membolehkan semua versi Microsoft Windows, bermula dari Windows 95, menggabungkan multimedia berprestasi tinggi. Eisler menulis mengenai kegigihan dan kesibukan membina DirectX 1 hingga 5 dalam blog beliau.[17]
Untuk menarik lebih ramai pembangun menggunakan DirectX, Microsoft mendekati John Carmack daripada id Software dan menawarkan untuk memindahkan permainan Doom dan Doom 2 daripada MS-DOS ke DirectX secara percuma, dengan id mengekalkan semua hak penerbitan permainan tersebut. Carmack bersetuju, dan Gabe Newell dari Microsoft mengetuai projek pemindahan tersebut. Permainan pertama dikeluarkan sebagai Doom 95 pada Ogos 1996, menjadi permainan DirectX pertama yang diterbitkan. Microsoft mempromosikan permainan itu secara meluas dengan Bill Gates muncul dalam iklan tajuk berkenaan.[3]
DirectX 2.0 menjadi komponen terbina dalam Windows dengan pelepasan Windows 95 OSR2 dan Windows NT 4.0 pada pertengahan tahun 1996. Memandangkan Windows 95 itu sendiri masih baharu dan tidak banyak permainan dikeluarkan untuknya, Microsoft melakukan promosi besar-besaran DirectX kepada pembangun yang umumnya kurang percaya pada keupayaan Microsoft untuk membina platform permainan dalam Windows. Alex St. John, juruwara bagi DirectX, merancang acara gilang-gemalang pada Computer Game Developers Conference 1996 yang digambarkan oleh pembangun permainan Jay Barnson bertemakan Rom, termasuk singa sebenar, pakaian toga, dan suasana seperti karnival dalam bangunan.[18] Pada acara inilah Microsoft memperkenalkan Direct3D buat kali pertama, dan mendemonstrasikan permainan multipemain MechWarrior 2 yang dimainkan melalui Internet.
Pasukan DirectX menghadapi tugasan mencabar untuk menguji setiap keluaran DirectX terhadap pelbagai pelbagai peranti keras dan perisian komputer. Pelbagai kad grafik, kad audio, papan induk, CPU, peranti input, permainan, dan aplikasi multimedia lain telah diuji dengan setiap keluaran beta dan versi akhir. Pasukan DirectX juga membina dan mengedarkan ujian yang membolehkan industri peranti keras mengesahkan bahawa reka bentuk peranti keras dan pemacu baharu akan serasi dengan DirectX.
Sebelum penambahan Direct3D ke dalam DirectX, Microsoft telah menambah OpenGL pada platform Windows NT.[19] OpenGL telah direka sebagai antaramuka perisian bebas sistem tetingkap dan rentas platform untuk peranti keras grafik oleh Silicon Graphics, Inc. bagi membawa pengaturcaraan grafik 3D ke arus perdana pengaturcaraan aplikasi. Ia juga boleh digunakan untuk grafik 2D dan pemprosesan imej, serta dikawal oleh Architectural Review Board (ARB), yang turut dianggotai oleh Microsoft.[20][21] Direct3D dihasratkan untuk menjadi alternatif kawalan Microsoft kepada OpenGL, yang difokuskan khusus pada penggunaan permainan video pada awalnya. Apabila permainan 3D berkembang, pembangun permainan mendapati bahawa OpenGL juga boleh digunakan secara berkesan untuk pembangunan permainan video. Pada titik itulah, "persaingan" bermula antara penyokong OpenGL yang rentas platform dan Direct3D yang eksklusif untuk Windows.[22] Secara kebetulan, OpenGL di Microsoft disokong oleh pasukan DirectX. Sekiranya pembangun memilih untuk menggunakan API grafik 3D OpenGL dalam permainan komputer, API DirectX yang lain selain Direct3D sering digabungkan bersama OpenGL, memandangkan OpenGL tidak merangkumi semua fungsi DirectX seperti sokongan bunyi atau kayu ria.
Dalam varian khusus konsol, Direct3D digunakan sebagai asas untuk API konsol Xbox, Xbox 360, dan Xbox One milik Microsoft. Pelaksanaannya dibangunkan bersama antara Microsoft dan Nvidia, yang membangunkan peranti keras grafik tersuai untuk Xbox asal. API Xbox adalah serupa dengan Direct3D 8.1, tetapi tidak boleh dikemas kini seperti teknologi konsol lain. Xbox pada mulanya diberi nama kod DirectXbox, tetapi dipendekkan kepada Xbox untuk nama komersialnya.[23]
Pada tahun 2002, dengan pelepasan DirectX 9, Direct3D menerima sokongan untuk penggunaan program pengorek (shader) yang jauh lebih panjang daripada sebelumnya menerusi versi pengorek piksel dan bucu (pixel and vertex shader) 2.0. Microsoft terus mengemas kini suite DirectX sejak itu, dengan memperkenalkan Shader Model 3.0 dalam DirectX 9.0c yang dikeluarkan pada Ogos 2004.
Mulai April 2005, DirectShow telah dikeluarkan daripada DirectX dan dipindahkan ke Microsoft Platform SDK.
DirectX telah disahkan terdapat dalam Windows Phone 8 milik Microsoft.[24]
Penjejakan sinar masa nyata telah diumumkan sebagai DXR pada tahun 2018. Sokongan untuk mengompilasi HLSL ke SPIR-V turut ditambah dalam Kompilator Pengorek DirectX (DirectX Shader Compiler) pada tahun yang sama.[25]
Komponen
DirectX terdiri daripada beberapa API:
- Direct3D (D3D): API pemaparan 3D masa nyata
- DXGI: Menyenaraikan penyesuai dan pemapar serta menguruskan rantai pertukaran (swap chains) untuk Direct3D 10 dan yang kemudian.
- Direct2D: API grafik 2D
- DirectWrite: API pemaparan teks
- DirectCompute: API untuk pengkomputeran tujuan umum pada unit pemprosesan grafik (GPGPU)
- Diagnostik DirectX (DxDiag): Alat untuk mendiagnosis dan menjana laporan tentang komponen berkaitan DirectX, seperti pemacu audio, video dan input
- XACT3: API audio peringkat tinggi
- XAudio2: API audio peringkat rendah
- DirectX Raytracing (DXR): API penjejakan sinar masa nyata
- DirectStorage: API I/O fail berorientasikan GPU
- DirectML: API pembelajaran mesin dan kecerdasan buatan terpecut GPU
- DirectSR: API peningkatan resolusi terpecut GPU
- Media Foundation
- Pencepatan Video DirectX (DirectX Video Acceleration) untuk main balik video terpecut
- Media Foundation Transform
Microsoft telah menamatkan sokongan (deprecated) untuk komponen berikut:
- DirectX Media: Terdiri daripada:
- DirectAnimation untuk animasi web 2D/3D[26], DirectShow untuk main balik multimedia dan media penstriman
- Objek DirectX Media: Sokongan untuk objek penstriman seperti pengkod (encoders), pendekod (decoders), dan kesan khas (Dihentikan untuk memberi laluan kepada Media Foundation Transforms; MFT)[27]
- DirectX Transform untuk keinteraktifan web, dan Mod Kekal Direct3D (Direct3D Retained Mode) untuk grafik 3D peringkat lebih tinggi
- Pemalam DirectX untuk pemprosesan isyarat audio
- DirectDraw: API grafik 2D (Dihentikan untuk memberi laluan kepada Direct2D)
- DirectInput: API input untuk berinteraksi dengan papan kekunci, tetikus, kayu ria, dan pengawal permainan (Dihentikan selepas versi 8 untuk memberi laluan kepada XInput bagi pengawal Xbox 360 atau pemprosesan mesej tetingkap WM_INPUT standard untuk input papan kekunci dan tetikus)
- DirectPlay: API rangkaian untuk komunikasi melalui rangkaian kawasan setempat (LAN) atau rangkaian kawasan luas (WAN) (Dihentikan selepas versi 8 untuk memberi laluan kepada Games for Windows Live dan Xbox Live)
- DirectSound: API audio (Dihentikan sejak DirectX 8 untuk memberi laluan kepada XAudio2 dan XACT3)
- DirectSound3D (DS3D): API bunyi 3D
- DirectMusic: Komponen untuk memainkan lagu latar yang dicipta dalam DirectMusic Producer
Fungsi DirectX disediakan dalam bentuk objek dan antara muka gaya COM. Selain itu, walaupun ia bukan komponen DirectX secara langsung, objek terkawal telah dibina di atas beberapa bahagian DirectX, seperti Managed Direct3D[28] dan pustaka grafik XNA[29] di atas Direct3D 9.
Microsoft mengedarkan alat pautnyah (debugging) untuk DirectX yang dipanggil "PIX".[30]
Versi
| 1995 | DirectX 1 |
|---|---|
| 1996 | DirectX 2 |
| DirectX 3 | |
| 1997 | DirectX 5 |
| 1998 | DirectX 6 |
| 1999 | DirectX 7 |
| 2000 | DirectX 8 |
| 2001 | |
| 2002 | DirectX 9 |
| 2003 | |
| 2004 | |
| 2005 | |
| 2006 | DirectX 10 |
| 2007 | |
| 2008 | |
| 2009 | DirectX 11 |
| 2010 | |
| 2011 | |
| 2012 | |
| 2013 | |
| 2014 | |
| 2015 | DirectX 12 |
DirectX 9
Diperkenalkan oleh Microsoft pada tahun 2002, DirectX 9 merupakan keluaran penting dalam keluarga DirectX. Ia membawa banyak ciri dan penambahbaikan penting kepada keupayaan grafik Windows. Pada masa keluarannya, ia menyokong Windows 98, Windows Me, Windows 2000, dan Windows XP. Setakat Ogos 2024, ia kekal disokong oleh semua versi Windows yang seterusnya bagi tujuan keserasian ke belakang.
Salah satu ciri utama yang diperkenalkan dalam Direct3D 9 ialah Shader Model 2.0, yang merangkumi Pixel Shader 2.0 dan Vertex Shader 2.0. Ini membolehkan pemaparan grafik yang lebih kompleks dan realistik. Ia juga membawa peningkatan prestasi yang sangat diperlukan melalui keupayaan pemecutan peranti keras yang lebih baik, serta pemanfaatan sumber GPU yang lebih cekap. Ia turut memperkenalkan HLSL, yang menyediakan cara yang lebih mudah diakses untuk pembangun menghasilkan pengorek (shader).
DirectX 9 memberikan impak yang besar terhadap pembangunan permainan video. Banyak permainan dari pertengahan tahun 2000-an hingga awal 2010-an dibangunkan menggunakan DirectX 9 dan ia menjadi sasaran standard bagi para pembangun. Malah sehingga kini, sesetengah permainan masih menggunakan DirectX 9 sebagai pilihan untuk peranti keras yang lebih lama atau kurang berkuasa.
DirectX 10

Sebagai kemas kini utama kepada API DirectX, DirectX 10 didatangkan bersama dan hanya tersedia untuk Windows Vista (dilancarkan pada akhir tahun 2006) dan versi selepasnya. Versi Windows terdahulu seperti Windows XP tidak dapat menjalankan aplikasi eksklusif DirectX 10. Program yang berjalan pada Windows XP terhad kepada DirectX 9.0c, iaitu versi utama terkini yang tersedia.[31]
Perubahan bagi DirectX 10 adalah sangat meluas. Banyak bahagian terdahulu daripada API DirectX telah dihentikan penggunaannya (deprecated) dalam SDK DirectX terkini dan mengekalkannya untuk tujuan keserasian sahaja: DirectInput dihentikan dan digantikan dengan XInput, DirectSound dihentikan dan digantikan dengan sistem Cross-platform Audio Creation Tool (XACT) serta kehilangan sokongan untuk audio terpecut peranti keras, memandangkan susunan audio Vista memaparkan bunyi melalui perisian pada CPU. DirectPlay DPLAY.DLL juga telah dibuang dan digantikan dengan dplayx.dll; permainan yang bergantung pada DLL ini mesti menyalinnya semula dan menamakannya sebagai dplay.dll.
Bagi mencapai keserasian ke belakang, DirectX dalam Windows Vista mengandungi beberapa versi Direct3D:[32]
- Direct3D 9: meniru tingkah laku Direct3D 9 seperti mana pada Windows XP. Perincian dan kelebihan Model Pemacu Paparan Windows (WDDM) Vista disembunyikan daripada aplikasi jika pemacu WDDM dipasang. Ini merupakan satu-satunya API yang tersedia jika hanya pemacu grafik XP (XDDM) sahaja yang dipasang, contohnya selepas menaik naik taraf ke Vista.
- Direct3D 9Ex (dikenali secara dalaman semasa pembangunan Windows Vista sebagai 9.0L atau 9.L): membolehkan akses penuh kepada keupayaan baharu WDDM (jika pemacu WDDM dipasang) sambil mengekalkan keserasian untuk aplikasi Direct3D sedia ada. Antaramuka pengguna Windows Aero bergantung pada D3D 9Ex.
- Direct3D 10: Direka bentuk berteraskan model pemacu baharu dalam Windows Vista dan menampilkan beberapa penambahbaikan pada keupayaan dan kebolehlentukan pemaparan, termasuk Shader Model 4.
Direct3D 10.1 ialah kemas kini berperingkat bagi Direct3D 10.0 yang didatangkan bersama, dan memerlukan, Windows Vista Service Pack 1, yang dikeluarkan pada Februari 2008.[33] Keluaran ini terutamanya menetapkan beberapa lagi standard kualiti imej untuk pembekal grafik, sambil memberi pembangun lebih kawalan terhadap kualiti imej.[34] Ia juga menambah sokongan untuk tatasusunan peta tiub (cube map arrays), mod adunan berasingan setiap MRT, pengeksporan topeng liputan daripada pengorek piksel (pixel shader), keupayaan untuk menjalankan pengorek piksel setiap sampel, akses kepada penimbal kedalaman pelbagai sampel[35] dan memerlukan kad video menyokong Shader Model 4.1 atau lebih tinggi serta operasi titik terapung 32-bit. Direct3D 10.1 masih menyokong penuh peranti keras Direct3D 10, tetapi untuk memanfaatkan kesemua ciri baharu tersebut, peranti keras yang dikemas kini adalah diperlukan.[36]
DirectX 11

Microsoft memperkenalkan DirectX 11 di acara Gamefest 08 di Seattle. Kemas Kini Platform Akhir telah dilancarkan untuk Windows Vista pada 27 Oktober 2009, iaitu seminggu selepas keluaran awal Windows 7, yang dilancarkan dengan Direct3D 11 sebagai standard asas.
Ciri-ciri utama yang dijadualkan termasuk sokongan perisian GPGPU (DirectCompute), dan Direct3D 11 dengan sokongan pengubusan (tessellation)[37][38] serta sokongan pelbagai bebenang yang dipertingkatkan untuk membantu pembangun permainan video menghasilkan permainan yang memanfaatkan pemproses banyak teras dengan lebih baik.[39] Bahagian daripada API baharu seperti pengendalian sumber pelbagai bebenang boleh disokong pada peranti keras kelas Direct3D 9/10/10.1. Pengubusan peranti keras dan Shader Model 5.0 memerlukan peranti keras yang menyokong Direct3D 11.[40] Direct3D 11 ialah super-set ketat bagi Direct3D 10.1 — semua ciri peranti keras dan API versi 10.1 dikekalkan, dan ciri-ciri baharu hanya ditambah apabila perlu untuk mendedahkan kefungsian baharu. Ini membantu mengekalkan keserasian ke belakang dengan versi Direct3D yang terdahulu.
Empat kemas kini untuk DirectX 11 telah dikeluarkan:
- DirectX 11.1 disertakan dalam Windows 8. Ia menyokong WDDM 1.2 untuk prestasi yang dipertingkatkan, menampilkan penyepaduan yang lebih baik bagi Direct2D (kini pada versi 1.1), Direct3D, dan DirectCompute, serta merangkumi pustaka DirectXMath, XAudio2, dan XInput daripada rangka kerja XNA. Ia juga menampilkan sokongan 3D stereoskopik untuk permainan dan video.[41] DirectX 11.1 juga sebahagiannya telah di-port ke belakang ke Windows 7 melalui Kemas kini platform Windows 7.[42][43]
- DirectX 11.2 disertakan dalam Windows 8.1 (termasuk versi RT) dan Windows Server 2012 R2.[44] Ia menambah beberapa ciri baharu pada Direct2D seperti realisasi geometri (geometry realizations).[45] Ia juga menambah gubahan rantai tukar (swap chain composition), yang membolehkan sesetengah elemen babak dipaparkan pada resolusi lebih rendah dan kemudian digubah melalui pertindihan peranti keras dengan bahagian lain yang dipaparkan pada resolusi lebih tinggi.[46]
- DirectX 11.X ialah super-set bagi DirectX 11.2 yang berjalan pada Xbox One.[47] Ia sebenarnya merangkumi beberapa ciri, seperti berkas lukis (draw bundles), yang kemudiannya diumumkan sebagai bahagian daripada DirectX 12.[48]
- DirectX 11.3 telah diumumkan bersama dengan DirectX 12 di GDC dan dikeluarkan pada tahun 2015. Ia bertujuan untuk melengkapi DirectX 12 sebagai alternatif peringkat lebih tinggi.[49] Ia disertakan bersama Windows 10.[44]
DirectX 12
DirectX 12 telah diumumkan oleh Microsoft di GDC pada 20 Mac 2014, dan dilancarkan secara rasmi bersama-sama Windows 10 pada 29 Julai 2015.
Sorotan ciri utama bagi keluaran baharu DirectX ini ialah pengenalan pengaturcaraan aras rendah canggih dengan Direct3D 12, yang boleh mengurangkan beban pemacu (driver overhead). Pembangun kini dapat melaksanakan senarai arahan dan penimbal mereka sendiri ke GPU, membolehkan penggunaan sumber yang lebih cekap melalui pengiraan selari. Pembangun utama Max McMullen menyatakan bahawa matlamat utama Direct3D 12 adalah untuk mencapai "kecekapan tahap konsol pada telefon, tablet, dan PC".[50] Pelancaran Direct3D 12 datang bersama inisiatif lain untuk API grafik beban rendah termasuk Mantle daripada AMD untuk kad grafik AMD, Metal daripada Apple untuk iOS dan macOS, serta Vulkan pelbagai platform daripada Khronos Group.
Sokongan pelbagai penyesuai (multiadapter) akan ditampilkan dalam Direct3D 12 yang membolehkan pembangun menggunakan beberapa GPU pada satu sistem secara serentak; sokongan pelbagai GPU (mGPU) sebelum ini bergantung pada pelaksanaan pembekal seperti AMD CrossFireX atau NVIDIA SLI.[51][52][53][54]
- Sokongan Multiadapter Tersirat (Implicit Multiadapter) akan berfungsi dalam cara yang serupa dengan versi Direct3D sebelumnya di mana bingkai dipaparkan secara bergilir-gilir merentasi GPU terhubung yang mempunyai kuasa pengkomputeran serupa.
- Multiadapter Tersurat (Explicit Multiadapter) pula menyediakan dua corak API yang berbeza kepada pembangun. GPU Terhubung (Linked GPUs) membolehkan Direct3D melihat kad grafik dalam SLI atau CrossFireX sebagai satu GPU tunggal dan menggunakan sumber gabungan tersebut; manakala GPU Tidak Terhubung (Unlinked GPUs) membolehkan GPU daripada pembekal berbeza digunakan oleh Direct3D, seperti melengkapi GPU khas dengan GPU bersepadu pada CPU, atau menggabungkan kad AMD dan NVIDIA. Walau bagaimanapun, tetapan pelbagai GPU campuran yang rumit memerlukan sokongan pembangun yang jauh lebih mendalam.
Direct3D 12 disokong pada semua GPU Nvidia berteras Fermi dan yang lebih baharu, pada cip berasaskan GCN AMD, serta pada unit grafik pemproses Intel Haswell dan yang lebih baharu.[55]
Di SIGGRAPH 2014, Intel telah mengeluarkan demo yang menunjukkan medan asteroid rekaan komputer, yang mana Direct3D 12 didakwa 50–70% lebih cekap daripada Direct3D 11 dari segi kelajuan pemaparan dan penggunaan kuasa CPU.[56][57]
Ashes of the Singularity merupakan permainan video pertama yang tersedia secara umum yang menggunakan Direct3D 12. Ujian oleh Ars Technica pada Ogos 2015 mendedahkan sedikit penurunan prestasi dalam mod Direct3D 12 berbanding Direct3D 11 bagi Nvidia GeForce 980 Ti, manakala AMD Radeon R9 290x mencapai peningkatan prestasi yang konsisten sehingga 70% di bawah Direct3D 12, dan dalam beberapa senario, AMD mengatasi Nvidia yang lebih berkuasa di bawah Direct3D 12. Jurang prestasi ini mungkin disebabkan oleh pengoptimuman pemacu Nvidia yang lemah untuk Direct3D 12, atau batasan peranti keras kad tersebut yang dioptimumkan untuk pelaksanaan bersiri Direct3D 11; walau bagaimanapun, punca sebenarnya masih tidak jelas.[58]
Peningkatan prestasi Direct3D 12 pada Xbox adalah tidak seketara seperti pada PC.[59]
Pada Mac 2018, Penjejakan Sinar DirectX (DirectX Raytracing - DXR) telah diumumkan, yang berupaya melakukan penjejakan sinar masa nyata pada peranti keras yang disokong,[60] dan API DXR telah ditambahkan dalam kemas kini Windows 10 Oktober 2018.
Pada tahun 2019, Microsoft mengumumkan ketibaan DirectX 12 ke Windows 7 tetapi hanya sebagai palam masuk (plug-in) untuk tajuk permainan video tertentu.[61]
DirectX 12 Ultimate
Microsoft mendedahkan DirectX 12 Ultimate pada Mac 2020. DirectX 12 Ultimate menyatukan pustaka biasa pada kedua-dua komputer Windows 10 dan Xbox Series X serta konsol Xbox generasi kesembilan yang lain. Antara ciri baharu dalam Ultimate merangkumi DirectX Raytracing 1.1, Peletakan Bayang Kadar Boleh Ubah (Variable Rate Shading) yang memberikan pengaturcara kawalan ke atas tahap ketelitian bayangan bergantung pada pilihan reka bentuk, Pengorek Jaring (Mesh Shaders), dan Maklum Balas Pengambil Sampel (Sampler Feedback).[62][63]
Sejarah versi
| Versi | Tarikh keluaran | Nota | ||
|---|---|---|---|---|
| Utama | Kecil | Nombor | ||
| 1 | 1.0 | 4.02.0095 | 30 September 1995 | Pada mulanya dikeluarkan sebagai Windows Game SDK, menggantikan WinG untuk Windows 95 dan seterusnya |
| 2 | 2.0 | 4.03.00.1096 | 5 Jun 1996 | Hanya disertakan dengan beberapa permainan video dan aplikasi pihak ketiga, memperkenalkan Direct3D |
| 2.0a | 4.03.00.1100 | 1996 | Disertakan dengan permainan video, serta Windows NT 4.0 dan kemudiannya dengan Windows 95 OSR2 Satu-satunya kemas kini dengan 2.0a adalah pada fail pemacu audio terbina dalam "MSDSOUND.INF", yang mempunyai versi 4.03.00.1100. | |
| 3 | 3.0 | 4.04.00.0068 | 15 September 1996 | |
| 4.04.00.0069 | 1996 | Pakej DirectX 3.0 yang kemudian merangkumi Direct3D 4.04.00.0069 | ||
| 3.0a | 4.04.00.0070 | Disember 1996 | Windows NT 4.0 SP3+ Versi terakhir untuk Windows NT 4.0 | |
| 3.0b | 4.04.00.0070 | Januari 1997 | Ini merupakan kemas kini yang sangat kecil pada 3.0a yang membetulkan masalah kosmetik pada Windows 95 versi Bahasa Jepun (DSETUPJ.DLL) | |
| 4 | 4.0 | Tidak pernah dikeluarkan | DirectX 4 tidak pernah dikeluarkan. Raymond Chen dari Microsoft menjelaskan dalam bukunya, The Old New Thing, bahawa selepas DirectX 3 dikeluarkan, Microsoft mula membangunkan versi 4 dan 5 pada masa yang sama. Versi 4 sepatutnya menjadi keluaran jangka pendek dengan ciri-ciri kecil, manakala versi 5 akan menjadi keluaran yang lebih besar. Kurangnya minat daripada pembangun permainan video terhadap ciri-ciri yang dinyatakan untuk DirectX 4 menyebabkan ia dibatalkan, dan sejumlah besar dokumen yang sudah membezakan kedua-dua versi baharu itu menyebabkan Microsoft memilih untuk tidak mengguna semula versi 4 bagi menggambarkan ciri-ciri yang dimaksudkan untuk versi 5.[64][65] | |
| 5 | 5.0 | 4.05.00.0155 (RC55) | 4 Ogos 1997 | Tersedia sebagai versi beta untuk Windows NT 5.0 Beta dan boleh dipasang pada Windows NT 4.0 |
| 4.05.00.0155 (RC66) | 26 November 1997 | Pemasang disertakan pada media pemasangan Windows 95 OSR 2.5 | ||
| 5.2 | 4.05.01.1600 (RC00) | 5 Mei 1998 | Keluaran DirectX 5.2 untuk Windows 95 | |
| 4.05.01.1998 (RC0) | 25 Jun 1998 | Eksklusif untuk Windows 98 | ||
| 6 | 6.0 | 4.06.00.0318 (RC3) | 7 Ogos 1998[66] | Windows CE seperti yang dilaksanakan pada Dreamcast dan peranti lain |
| 6.1 | 4.06.02.0436 (RC0) | 3 Februari 1999[67] | ||
| 6.1a | 4.06.03.0518 (RC0) | 5 Mei 1999[68] | Eksklusif untuk Windows 98 Edisi Kedua | |
| 7 | 7.0 | 4.07.00.0700 (RC1) | 22 September 1999[69][70][71] | |
| 4.07.00.0700 | 17 Februari 2000 | Eksklusif untuk Windows 2000 | ||
| 7.0a | 4.07.00.0716 (RC0) | November 1999 | ||
| 4.07.00.0716 (RC1) | 17 Disember 1999 | Dikeluarkan hanya untuk Windows 95 hingga 98[72] | ||
| 7.1 | 4.07.01.3000 (RC1) | 14 September 2000[73] | Eksklusif untuk Windows Me. Versi terakhir yang mempunyai sokongan pemaparan perisian RGB terbina dalam. Juga merupakan versi terakhir yang boleh dijalankan pada CPU 486 atau yang lebih lama.[perlu rujukan] | |
| 8 | 8.0 | 4.08.00.0400 (RC10) | 10 November 2000[74] | |
| 8.0a | 4.08.00.0400 (RC14) | 24 Januari 2001[75][76] | Versi terakhir untuk Windows 95 dan versi akhir yang mempunyai sokongan pemaparan perisian dalam dxdiag.exe | |
| 8.1 | 4.08.01.0810 | 24 Ogos 2001 | Disertakan dengan Windows XP RTM & SP1, dan Windows Server 2003 RTM | |
| 4.08.01.0881 (RC7) | 8 November 2001 | Versi ini adalah untuk sistem pengendalian tahap bawah (down-level) | ||
| 8.1b | 4.08.01.0901 (RC7) | 25 Jun 2002 | Keluaran ini merangkumi kemas kini pada Direct3D (D3d8.dll). Termasuk pembetulan pada DirectShow untuk Windows 2000 (Quartz.dll) | |
| 8.2 | 4.08.02.0134 (RC0) | 2002 | Sama seperti DirectX 8.1b tetapi merangkumi DirectPlay 8.2 | |
| 9 | 9.0 | 4.09.00.0900 (RC4) | 19 Disember 2002 | |
| 9.0a | 4.09.00.0901 (RC6) | 26 Mac 2003 | ||
| 9.0b | 4.09.00.0902 (RC2) | 13 Ogos 2003 | ||
| 9.0c[77] | 4.09.00.0904 (RC0) | 2 Ogos 2004[78] | Keluaran pertama 9.0c Kemas kini berkala telah dikeluarkan, pada mulanya dalam bentuk bukan kumulatif yang ditujukan untuk pembangun bermula dari Oktober 2004[79] sehingga Oktober 2005[80], dan kemudian dalam bentuk kumulatif untuk pengguna akhir dari Disember 2005[81] sehingga Jun 2010.[82] | |
| 4.09.00.0904 | 25 Ogos 2004 | Diperkenalkan kepada Windows XP dengan Pek Perkhidmatan 2 (SP2), dan kemudian kepada Windows Server 2003 dengan Pek Perkhidmatan 1 (SP1) | ||
| 10 Oktober 2006[83] | "Keluaran semula Oktober 2006", keluaran rasmi terakhir untuk Windows 98 dan Windows Me[84][85] | |||
| 5 Februari 2010[86] | "Keluaran semula Februari 2010", keluaran terakhir untuk Windows 2000, Windows XP RTM & SP1, dan Windows Server 2003 RTM[87] | |||
| 7 Jun 2010[87] | "Keluaran semula Jun 2010", keluaran akhir 9.0c Keluaran terakhir untuk Windows XP[a] dan Windows Server 2003[b][88] | |||
| 10 | 10 | 6.00.6000.16386 | 30 November 2006 | Eksklusif untuk Windows Vista |
| 10.1 | 6.00.6001.18000 | 4 Februari 2008 | Eksklusif untuk Windows Vista SP1 dan Windows Server 2008 Merangkumi Direct3D 10.1 | |
| 6.00.6002.18005 | 28 April 2009 | Eksklusif untuk Windows Vista SP2 dan Windows Server 2008 SP2 Merangkumi Direct3D 10.1 | ||
| 11 | 11 | 6.01.7600.16385 | 22 Julai 2009 | Eksklusif untuk Windows 7 dan Windows Server 2008 R2 |
| 6.00.6002.18107 | 27 Oktober 2009 | Melalui Suplemen Kemas Kini Platform untuk Windows Vista dan Windows Server 2008[89] | ||
| 6.01.7601.17514 | 16 Februari 2011 | Eksklusif untuk Windows 7 SP1 dan Windows Server 2008 R2 SP1 | ||
| 11.1 | 6.02.9200.16384 | 1 Ogos 2012 | Eksklusif untuk Windows 8, Windows RT dan Windows Server 2012 | |
| 6.02.9200.16492 | 11 Februari 2013 | Melalui Kemas Kini Platform untuk Windows 7 SP1 dan Windows Server 2008 R2 SP1[90] | ||
| 11.2 | 6.03.9600.16384 | 27 Ogos 2013 | Eksklusif untuk Windows 8.1 dan Windows Server 2012 R2 | |
| 12 | 12 | 10.00.10240.16384 | 29 Julai 2015 | Eksklusif untuk Windows 10 dan Windows Server 2016 |
| 10.00.15063.0000 | 20 Mac 2017 | Windows 10, Ujian Sempadan Kedalaman (Depth Bounds Testing) dan MSAA Boleh Atur Cara ditambah[91][92] | ||
| 10.00.17763.0000 | 20 November 2019 | Direct3D 12 khusus untuk Windows 7 SP1, melalui pakej kod sumber khas untuk pembangun aplikasi[93][94] | ||
| 12.1 | 10.00.17763.0001 | 2 Oktober 2018 | Eksklusif untuk Windows 10 (1809) dan Windows Server 2019, sokongan Penjejakan Sinar DirectX ditambah[95] | |
| 10.00.18362.0116 | 19 Mei 2019 | Windows 10, sokongan Peletakan Bayang Kadar Boleh Ubah (Variable Rate Shading - VRS) ditambah[96] | ||
| 12.2 | 10.00.19041.0928 | 10 November 2020 | Eksklusif untuk Windows 10 (2004–22H2) dan Windows Server 2022, Ultimate | |
| 10.00.22000.1000 | 5 Oktober 2021 | Eksklusif untuk Windows 11, menambah penukaran kadar segar semula dinamik[97] dan keupayaan grafik yang ditingkatkan pada Subsistem Windows untuk Linux[98] | ||
| 10.00.22621.3820 | 20 September 2022 | Windows 11 (22H2), penambahbaikan DirectStorage, pengoptimuman DXR, Model Pengorek 6.7 | ||
| 10.00.22631.2428 | 31 Oktober 2023 | Windows 11 (23H2), pengoptimuman lanjut DirectX 12 Ultimate dan penambahbaikan pemutus DXIL | ||
| 10.00.26100.1000 | 1 Oktober 2024 | Eksklusif untuk Windows 11 (24H2) dan Windows Server 2025, sokongan untuk Pengisihan Semula Pelaksanaan Pengorek (SER), Graf Kerja (Work Graphs), dan Model Pengorek 6.8 | ||
| 10.00.26200.7309 | 30 September 2025 | Windows 11 (25H2), pemurnian pada Graf Kerja, kelakuan DXR lanjutan, dan penambahbaikan saluran paip berasaskan GPU | ||
Nombor versi seperti yang dilaporkan oleh alat DxDiag Microsoft (versi 4.09.0000.0900 dan lebih tinggi) menggunakan format x.xx.xxxx.xxxx untuk nombor versi. Walau bagaimanapun, halaman MSDN DirectX dan Windows XP mendakwa bahawa pendaftaran sentiasa dalam format x.xx.xx.xxxx. Oleh itu, apabila jadual di atas menyenaraikan versi sebagai '4.09.00.0904', alat DxDiag Microsoft mungkin memaparkannya sebagai '4.09.0000.0904'.[99]
Keserasian
Pelbagai versi Windows telah menyertakan dan menyokong pelbagai versi DirectX, membolehkan versi sistem pengendalian yang lebih baharu terus menjalankan aplikasi yang direka untuk versi DirectX terdahulu sehinggalah versi-versi tersebut dihentikan secara bertahap demi memberi ruang kepada API, pemacu, dan peranti keras yang lebih baharu.[100]
API seperti Direct3D dan DirectSound perlu berinteraksi dengan peranti keras, dan ia melakukannya melalui pemacu peranti. Pengeluar peranti keras perlu menulis pemacu ini untuk antaramuka pemacu peranti (DDI) versi DirectX yang tertentu, serta menguji setiap peranti keras secara individu untuk memastikannya serasi dengan DirectX. Sesetengah peranti keras hanya mempunyai pemacu yang serasi dengan DirectX (dalam kata lain, seseorang mesti memasang DirectX untuk menggunakan peranti keras tersebut). Versi awal DirectX menyertakan pustaka terkini bagi semua pemacu yang serasi dengan DirectX yang sedia ada pada masa itu. Walau bagaimanapun, amalan ini dihentikan dan digantikan dengan sistem kemas kini pemacu berasaskan web Windows Update, yang membolehkan pengguna memuat turun hanya pemacu yang berkaitan dengan peranti keras mereka sahaja, dan bukannya keseluruhan pustaka.
Sebelum DirectX 10, masakerja (runtime) DirectX direka bentuk untuk serasi ke belakang dengan pemacu yang lebih lama, bermakna versi API yang lebih baharu direka untuk beroperasi bersama pemacu lama yang ditulis berdasarkan DDI versi terdahulu. Pengaturcara aplikasi perlu menyemak keupayaan peranti keras yang sedia ada menggunakan sistem "bit cap" yang kompleks, di mana setiap bit terikat pada ciri peranti keras tertentu. Direct3D 7 dan versi sebelumnya boleh berfungsi pada mana-mana versi DDI, manakala Direct3D 8 memerlukan tahap DDI minimum 6 dan Direct3D 9 memerlukan tahap DDI minimum 7.[101] Walau bagaimanapun, masakerja Direct3D 10 dalam Windows Vista tidak dapat dijalankan pada pemacu peranti keras yang lebih lama disebabkan oleh DDI yang telah dikemas kini secara ketara, yang memerlukan set ciri bersepadu dan meninggalkan penggunaan "bit cap".
Direct3D 10.1 memperkenalkan "tahap ciri" (feature levels) 10_0 dan 10_1, yang membolehkan penggunaan hanya ciri-ciri peranti keras yang ditakrifkan dalam versi API Direct3D berkenaan. Direct3D 11 menambah tahap 11_0 dan "10 Level 9" - iaitu subset daripada API Direct3D 10 yang direka untuk dijalankan pada peranti keras Direct3D 9, yang mempunyai tiga tahap ciri (9_1, 9_2, dan 9_3) yang dikelompokkan mengikut keupayaan umum kad grafik kelas "rendah", "sederhana", dan "mewah" (high-end); masakerja ini menggunakan secara terus DDI Direct3D 9 yang disediakan dalam semua pemacu WDDM. Tahap ciri 11_1 telah diperkenalkan bersama Direct3D 11.1.
.NET Framework
Pada tahun 2002, Microsoft mengeluarkan versi DirectX yang serasi dengan Microsoft .NET Framework, sekali gus membolehkan pengaturcara memanfaatkan fungsi DirectX daripada dalam aplikasi .NET menggunakan bahasa yang serasi seperti managed C++ atau penggunaan bahasa pengaturcaraan C#. API ini dikenali sebagai "Managed DirectX" (atau singkatannya MDX), dan didakwa beroperasi pada tahap 98% daripada prestasi API DirectX asal (native). Pada Disember 2005, Februari 2006, April 2006, dan Ogos 2006, Microsoft mengeluarkan kemas kini berturut-turut untuk pustaka ini, yang memuncak dengan versi beta yang dipanggil Managed DirectX 2.0. Walaupun Managed DirectX 2.0 menyatukan fungsi yang sebelum ini tersebar di pelbagai himpunan (assemblies) ke dalam satu himpunan tunggal — sekali gus mempermudah kebergantungan untuk pembangun perisian — pembangunan versi ini kemudiannya telah dihentikan, dan ia tidak lagi disokong. Pustaka Managed DirectX 2.0 telah tamat tempoh pada 5 Oktober 2006.
Semasa GDC 2006, Microsoft telah membentangkan Kerangka XNA, iaitu versi terurus baharu DirectX (serupa tetapi tidak serupa dengan Managed DirectX) yang bertujuan untuk membantu pembangunan permainan video dengan memudahkan penyepaduan DirectX, HLSL, dan alatan lain dalam satu pakej. Ia juga menyokong pelaksanaan kod terurus pada Xbox 360. XNA Game Studio Express RTM telah disediakan pada 11 Disember 2006 sebagai muat turun percuma untuk Windows XP. Berbeza dengan masakerja DirectX, Managed DirectX, Kerangka XNA, atau API Xbox 360 (XInput, XACT dll.) tidak disertakan sebagai sebahagian daripada Windows. Pembangun diharapkan untuk mengedarkan semula komponen masakerja tersebut bersama-sama dengan permainan atau aplikasi mereka.
Tiada produk Microsoft, termasuk keluaran XNA terkini, yang menyediakan sokongan DirectX 10 untuk .NET Framework.
Pendekatan lain untuk DirectX dalam bahasa terurus adalah dengan menggunakan pustaka pihak ketiga seperti:
- SlimDX, sebuah pustaka sumber terbuka untuk pengaturcaraan DirectX pada .NET Framework
- SharpDX,[102][103] sebuah projek sumber terbuka yang menyediakan API DirectX lengkap untuk .NET pada semua platform Windows, yang membolehkan pembangunan permainan video berprestasi tinggi, pemaparan grafik 2D dan 3D, serta aplikasi bunyi masa nyata
- DirectShow.NET untuk subset DirectShow
- Windows API CodePack for .NET Framework Diarkibkan Februari 14, 2011, di Wayback Machine, yang merupakan pustaka sumber terbuka daripada Microsoft.
Alternatif
Terdapat beberapa alternatif bagi keluarga API DirectX, dengan OpenGL, penggantinya Vulkan, Metal, dan Mantle mempunyai ciri-ciri yang paling sebanding dengan Direct3D. Contoh API lain termasuklah SDL, Allegro, OpenMAX, OpenML, OpenAL, OpenCL, FMOD, SFML dan lain-lain. Kebanyakan pustaka ini adalah rentas platform atau mempunyai pangkalan kod terbuka. Terdapat juga pelaksanaan alternatif yang bertujuan untuk menyediakan API yang sama, seperti yang terdapat dalam Wine. Selain itu, pembangun ReactOS sedang cuba melaksanakan semula DirectX di bawah nama "ReactX".
Nota
Rujukan
- ^ 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. Dicapai pada 2022-08-09.
Lion King software, for example, is a WinToon app. ... Like WinToon, this example uses WinG for drawing on the DIB.
- ^ a b c d e Willetts, Samual (July 27, 2020). "How DirectX defined PC gaming... with help from a shotgun-toting Bill Gates". PC Gamer. Dicapai pada December 7, 2020.
- ^ a b c d Craddock, David (November 14, 2020). "Bet on Black: How Microsoft and Xbox Changed Pop Culture, Part 1 - Chapter 8: Power of X". Shacknews. Dicapai pada December 7, 2020.
- ^ "DirectX Then and Now". Feb 20, 2006. Diarkibkan daripada yang asal pada July 5, 2008. Dicapai pada August 1, 2008. Alt URL
- ^ Drummond, Michael (2020). Renegades of the Empire (ed. 1st). Three Rivers Press. m/s. 62. ISBN 978-0609807453.
- ^ "USPTO Patent Public Search".
- ^ Haggarty, James (December 9, 2020). "Microsoft Misfit Helped Lead Company Into Game Market". The Wall Street Journal. Dicapai pada December 9, 2020.
- ^ "Introduction". DirectDraw Application Programming Interface. Microsoft. April 20, 1995.
- ^ "Introduction". DirectSound Application Programming Interface. Microsoft. April 20, 1995.
- ^ "Introduction". DirectPlay Application Programming Interface. Microsoft. April 20, 1995.
- ^ "Chapter 3: Joystick API Reference". DirectInput Application Programming Interface. Microsoft. April 20, 1995.
- ^ "What is AutoPlay?". Building AutoPlay-Enabled CD-ROM Titles and Games. Microsoft. November 1, 1994.
- ^ "Architectural Overview". DirectDraw Application Programming Interface. Microsoft. April 20, 1995.
- ^ "54 What is DCI?". stason.org.
- ^ Raskin, Robin (August 1995). "Pity the Poor Developer". PC Magazine. Dicapai pada 2022-08-07.
- ^ Craig Eisler's blog post about the frenzy to build DirectX 1 through 5 di craig.theeislers.com
- ^ Jay Barnson (July 13, 2006). "Tales of the Rampant Coyote". Diarkibkan daripada yang asal pada July 17, 2006.
- ^ Miller, Michael J. (December 1994). "System Software WINNER Microsoft Windows NT Workstation, Version 3.5". PC Magazine. Dicapai pada 2022-08-13.
- ^ Kilgard, Mark (December 2008). "OpenGL's Design Philosophy (slide)". SlideShare. Dicapai pada 2022-08-14.
- ^ Kilgard, Mark J. (1996). OpenGL Programming for the X Window System. Addison-Wesley. m/s. 1–6.
- ^ Hecker, Chris (April 1997). "An Open Letter to Microsoft: Do the Right Thing for the 3D Game Industry" (PDF). Game Developer Magazine. Diarkibkan (PDF) daripada yang asal pada 2021-01-26. Dicapai pada 2022-08-29.
- ^ J. Allard, PC Pro Interview Diarkibkan 2007-10-11 di Wayback Machine, April 2004
- ^ "Windows Phone 8 adds DirectX, native development, easier app porting". June 20, 2012. Dicapai pada June 23, 2012.
- ^ "Add the HLSL-spirv cookbook. (#1618)". GitHub. October 23, 2018.
- ^ 3D Animation of SPACE FIGHTER by DIRECT ANIMATION[pautan mati kekal]
- ^ "DirectX Media Objects". DirectShow. Microsoft Docs. Jun 5, 2019.
DMOs have been superseded by Media Foundation Transforms (MFTs).
- ^ "DirectX 9: Using the Managed Direct3D Graphics API in .NET". microsoft.com. Microsoft. October 22, 2019.
- ^ "Microsoft.Xna.Framework.Graphics Namespace". microsoft.com. Microsoft. September 29, 2011.
- ^ "PIX".
- ^ "DirectX Frequently Asked Questions". microsoft.com. Microsoft.
- ^ Chuck Walbourn (August 2009). "Graphics APIs in Windows". MSDN. Dicapai pada 2009-10-03.
- ^ Albanesius, Chloe (2007-08-29). "Microsoft Unleashes First Service Pack for Vista". PC Magazine. Diarkibkan daripada yang asal pada March 19, 2008. Dicapai pada 2007-08-29.
- ^ "Microsoft Presents DirectX 10.1 Details at SIGGRAPH". 2007-08-07. Diarkibkan daripada yang asal pada September 9, 2007. Dicapai pada 2007-08-27.
- ^ "Learn Network Inspire" (PDF). AMD. Diarkibkan daripada yang asal (PDF) pada 2012-04-10. Dicapai pada 2012-12-30.
- ^ "DirectX 10.1 Requires No New GPU". Windows Vista: The Complete Guide. 2008-03-05. Diarkibkan daripada yang asal pada 2007-10-29. Dicapai pada 2008-03-05.
- ^ "What's next for DirectX? A DirectX 11 overview — A DirectX 11 overview". Elite Bastards. September 1, 2008. Diarkibkan daripada yang asal pada September 4, 2008. Dicapai pada 2008-09-04.
- ^ "DirectX 11: A look at what's coming". bit-tech.net. September 17, 2008.
- ^ Windows 7 and D3D 11 release date[usurped]
- ^ "MSDN Blogs". msdn.com. Microsoft. August 6, 2021.
- ^ "Windows 8 Developer Preview Guide" (PDF). Diarkibkan daripada yang asal (PDF) pada 2011-10-07.
- ^ "Platform Update for Windows 7 (Windows)". Msdn.microsoft.com. Dicapai pada 2014-08-09.
- ^ Pooya Eimandar (2013). DirectX 11.1 Game Programming. Packt Publishing Ltd. m/s. 45. ISBN 978-1-84969-481-0.
- ^ a b "How to install the latest version of DirectX". Microsoft Support. Microsoft. Dicapai pada 27 October 2017.
- ^ "Geometry Realizations Overview". microsoft.com. Microsoft. August 19, 2020.
- ^ Bennett Sorbo (June 26, 2013). "What's New in Direct3D 11.2". Channel9 - BUILD 2013. around 20:00.
- ^ "Microsoft officially turns down Mantle". semiaccurate.com. October 16, 2013.
- ^ Chris Tector's segment of http://channel9.msdn.com/Blogs/DirectX-Developer-Blog/DirectX-Evolving-Microsoft-s-Graphics-Platform (starting approx. 18 minute in.)
- ^ Smith, Ryan (September 18, 2014). "Microsoft Details Direct3D 11.3 & 12 New Rendering Features". AnandTech. Diarkibkan daripada yang asal pada September 21, 2014. Dicapai pada November 6, 2014.
- ^ McMullen, Max (2 April 2014). "Direct3D 12 API Preview". Channel 9. Microsoft.
- ^ Moore, Bo (May 5, 2015). "DirectX 12 will be able to use your integrated GPU to improve performance". PC Gamer. Future US. Dicapai pada August 22, 2015.
- ^ Michaud, Scott (May 4, 2015). "BUILD 2015: The Final DirectX 12 Reveal". PC Perspective. Diarkibkan daripada yang asal pada September 5, 2015. Dicapai pada August 22, 2015.
- ^ Langley, Bryan (July 29, 2015). "Windows 10 and DirectX 12 released!". MSDN DirectX Developer Blog. Microsoft. Diarkibkan daripada yang asal pada August 2, 2015. Dicapai pada August 22, 2015.
- ^ Yeung, Andrew (April 30, 2015). "DirectX 12 Multiadapter: Lighting up dormant silicon and making it work for you". MSDN DirectX Developer Blog. Microsoft. Diarkibkan daripada yang asal pada August 20, 2015. Dicapai pada August 22, 2015.
- ^ Ryan Smith. "AnandTech - Microsoft Announces DirectX 12: Low Level Graphics Programming Comes To DirectX". anandtech.com. Diarkibkan daripada yang asal pada March 27, 2014.
- ^ Yeung, Andrew (13 August 2014). "DirectX 12 – High Performance and High Power Savings". DirectX Developer Blog. Microsoft. Diarkibkan daripada yang asal pada August 13, 2014. Dicapai pada November 6, 2014.
- ^ Lauritzen, Andrew (11 August 2014). "SIGGRAPH 2014: DirectX 12 on Intel". Developer Zone. Intel.
- ^ Walton, Mark (August 19, 2015). "DirectX 12 tested: An early win for AMD, and disappointment for Nvidia". Ars Technica UK. Dicapai pada August 19, 2015.
- ^ "Xbox One chief warns gamers not to expect dramatic improvements from DirectX 12 - ExtremeTech". ExtremeTech. June 18, 2014. Dicapai pada 30 September 2014.
- ^ "Announcing Microsoft DirectX Raytracing!". Microsoft. March 19, 2018.
- ^ "Microsoft ports DirectX 12 to Windows 7, giving some older PC games a performance boost". PCWorld (dalam bahasa Inggeris). 2019-03-13. Dicapai pada 2019-04-17.
- ^ "Announcing DirectX 12 Ultimate". Microsoft. March 19, 2020. Dicapai pada March 20, 2020.
- ^ Kerr, Chris (March 20, 2020). "Microsoft launches DirectX 12 Ultimate to support next-gen graphics". Gamasutra. Dicapai pada March 20, 2020.
- ^ Chen, Raymond (2006). "Etymology and History". The Old New Thing (ed. 1st). Pearson Education. m/s. 330. ISBN 0-321-44030-7.
- ^ "What happened to DirectX 4? - The Old New Thing - Site Home - MSDN Blogs". Blogs.msdn.com. 2004-01-22. Dicapai pada 2012-12-30.
- ^ "Microsoft Ships Final Release of DirectX 6.0". Microsoft.com. August 7, 1998. Diarkibkan daripada yang asal pada August 26, 2015. Dicapai pada July 19, 2019.
- ^ "Microsoft Ships DirectX 6.1". Microsoft.com. February 3, 1999. Diarkibkan daripada yang asal pada August 26, 2015. Dicapai pada July 19, 2019.
- ^ "Microsoft DirectX – Frequently Asked Questions". ActiveWin.com. Diarkibkan daripada yang asal pada February 10, 2003. Dicapai pada August 30, 2019.
- ^ "Microsoft Ships Final Release of DirectX 7.0". Microsoft.com. September 22, 1999. Diarkibkan daripada yang asal pada July 19, 2019. Dicapai pada July 19, 2019.
- ^ Paul Thurrott (September 21, 1999). "Microsoft releases DirectX 7.0". ITProToday. Diarkibkan daripada yang asal pada April 17, 2019. Dicapai pada July 19, 2019.
- ^ Mielewczik, Michael. "DirectX 7.0 – Nachbrenner für Spiele". PC Intern. 12/1999: 124–125.
- ^ "Download Center: DirectX / Version - 7.0a". Microsoft.com. Diarkibkan daripada yang asal pada April 8, 2000. Dicapai pada July 20, 2019.
- ^ Paul Thurrott (September 14, 2000). "Windows Millennium Edition (Windows Me) Review". ITProToday. Diarkibkan daripada yang asal pada June 13, 2018. Dicapai pada July 21, 2019.
- ^ Admin (November 10, 2000). "DirectX 8 leaks out". Geek.com. Diarkibkan daripada yang asal pada July 12, 2016. Dicapai pada July 20, 2019.
- ^ "DirectX 8.0a Redist". Microsoft.com. January 24, 2001. Diarkibkan daripada yang asal pada March 31, 2001. Dicapai pada July 20, 2019.
- ^ Mielewczik, Michael (2001). "Brandaktuell – Das neue DirectX 8.0". Windows Technical. München: MEK3 Verlag. 2001 (2): 56–59.
- ^ "Download DirectX End-User Runtime Web Installer from Official Microsoft Download Center". microsoft.com. Microsoft.
- ^ "DirectX 9.0C Released!". Neowin. Dicapai pada 3 May 2026.
- ^ "DirectX 9.0c Redistributable for Software Developers - Multilingual Genuine Windows download". Microsoft. Diarkibkan daripada yang asal pada February 25, 2006. Dicapai pada 3 May 2026.CS1 maint: bot: original URL status unknown (link)
- ^ "DirectX 9.0c Redistributable (October 2005) for Software Developers - Multilingual Genuine Windows download". Microsoft. Diarkibkan daripada yang asal pada December 22, 2005. Dicapai pada 3 May 2026.CS1 maint: bot: original URL status unknown (link)
- ^ "DirectX End-User Runtimes (December 2005) Full Download". Microsoft. Diarkibkan daripada yang asal pada February 5, 2006. Dicapai pada 3 May 2026.CS1 maint: bot: original URL status unknown (link)
- ^ "DirectX End-User Runtimes (June 2010)". Microsoft. Dicapai pada 4 May 2026.
- ^ Microsoft Corporation (October 10, 2006). "Download DirectX End-User Runtimes from Official Microsoft Download Center". Microsoft. Diarkibkan daripada yang asal pada June 28, 2012. Dicapai pada March 1, 2025.
- ^ "DirectX End-User Runtimes (October 2006)". Microsoft. Diarkibkan daripada yang asal pada November 9, 2006. Dicapai pada 3 May 2026.CS1 maint: bot: original URL status unknown (link)
- ^ "DirectX End-User Runtimes (December 2006)". Microsoft. Diarkibkan daripada yang asal pada February 3, 2007. Dicapai pada 3 May 2026.CS1 maint: bot: original URL status unknown (link)
- ^ Microsoft Corporation (February 5, 2010). "Download DirectX End-User Runtimes (February 2010) from Official Microsoft Download Center". Microsoft. Diarkibkan daripada yang asal pada April 29, 2012. Dicapai pada March 1, 2025.
- ^ a b Ralat petik: Tag
<ref>tidak sah; tiada teks disediakan bagi rujukan yang bernama "Jun2010" - ^ "Report: No DirectX 10 For Windows XP". GameDeveloper. May 30, 2006. Dicapai pada 2021-12-23.
- ^ "Microsoft upgrades Windows Vista with DirectX 11". pcgameshardware.com. September 15, 2009. Diarkibkan daripada yang asal pada March 31, 2016. Dicapai pada September 15, 2009.
- ^ "Platform update for Windows 7 SP1 and Windows Server 2008 R2 SP1". Microsoft Support. Microsoft. February 27, 2013. Diarkibkan daripada yang asal pada May 7, 2019. Dicapai pada May 7, 2019.
- ^ "What's New in Windows 10, build 15063 - UWP applications". October 20, 2022.
- ^ "Announcing new DirectX 12 features". November 7, 2017.
- ^ "NuGet Gallery | Microsoft.Direct3D.D3D12On7 1.1.0".
- ^ "DirectX-Specs".
- ^ "DirectX Raytracing and the Windows 10 October 2018 Update". October 2, 2018.
- ^ "Variable Rate Shading: A scalpel in a world of sledgehammers". March 18, 2019.
- ^ "Dynamic refresh rate – Get the best of both worlds". Dev blogs. Microsoft. June 28, 2021.
- ^ "WSL Graphics Architecture". Developers Conference 2020. X.Org. Diarkibkan daripada yang asal pada October 8, 2021. Dicapai pada October 8, 2021.
- ^ "DirectX and Windows XP". Diarkibkan daripada yang asal pada 18 January 2008.
- ^ "Which version of DirectX is on your PC?". support.microsoft.com. Dicapai pada 2020-09-30.
- ^ MSN. "Minimum DDI requirements". Microsoft. Dicapai pada 2 August 2012.
- ^ "SharpDX - Managed DirectX". Diarkibkan daripada yang asal pada January 16, 2023. Dicapai pada 30 September 2014.
- ^ "sharpdx/SharpDX". GitHub. Dicapai pada 30 September 2014.
Pautan luar
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.
