对于任何图形程序员我都有一个非常苛刻的问题.
我很困惑一些游戏(如"孤岛危机")如何支持DirectX 9(在XP中)和10(在Vista中)?
到目前为止我所理解的是,如果您编写DX10应用程序,那么它只能在Vista中运行.
也许他们有2个代码库 - 一个用DX9编写,另一个用DX10编写?但这不是一个矫枉过正吗?
它们有两个渲染管道,一个使用DX9调用,另一个使用DX10调用.虽然大多数游戏引擎都可以重复使用,但API并不兼容.如果你想要一些关于如何完成不同渲染流水线的开源示例,请查看类似Ogre3d的内容,它支持OpenGL,DX9和(很快)DX10渲染.