今天,Mesa開源顯卡驅動架構迎來了也許是最為有趣、最為重要的一個Gallium3D狀態追
蹤器(State Tracker)。通過它,微軟DirectX 10/11 API終於真正投入了Linux的懷抱。
Luca Barbieri宣佈,他已經在Gallium3D驅動中增加了一個名為「d3d1x」的狀態追蹤器
,籍此實現了對Direct3D 10/11 COM API的部署。雖然還只是一個很不成熟的初期版本,
但已經可以正常工作,能夠運行一些DX10/11紋理演示程序。
這種做法自然不同於簡單地將Direct3D調用翻譯成OpenGL指令,就像Wine現在做得那樣,
而是在Gallium3D、TGSI中原生實現了Direct3D 10/11,讓顯卡驅動和硬件得以直接對話
。當然,這一切都是免費開源的!
更令人激動的是,AMD fglrx、NVIDIA官方顯卡驅動也都能得到支持,並且並不會很複雜
。得益於Direct3D 10/11的精妙設計和與Gallium的密切關係,這種做法並不會導致明顯
的延遲,維護也非常方便,用戶可以更簡單地在官方驅動、Gallium開源驅動之間切換。
這也為非Windows平台上的圖形編程提供了OpenGL之外的另一種選擇,特別是Linux和其他
免費開源系統上。優秀的設計讓Direct3D 10/11 API要比OpenGL好得多,支持所需的代碼
和開發時間也少得多,確切地說是大約26000行代碼。
至於Wine如何調用這個狀態追蹤器,目前還沒有公佈任何DLL,不過Luca說這應當很容易
實現。迄今為止,Wine仍然只能支持到DX10,實現DX11還很遙遠。
VMware此前也曾開發了一個Direct3D狀態追蹤器,但只能支持到DX9、並不開源、僅面向
Windows Gallium3D。
詳細見此:
http://ppt.cc/SIr0
http://news.mydrivers.com/1/175/175666.htm
--
蹤器(State Tracker)。通過它,微軟DirectX 10/11 API終於真正投入了Linux的懷抱。
Luca Barbieri宣佈,他已經在Gallium3D驅動中增加了一個名為「d3d1x」的狀態追蹤器
,籍此實現了對Direct3D 10/11 COM API的部署。雖然還只是一個很不成熟的初期版本,
但已經可以正常工作,能夠運行一些DX10/11紋理演示程序。
這種做法自然不同於簡單地將Direct3D調用翻譯成OpenGL指令,就像Wine現在做得那樣,
而是在Gallium3D、TGSI中原生實現了Direct3D 10/11,讓顯卡驅動和硬件得以直接對話
。當然,這一切都是免費開源的!
更令人激動的是,AMD fglrx、NVIDIA官方顯卡驅動也都能得到支持,並且並不會很複雜
。得益於Direct3D 10/11的精妙設計和與Gallium的密切關係,這種做法並不會導致明顯
的延遲,維護也非常方便,用戶可以更簡單地在官方驅動、Gallium開源驅動之間切換。
這也為非Windows平台上的圖形編程提供了OpenGL之外的另一種選擇,特別是Linux和其他
免費開源系統上。優秀的設計讓Direct3D 10/11 API要比OpenGL好得多,支持所需的代碼
和開發時間也少得多,確切地說是大約26000行代碼。
至於Wine如何調用這個狀態追蹤器,目前還沒有公佈任何DLL,不過Luca說這應當很容易
實現。迄今為止,Wine仍然只能支持到DX10,實現DX11還很遙遠。
VMware此前也曾開發了一個Direct3D狀態追蹤器,但只能支持到DX9、並不開源、僅面向
Windows Gallium3D。
詳細見此:
http://ppt.cc/SIr0
http://news.mydrivers.com/1/175/175666.htm
--
All Comments