當前位置:編程學習大全網 - 編程語言 - 什麽是DirectX?

什麽是DirectX?

DirectX不是壹個簡單的圖形API,而是微軟開發的壹個廣泛使用的API。它包括Direct graphics(Direct 3d+DirectDraw)、直接輸入、直接播放、直接聲音、直接顯示、直接設置、直接媒體對象等幾個組件。它提供了壹套完整的多媒體接口方案。只是它在3D圖形方面的出色表現讓它的其他方面顯得黯淡無光。DirectX最初是為了彌補Windows 3.1系統圖形和聲音處理能力的不足而開發的,現在已經發展成為對整個多媒體系統的各個方面都有決定性影響的接口。

DirectX 1.0

第壹代DirectX非常不成功,推出的時候很多硬件都不支持。當時基本采用的是專業圖形API——OpenGL,硬件支持不足成為其普及的最大障礙。

DirectX 1.0是第壹個可以直接讀取硬件信息的程序。它提供了更直接的讀取圖形硬件的性能(如顯卡上的塊移動功能)和基本的聲音和輸入設備功能(函數),使開發的遊戲可以加速二維(2D)圖像。這個時候的DirectX還沒有包括現在所有的3D功能,還在壹個初級階段。

DirectX 2.0

DirectX 2.0在二維圖形方面做了壹些改進,增加了壹些動態效果,采用了直接3D技術。所以DirectX 2.0和DirectX 1.0差別很大。在DirectX 2.0中,使用“平滑模擬和RGB模擬”來加速3D圖像的計算。DirectX 2.0還采用了更加用戶友好的安裝程序,並糾正了應用程序界面中的許多問題。從DirectX 2.0開始,整個DirectX設計架構的雛形已經基本完成。

DirectX 3.0

DirectX 3.0是在1997年Windows95最後壹個版本發布後不久推出的。此時3D遊戲開始深入人心,DirectX也逐漸被軟硬件廠商認可。1997年有三個應用程序接口標準,分別是專業的OpenGL接口、微軟的DirectX D接口和3DFX公司的Glide接口。當時3DFX公司是最有實力的顯卡廠商,其Glide接口自然被廣泛使用。但是隨著3DFX公司和Voodoo顯卡的沒落,Glide界面逐漸消失。

DirectX 3.0是DirectX 2.0的簡單升級版,變化不大。包括對DirectSound(針對3D音效功能)和DirectPlay(針對遊戲/網絡)的壹些修改和升級。DirectX 3.0集成了簡單的3D特效,不是很成熟。

DirectX 5.0

微軟沒有推出DirectX 4.0,而是直接推出了DirectX 5.0。該版本對Direct3D進行了很大的改動,加入了霧化效果、Alpha混合等3D特效,以增強3D遊戲中的空間感和真實感,還加入了S3紋理壓縮技術。

同時,DirectX 5.0在其他組件上也得到了加強,在聲卡和遊戲手柄上有所改進,支持更多設備。所以DirectX發展到DirectX 5.0才真正成熟。這個時候DirectX的性能壹點也不遜色於其他3D API,很有可能會迎頭趕上。

DirectX 6.0

DirectX 6.0推出時,其最大的競爭對手之壹Glide已經逐漸沒落,DirectX得到了大多數廠商的認可。DirectX 6.0增加了雙線性過濾、三線性過濾等技術來優化3D圖像的質量,遊戲中的3D技術也逐漸進入成熟階段。

DirectX 7.0

DirectX 7.0最大的特點是支持T &;l,中文名字叫“坐標變換與光源”。3D遊戲中的任何物體都有壹個坐標。當物體移動時,其坐標發生變化,這意味著坐標變換。3D遊戲中,除了場景和物體,還需要燈光。沒有照明,就沒有3D對象的表示。無論是實時3D遊戲還是3D圖像渲染,帶光照的3D渲染都是最耗費資源的。OpenGL中雖然有相關技術,但之前從未在民用級硬件中出現過。

美國電話電報公司。在L出現之前,位置轉換和燈光都需要CPU來計算。CPU越快,遊戲性能越流暢。T & ampL函數後,這兩個效果由顯卡的GPU計算,讓CPU從繁忙的工作中解脫出來。換句話說,有T &;l顯卡,使用DirectX 7.0,即使沒有高速CPU也能流暢運行3D遊戲。

DirectX 8.0

DirectX 8.0的推出引發了壹場顯卡革命。它首次引入了“像素渲染”的概念,同時擁有像素著色器和頂點著色器,體現在動態光影效果上。t&硬件T & amp與固定的光影轉換相比,VS和PS單元更加靈活,這使得GPU真正成為可編程處理器。這意味著程序員通過它們構建3D場景的難度要小得多。通過VS和PS的渲染,很容易在水面上營造出真實的動態波紋光影效果。這時,DirectX的權威終於確立了。

DirectX 9.0

2002年底,微軟發布了DirectX9.0,DirectX9中PS單元的渲染精度已經達到浮點精度,傳統的硬件T & amp;l單元也被取消了。新的VertexShader (VertexShader引擎)編程會比以前復雜很多。新的頂點著色器標準增加了進程控制和更多常數,每個程序的著色指令數量增加到1024。

PS 2.0具有完全可編程的架構,可以即時計算紋理效果並動態映射紋理,不占用內存。理論上,它可以無限提高紋理貼圖的分辨率。另外,PS1.4只能支持28條硬件指令,同時操作6個素材,而PS2.0可以支持160條硬件指令,同時操作16個素材。新的高精度浮點數據規範可以使用多個紋理圖,可操作的指令個數可以任意長,可以輕松實現膠片級的顯示效果。

通過增加頂點程序的靈活性,VS 2.0顯著提升了舊版本(DirectX8)的VS性能。對於新的控制指令,可以用通用程序代替以前專用的單獨著色程序,效率提高很多倍。增加循環作業指令,減少工作時間,提高加工效率;擴展著色指令的數量從128增加到256。

增加浮點數據的處理功能,過去只能處理整數,提高渲染精度,使最終處理的色彩格式達到電影水平。它突破了之前限制PC圖形圖像質量的數學精度障礙,每條渲染管道都升級到了128浮點顏色,讓遊戲程序員更容易創造出更漂亮的效果,也更容易讓程序員編程。

顯卡支持的DirectX版本已經成為評價顯卡性能的標準。用戶可以從顯卡支持哪個版本的DirectX來區分顯卡的性能,從而選擇適合自己的顯卡產品。

  • 上一篇:編程編號1
  • 下一篇:美術生畢業後就業方向如何
  • copyright 2024編程學習大全網