金年会 金字招牌诚信至上,金年会 金字招牌诚信至上,金年会 金字招牌诚信至上,金年会 金字招牌诚信至上

 找回密碼
 注冊

QQ登錄

只需一步,快速開(kāi)始

查看: 839|回復: 1
打印 上一主題 下一主題

[分享] DirectX并不是一個(gè)單純的圖形API,它是由微軟公司開(kāi)發(fā)的用途廣泛的API

跳轉到指定樓層
1#
gfjghj6 發(fā)表于 2013-7-13 11:13:24 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式 來(lái)自 中國福建福州

馬上注冊,結交更多好友,享用更多功能。

您需要 登錄 才可以下載或查看,沒(méi)有帳號?注冊

x
DirectX并不是一個(gè)單純的圖形API,它是由微軟公司開(kāi)發(fā)的用途廣泛的API,它包含有Direct Graphics(Direct 3D+Direct Draw)、Direct Input、Direct Play、Direct Sound、Direct Show、Direct Setup、Direct Media Objects等多個(gè)組件,它提供了一整套的多媒體接口方案。只是其在3D圖形方面的優(yōu)秀表現,讓它的其它方面顯得暗淡無(wú)光。DirectX開(kāi)發(fā)之初是為了彌補Windows 3.1系統對圖形、聲音處理能力的不足,而今已發(fā)展成為對整個(gè)多媒體系統的各個(gè)方面都有決定性影響的接口。

DirectX 1.0
第一代的DirectX很不成功,推出時(shí)眾多的硬件均不支持,當時(shí)基本都采用專(zhuān)業(yè)圖形API-OpenGL,缺乏硬件的支持成了其流行的最大障礙。
DirectX 1.0版本是第一個(gè)可以直接對硬件信息進(jìn)行讀取的程序。uggheres.com它提供了更為直接的讀取圖形硬件的性能(比如:顯示卡上的塊移動(dòng)功能)以及基本的聲音和輸入設備功能(函數),使開(kāi)發(fā)的游戲能實(shí)現對二維(2D)圖像進(jìn)行加速。這時(shí)候的DirectX不包括現在所有的3D功能,還處于一個(gè)初級階段。

DirectX 2.0
DirectX 2.0在二維圖形方面做了些改進(jìn),增加了一些動(dòng)態(tài)效果,采用了Direct 3D的技術(shù)。這樣DirectX 2.0與DirectX 1.0有了相當大的不同。在DirectX 2.0中,采用了“平滑模擬和RGB模擬”兩種模擬方式對三維(3D)圖像進(jìn)行加速計算的。DirectX 2.0同時(shí)也采用了更加友好的用戶(hù)設置程序并更正了應用程序接口的許多問(wèn)題。從DirectX 2.0開(kāi)始,整個(gè)DirectX的設計架構雛形就已基本完成。

DirectX 3.0
DirectX 3.0的推出是在1997年最后一個(gè)版本的Windows95發(fā)布后不久,此時(shí)3D游戲開(kāi)始深入人心,DirectX也逐漸得到軟硬件廠(chǎng)商的認可。97年時(shí)應用程序接口標準共有三個(gè),分別是專(zhuān)業(yè)的OpenGL接口,微軟的DirectX D接口和3DFX公司的Glide接口。而那時(shí)的3DFX公司是最為強大的顯卡制造商,它的Glide接口自然也受到最廣泛的應用,但隨著(zhù)3DFX公司的沒(méi)落,Voodoo顯卡的衰敗,Glide接口才逐漸消失了。

DirectX 3.0是DirectX 2.0的簡(jiǎn)單升級版,它對DirectX 2.0的改動(dòng)并不多。包括對DirectSound(針對3D聲音功能)和DirectPlay(針對游戲/網(wǎng)絡(luò ))的一些修改和升級。DirectX 3.0集成了較簡(jiǎn)單的3D效果,還不是很成熟。

DirectX 5.0
微軟公司并沒(méi)有推出DirectX 4.0,而是直接推出了DirectX 5.0。此版本對Direct3D做出了很大的改動(dòng),加入了霧化效果、Alpha混合等3D特效,使3D游戲中的空間感和真實(shí)感得以增強,還加入了S3的紋理壓縮技術(shù)。
同時(shí),DirectX 5.0在其它各組件方面也有加強,在聲卡、游戲控制器方面均做了改進(jìn),支持了更多的設備。因此,DirectX發(fā)展到DirectX 5.0才真正走向了成熟。此時(shí)的DirectX性能完全不遜色于其它3D API,而且大有后來(lái)居上之勢。

DirectX 6.0
DirectX 6.0推出時(shí),其最大的競爭對手之一Glide,已逐步走向了沒(méi)落,而DirectX則得到了大多數廠(chǎng)商的認可。DirectX 6.0中加入了雙線(xiàn)性過(guò)濾、三線(xiàn)性過(guò)濾等優(yōu)化3D圖像質(zhì)量的技術(shù),游戲中的3D技術(shù)逐漸走入成熟階段。

DirectX 7.0
DirectX 7.0最大的特色就是支持T&L,中文名稱(chēng)是“坐標轉換和光源”。3D游戲中的任何一個(gè)物體都有一個(gè)坐標,當此物體運動(dòng)時(shí),它的坐標發(fā)生變化,這指的就是坐標轉換;3D游戲中除了場(chǎng)景+物體還需要燈光,沒(méi)有燈光就沒(méi)有3D物體的表現,無(wú)論是實(shí)時(shí)3D游戲還是3D影像渲染,加上燈光的3D渲染是最消耗資源的。雖然OpenGL中已有相關(guān)技術(shù),但此前從未在民用級硬件中出現。

在T&L問(wèn)世之前,位置轉換和燈光都需要CPU來(lái)計算,CPU速度越快,游戲表現越流暢。使用了T&L功能后,這兩種效果的計算用顯示卡的GPU來(lái)計算,這樣就可以把CPU從繁忙的勞動(dòng)中解脫出來(lái)。換句話(huà)說(shuō),擁有T&L顯示卡,使用DirectX 7.0,即使沒(méi)有高速的CPU,同樣能流暢的跑3D游戲。

DirectX 8.0
DirectX 8.0的推出引發(fā)了一場(chǎng)顯卡革命,它首次引入了“像素渲染”概念,同時(shí)具備像素渲染引擎(Pixel Shader)與頂點(diǎn)渲染引擎(Vertex Shader),反映在特效上就是動(dòng)態(tài)光影效果。同硬件T&L僅僅實(shí)現的固定光影轉換相比,VS和PS單元的靈活性更大,它使GPU真正成為了可編程的處理器。這意味著(zhù)程序員可通過(guò)它們實(shí)現3D場(chǎng)景構建的難度大大降低。通過(guò)VS和PS的渲染,可以很容易的寧造出真實(shí)的水面動(dòng)態(tài)波紋光影效果。此時(shí)DirectX的權威地位終于建成。

DirectX 9.0
2002年底,微軟發(fā)布DirectX9.0。DirectX 9中PS單元的渲染精度已達到浮點(diǎn)精度,傳統的硬件T&L單元也被取消。全新的VertexShader(頂點(diǎn)著(zhù)色引擎)編程將比以前復雜得多,新的VertexShader標準增加了流程控制,更多的常量,每個(gè)程序的著(zhù)色指令增加到了1024條。

PS 2.0具備完全可編程的架構,能對紋理效果即時(shí)演算、動(dòng)態(tài)紋理貼圖,還不占用顯存,理論上對材質(zhì)貼圖的分辨率的精度提高無(wú)限多;另外PS1.4只能支持28個(gè)硬件指令,同時(shí)操作6個(gè)材質(zhì),而PS2.0卻可以支持160個(gè)硬件指令,同時(shí)操作16個(gè)材質(zhì)數量,新的高精度浮點(diǎn)數據規格可以使用多重紋理貼圖,可操作的指令數可以任意長(cháng),電影級別的顯示效果輕而易舉的實(shí)現。

VS 2.0通過(guò)增加Vertex程序的靈活性,顯著(zhù)的提高了老版本(DirectX8)的VS性能,新的控制指令,可以用通用的程序代替以前專(zhuān)用的單獨著(zhù)色程序,效率提高許多倍;增加循環(huán)操作指令,減少工作時(shí)間,提高處理效率;擴展著(zhù)色指令個(gè)數,從128個(gè)提升到256個(gè)。

增加對浮點(diǎn)數據的處理功能,以前只能對整數進(jìn)行處理,這樣提高渲染精度,使最終處理的色彩格式達到電影級別。突破了以前限制PC圖形圖象質(zhì)量在數學(xué)上的精度障礙,它的每條渲染流水線(xiàn)都升級為128位浮點(diǎn)顏色,讓游戲程序設計師們更容易更輕松的創(chuàng )造出更漂亮的效果,讓程序員編程更容易。

顯卡所支持的DirectX版本已成為評價(jià)顯卡性能的標準,從顯卡支持什么版本的DirectX,用戶(hù)就可以分辨出顯卡的性能高低,從而選擇出適合于自己的顯卡產(chǎn)品。

2#
jiangqiang 發(fā)表于 2013-7-16 08:39:52 | 只看該作者 來(lái)自 中國浙江
好貼  讓我長(cháng)見(jiàn)識了!來(lái)自: Android客戶(hù)端
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規則

快速回復 返回頂部 返回列表
隆安县| 茌平县| 万全县| 康乐县| 天峻县| 兖州市| 西丰县| 邵阳县| 富宁县| 沙湾县| 宝坻区| 珲春市| 海林市| 保定市| 剑川县| 宁乡县| 兴和县| 灵台县| 南京市| 南溪县| 临猗县| 遂川县| 天等县| 陆良县| 新竹县| 宣化县| 嵩明县| 谷城县| 邵东县| 上犹县| 大同市| 沙坪坝区| 革吉县| 上犹县| 昭苏县| 张家港市| 梓潼县| 庄浪县| 越西县| 寿光市| 张家港市|