以前部門老大叫我查找有關Direct3D使用軟件渲染的方法,因而我找到了D3D驅動的類型,並整理以下工具
typedef enum D3D_DRIVER_TYPE { D3D_DRIVER_TYPE_UNKNOWN, D3D_DRIVER_TYPE_HARDWARE, D3D_DRIVER_TYPE_REFERENCE, D3D_DRIVER_TYPE_NULL, D3D_DRIVER_TYPE_SOFTWARE, D3D_DRIVER_TYPE_WARP } ;
1,D3D_DRIVER_TYPE_UNKNOWN性能
這個驅動類型不知道。測試
(怎麼用,用在什麼地方,都不知道)spa
2,D3D_DRIVER_TYPE_HARDWARE設計
一個硬件驅動程序,在硬件中實現Direct3D功能。 這是你應該在Direct3D應用程序中使用的首要驅動程序,由於它提供了最佳性能。 硬件驅動程序使用硬件加速(在支持的硬件上),但也可使用軟件來管理硬件不支持的部分管道。 此驅動程序類型一般稱爲硬件抽象層或HAL。調試
(硬件驅動程序首選)blog
3,D3D_DRIVER_TYPE_REFERENCE資源
一個參考驅動程序,是支持每一個Direct3D功能的軟件實現。 參考驅動器的設計是爲了精度而非速度,所以速度慢但準確。 驅動程序的光柵化器部分儘量使用特殊的CPU指令,但它不適用於零售應用程序; 僅用於功能測試,功能演示,調試或驗證其餘驅動程序中的錯誤。 此驅動程序的參考設備由Windows SDK 8.0或更高版本安裝,僅用做開發目的的調試輔助工具。 該驅動程序能夠稱爲REF驅動程序,參考驅動程序或參考光柵化程序。開發
(軟件驅動程序,精度高但速度慢)class
4,D3D_DRIVER_TYPE_NULL
一個無效的驅動程序,它是沒有渲染功能的參考驅動程序。 此驅動程序一般用於調試非呈現API調用,不適用於零售應用程序。 此驅動程序由DirectX SDK安裝。
(起調試做用)
5,D3D_DRIVER_TYPE_SOFTWARE
一個軟件驅動程序,是一個徹底用軟件實現的驅動程序。 因爲其性能很是低,所以軟件實現不適用於高性能應用程序。
(軟件驅動程序,性能低)
6,D3D_DRIVER_TYPE_WARP
WARP驅動程序,是一種高性能軟件光柵化程序。 光柵化器支持功能級別9_1到10_1級,具備高性能軟件實現。
注意:
(軟件驅動程序,性能高)
以上整理了六種Direct3D的驅動類型,咱們能夠看出
1,若是要用硬件驅動的話,首選D3D_DRIVER_TYPE_HARDWARE;
2,若是要用軟件驅動的話,分如下三種
例如: