“DirectX”是什么東西?有什么作用?

不行吧 。
常用電腦的朋友應該對DirectX都不會感到陌生,游戲不能玩了,升級DirectX便可解決;圖片顯示效果不好,升級DirectX也可以解決問題 。很多問題都跟DirectX有關,那么這個DirectX到底起到了什么作用?為什么很多軟件都必須依賴它才可能呢?
什么是DirectX
DirectX是一種應用程序接口,它可讓以windows為平臺的游戲或多媒體程序獲得更高的執行效率,加強3d圖形和聲音效果,并提供設計人員一個共同的硬件驅動標準,讓游戲開發者不必為每一品牌的硬件來寫不同的驅動程序,也降低用戶安裝及設置硬件的復雜度 。這樣說是不是有點不太明白,其實從字面意義上說,Direct就是直接的意思,而后邊的X則代表了很多的意思,從這一點上我們就可以看出DirectX的出現就是為了為眾多軟件提供直接服務的 。
舉個例子吧,骨灰級玩家(玩游戲比較長的)在DOS下玩游戲時,可不想我們現在,安裝上就可以玩了,他們往往首先要先設置聲卡的品牌和型號,然后還要設置IRQ(中斷)、I/O(輸入于輸出)、DMA(存取模式),如果哪項設置的不對,那么游戲聲音就發不出來 。這部分的設置不僅讓玩家傷透腦筋,而且對游戲開發者來說就更頭痛了,因為為了讓游戲能夠在眾多電腦中正確運行,開發者必須在游戲制作之初,便需要把市面上所有聲卡硬件數據都收集過來,然后根據不同的 API(應用編程接口)來寫不同的驅動程序,這對于游戲制作公司來說,是很難完成的,所以說在當時多媒體游戲很少 。微軟正是看到了這個問題,為眾廠家推出了一個共同的應用程序接口——DirectX,只要這個游戲是依照Directx來開發的,不管你是什么顯卡、聲卡、統統都能玩,而且還能發揮更佳的效果 。當然,前提是你的顯卡、聲卡的驅動程序也必須支持Directx才行 。
詳解DirectX
【“DirectX”是什么東西?有什么作用?】DirectX是由很多API組成的,按照性質分類,可以分為四大部分,顯示部分、聲音部分、輸入部分和網絡部分 。
顯示部分擔任圖形處理的關鍵,分為Direct Draw(DDraw)和Direct 3D(D3D),前者主要負責2D圖像加速 。它包括很多方面:我們播放mpg、DVD電影、看圖、玩小游戲等等都是用的DDraw,你可以把它理解成所有劃線的部分都是用的DDraw 。后者則主要負責3D效果的顯示,比如CS中的場景和人物、FIFA中的人物等等,都是使用了DirectX的Direct 3D 。
聲音部分中最主要的API是DirectSound,除了播放聲音和處理混音之外,還加強了3d音效,并提供了錄音功能 。我們前面所舉的聲卡兼容的例子,就是利用了DirectSound來解決的 。

輸入部分Direct Input可以支持很多的游戲輸入設備,它能夠讓這些設備充分發揮最佳狀態和全部功能 。除了鍵盤和鼠標之外還可以連接手柄、搖桿、模擬器等 。
網絡部分DirectPlay主要就是為了具有網絡功能游戲而開發的,提供了多種連接方式,TPC/IP,IPX,Modem,串口等等,讓玩家可以用各種連網方式來進行對戰,此外也提供網絡對話功能及保密措施 。
本文只是讓廣大的電腦愛好者初步了解DirectX,知道DirectX是什么,在電腦中起到什么作用,對于它的深入研究,那是開發程序者們的事了 。
DirectX并不是一個單純的圖形API,它是由微軟公司開發的用途廣泛的API,它包含有Direct Graphics(Direct 3D+Direct Draw)、Direct Input、Direct Play、Direct Sound、Direct Show、Direct Setup、Direct Media Objects等多個組件,它提供了一整套的多媒體接口方案 。只是其在3D圖形方面的優秀表現,讓它的其它方面顯得暗淡無光 。DirectX開發之初是為了彌補Windows 3.1系統對圖形、聲音處理能力的不足,而今已發展成為對整個多媒體系統的各個方面都有決定性影響的接口 。
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技術逐漸走入成熟階段 。

推薦閱讀