2012-03-02 22 views

回答

1

是有效是參照驅動器做什麼。特別是它的存在,這樣的硬件渲染可以針對它進行比較。如果硬件渲染做es不等於引用,那麼這可以指示驅動程序錯誤(或「優化」)。

據我所知,不幸的是沒有OpenGL的參考驅動程序。

+0

我只是在考慮是否將OpenGL或DirectX用於項目。正如我在舊的硬件,那麼我想這意味着OpenGL是.. – Mat 2012-03-02 11:06:11

+0

@Mat:您可以使用DX9兼容的硬件與DX11這是很好的。不過,如果你願意,也可以編寫一個OpenGL1.1應用程序。如果你想使用更新的功能,那麼你最好使用WARP設備並使用軟件渲染路線。 – Goz 2012-03-02 11:10:29

+0

WARP支持所有的Direct3D功能嗎?我想寫一個使用RWBuffer功能的應用程序,它需要ShaderLevel5 - 我在DirectX 10.1上硬件 – Mat 2012-03-02 11:18:16

0

Mesa3d有一個軟件光柵器。他們最近增加了GL 3.0支持。

1

這是否意味着我可以開發和測試(不是性能,只是視覺效果)一個Direct3D 11應用程序,包括任何舊硬件上的華麗ShaderLevel5東西?

是的。但是,您應該期望絕對可怕的表現。對於複雜像素着色器(directx 9參考設備),您可以獲得大約1幀每分鐘,並且可能需要比此更長的時間。不用說,相同的着色器可以通過硬件加速實時工作。參考設備不是爲了提高性能而製作的,如果我沒有記錯的話,DirectX SDK指出(某處)參考設備的主要目的是讓開發人員看到他們的場景是否應該如此,並且沒有意外的驅動程序錯誤。

另一個問題是,如果您運行的是winxp,則不會有DirectX 10或11,參考設備。

OpenGL有等價物嗎?

不,最近的事情是mesa3d,但它不是OpenGL認證的。 1..2年前,當涉及GLSL着色器時,它可能會顯示非常不同的圖像。它也可能在具有流量控制的着色器上崩潰。自那以後我沒有用過它。然而,在沒有GLSL着色器的情況下使用時,mesa3d速度非常快,可與OpenGL相媲美,並且在DirectX 9中參考設備速度明顯更快。