我的电脑最多支持DirectX 10,但我对DirectX编程非常感兴趣并意识到我应该学习尖端技术。我也意识到DirectX 11具有功能级别,因此我可以在计算机上使用DirectX 11进行编程。我的问题是,在购买新计算机之前在DirectX 10中编程是否有意义,或者我应该使用具有功能级别的DirectX 11?我是否能够在我的计算机上测试DirectX 11功能(软件是一种选择,但速度超慢)?在这种情况下,请告诉我可能的选择。
答案 0 :(得分:2)
您可以在Windows 10,Windows 8.x,Windows 7或Windows Vista Service Pack 2 + KB971644上使用Direct3D 11.0 API进行编程。这包括Direct3D 11 API以及对功能级别11.0,10.1,10.0,9.3,9.2和9.1的支持。
您可以在Windows 10,Windows 8.x和Windows 7 Service Pack 1 + KB2670838上对Direct3D 11.1 API进行编程。这包括Direct3D 11.1 API,但仅在Windows 8.x和Windows 10上支持功能级别11.1。
您可以在Windows 8.1或Windows 10上针对Direct3D 11.2 API进行编程。
您可以在Windows 10上使用Direct3D 11.3或Direct3D 12.0 API以及功能级别12.0和12.1。
如果您的物理硬件仅支持Direct3D 10.0,则实际上只能使用硬件Feature Level 10.0,9.3,9.2和/或9.1功能。根据您的硬件和驱动程序,您可能也可能不支持该部分的DirectCompute 4.0。
目前根本没有理由使用Direct3D 10 API,Direct3D 11的支持代码比Direct3D 10要多得多。请参阅Living without D3DX和Getting Started with Direct3D 11
更新:添加了有关Windows 10的说明。