As we most likely know, the next version of Steel Beasts will use OpenGL instead of DirectX. I've looked around, and after thinking about it, I believe that it makes sense. DirectX 11 may be backwards compatible with DirectX 9 hardware, but not Windows XP, which to my knowledge the majority of military computers running Steel Beasts Pro still use. OpenGL ensures compatibility with Windows XP and every Windows version that has come out since, securing the future of the simulator in its primary work environment.
Or does it? OpenGL has a troubled past. For a time, it lagged behind DirectX. Microsoft's dirty tactics didn't help, but the rise of DirectX fueled a vicious cycle which led to more programmers being available for DirectX and more developers using it, which led to more programs using it, which led to graphics card drivers being improved, which led to more developers using DirectX and more programmers being needed. What Microsoft's haters miss is that Microsoft had help from OpenGL's own mistakes, the most prominent being the OpenGL 3.0 debacle. Khronos Group, the consortium that develops OpenGL, had promised that OpenGL 3.0 would be a radical upgrade from OpenGL 2.1. At first, they kept developers informed. But then, they suffered delays and instituted a media blackout. Thus, they did not tell anyone about what was to come. When OpenGL 3.0 finally arrived, almost all of the major improvements had been ripped out, and a dependency on DirectX 10 capable hardware had been inserted. Developers rioted at what they saw as lies about major improvements and dependency placed on hardware that would only be used on the bad, not-yet-revised Windows Vista, and it proved a fatal blow, as DirectX 11 made its rise after the failure that was DirectX 10.
In my looking around, I came to a disturbing realization: when Ssnake said that
ZitatWhat may not noticeably affect the frame rate on one machine may have a bigger impact on another. So we need to find a balance, obviously.
he did not mention that this variation in performance was because of this switch to OpenGL. Given his lack of competence in computer matters, I'm inclined to believe that this omission was accidental. What do I mean by the variation in performance is because of OpenGL? Remember when I said that DirectX's rise resulted in improved graphics card drivers for it as the result of a vicious cycle? OpenGL's fall has resulted in the opposite cycle, and graphics card drivers being not as good with OpenGL as they are with DirectX, offsetting OpenGL's power advantage and resulting in inconsistently good performance across platforms. AMD graphics cards are the worst case of this that I know of, with one OpenGL-based graphics engine that I know of being at first completely unable to run on AMD graphics cards. The engine was improved, but AMD graphics cards still cause more bugs than Nvidia cards.
Personally, I think Steel Beasts should have stuck with DirectX 9 until enough military computers upgraded to Windows 7 to justify updating the graphics engine to DirectX 11. At least Ssnake would not have had the opportunity to demonstrate dissonance by declaring that "we can't ignore the improved capabilities of modern graphics cards" while eSimGames demonstrated that deliberate ignorance (for a good reason: to maintain compatibility with old hardware) by using DirectX 9.0c, which has been around since 2006.