2014-04-30

I had the opportunity to catch up with some old friends from the DirectX days recently and we had a fun retrospective debate about how the Windows gaming market might have evolved had we not started a skunk works effort to create the DirectX API.  The premise of the debate was as follows; Would the PC game market have been any different if we had NOT pursued making Windows 95 a gaming platform?  In traditional debate fashion we took opposing positions and tried to win the argument… although I generally prefer to be assigned the Devil’s advocate position I got stuck with defending our legacy which I thought would be an easy argument to win.  Their position was that Microsoft would have gotten around to focusing on gaming eventually with or without us.  To make the debate more interesting I chose an even more extreme position, which was that not only would Microsoft NEVER have pursued supporting gaming but that the market result without DirectX was actually pretty predictable despite the passage of nearly 20 years.

Winding the clock back to the dawn of the DirectX era in late 1994, Microsoft was buttoning down the final changes to ship Windows 95.  There was no more room to ad features or make changes to the OS at that point, everybody was on a bombing run to ship the OS.  Despite this moratorium on adding features to Windows 95 we persuaded key developers to add some non-features to Windows 95 that would enable the DirectX libraries shipping a year later to DISABLE OS features that obstructed gaming, thus ensuring that we could make DirectX work without relying on being able to add the features to Windows 95 Directly.  Instead we formulated the technology to ship with the games that used it and designed DirectX to DISABLE obstructive OS features.  That property of the early DirectX design was the main reason it was called DIRECTX, it enabled games to bypass the layers of Windows API’s to communicate directly with the hardware.  Without that last minute hacking to Windows 95 there was no chance that games would ever have worked on Windows 95 itself.  Microsoft never went back to Windows 95 to significantly revise it.  Windows NT was designed for enterprise applications although we did eventually manage to build DirectX 3.0 into a Windows NT release it was highly emulated and ran very poorly.  Windows NT was also still many years from becoming a consumer OS.  Although there were a number of interesting early 3D cards for the PC, they targeted DOS gaming which Windows 95 broke.  (I was responsible for leading the last minute effort to ensure that 1000 popular DOS games were compatible with the Windows 95 DOS box).  Had that work on the Windows 95 DOS box not occurred those early 3D chip companies would surely have died off.  Even if 3D ran great in Windows 95, multiplayer networking, synchronized audio, fast CD file loading, preventing memory paging and input device support was all abysmal.  Great 3D cards with terrible audio, networking support, uncontrolled memory paging and input control were NOT going to result in any great games.

Even if Microsoft had focused on gaming for Windows 98, released 3 years later, the PC game market would have been long dead and the PC game makers would have been forced to turn their efforts to the PlayStation.  Apple was on the ropes and struggling to survive.  The Internet boom was in full swing, Microsoft’s total focus was on dominating the Internet in that era and the DOJ trial was coming to split Microsoft up.  Thus the first time frame in which Microsoft might plausibly have tackled gaming as a priority would have been for Windows XP released in late 2001.  By this point in time Microsoft had given up on its own leading DOS Gaming franchises Microsoft Flight Sim and Microsoft Golf.  Microsoft’s “multimedia” title business had failed much earlier and the game industry veterans that Microsoft hired in the mid 1990′s to create games like Age of Empires and Monster Truck Madness would not have had an OS available to them to support such games.  Microsoft’s internal ambition for gaming was the proprietary Talisman 3D chip which the company intended to compete with it’s own graphic’s IHV partners with.  Since Talisman did nothing to fix the myriad networking, memory management, sound mixing and input problems inherent to making highly responsive 3D games there is little reason to believe it would have flourished in the late 1990′s on Windows 95 and would not have been likely to survive until 2001 for a major revision of media features in Windows XP to enable gaming.  That said, it is also possible to assume that even Windows XP itself WOULD NOT have been overhauled for gaming because had Microsoft taken the decision to make a Talisman based console at this point it is likely that they would have considered the PC their Enterprise platform and NOT wanted it to compete with a console for gaming market share.  Indeed Microsoft allowed DirectX and PC gaming to languish after the XBOX launch due to this sentiment.  DirectX itself, despite it’s success did not become an integral Windows API until VISTA in 2008, nearly 12 years after it’s launch.



Microsoft’s hit launch title for the Talisman based T-BOX console.

Just for fun let’s look at an alternate reality in which TALISMAN had become Microsoft’s dominant 3D strategy as Bill Gates and Nathan Mhyrvold intended… there is actually no plausible scenario in which Microsoft was going to embrace OpenGL.  Without DirectX driving gaming demand Microsoft’s interest in OpenGL would have vanished the moment SGI rolled over and licensed Windows NT.   Setting aside the unlikely odds that Microsoft would have begun recruiting game industry veterans like Stuart Moulder, Kevin Bacchus and Seamus Blackley to work on gaming and ultimately the XBOX, we have to assume that if Microsoft HAD decided to enter the console market anyway it would have been with a Talisman chip based console.  ATI would never have made 3D consumer chips for Windows and Nvidia would have died with Sega (and 3DFX) having no consumer 3D chip market to pursue in the absence of a viable PC game market.  We have only to look at the original Talisman chip feature set and documentation to guess how it would have performed against the PS/2 from Sony.

These are all fun thought exercises but I believe that there is an argument that decisively separates the history of PC gaming from all possible alternate scenarios which was the introduction of Direct3D in late 1995.  It was the introduction of Direct3D that pissed off Microsoft’s OpenGL team and motivated them to start a war with the Windows 95 team for control of consumer 3D driver architecture.  The heated and very public internal battle over control of consumer 3D did wonders to market and promote awareness of Windows as a gaming platform.  Regardless of the API differences between Direct3D and OpenGL there was an extremely important and pivotal difference between the two 3D standards.  All OpenGL driver models espoused by the ARB and by internal Microsoft teams were FLAT driver models that only allowed hardware vendors to accelerate 3D rasterization.  The Direct3D driver layer was broken into three layers, the lowest was for rasterization, the middle layer was for lighting and the top layer was for transforming 3D geometry.  The idea behind this layered architecture was to create a path for PC IHV video chip makers to have a clear path to compete with one another to accelerate more and more of the 3D graphics pipeline without running into arbitrary constraints on what they could accelerate imposed by a simple flat driver model.  The result was that Nvidia ran away with the show by quickly accelerating the entire graphics pipeline followed closely by ATI.  Had it not been for Nvidia’s early success on DirectX it is very likely that they would have failed as a company having lost their primary console partner, Sega, to the PowerVR chip.

The rapid and aggressive competition between ATI and Nvidia enabled by the layered Direct3D driver architecture quickly resulted in two huge successful consumer 3D chip giants.  In this regard the Direct3D driver model created a market trellis that ATI and Nvidia quickly climbed to become multibillion dollar PC BASED consumer 3D chip companies producing graphics chips that quickly outstripped the proprietary 3D chips made by the Japanese console makers of that era.  Interestingly the structure of the Direct3D driver model also resulted in the radically different and extremely powerful modern general purpose GPU architecture.  Without the Direct3D driver model to shape the market there is no reason to believe that modern GPU’s with their incredible super computing power would ever have evolved in the market.  Only massive market demand for PC games could fund the vast investment required to invent such a radically different chip architecture from the previously dominant CISC based chips from companies like Intel and AMD that dominated the market.  Absent a market for PC games it’s impossible to imagine how a company like Nvidia or AMD (having acquired ATI) would ever have funded the R&D required to invent such a radically different massively parallel computing paradigm as the GPU.

Inversely we actually have a pretty good idea of what Intel might have done in the absence of DirectX.  Even with the success of DirectX and Nvidia, Intel made a minimal investment in their own GPU technology and despite massive competition and market incentive to do so were never successful at producing a competitive consumer 3D chip themselves.  Intel’s most ambitious effort to do so was a project called Larabee which was an effort to create a hybrid GPU out of a few dozen “light” x86 compatible cores.  The Larabee chip FAILED to compete with consumer offerings from ATI and Nvidia and was ultimately relegated to becoming Intel’s supercomputing alternative to the GPU the XEON Phi.  The modern XEON Phi however has a fraction of the computing performance of its direct competitors from Nvidia the Kepler K40 sporting thousands of GPU cores to the modern XEON Phi’s 60.  Today as a consequence of the radical departure in chip design that Nvidia and ATI(AMD) pursued to accelerate the Direct3D driver model these chips have become the gold standard for modern scientific super computing, 3D movie making and the ubiquitous chips for all high performance gaming applications even displacing the proprietary Japanese console chips.

In short without Direct3D the world we live in today would most likely be dominated by Sony and Nintendo game consoles and Apple mobile devices.  There would have been NO World of Warcraft or any other modern MMOG’s as we know them because there would have been no viable PC market for them to evolve in.  Halo would have shipped as a Mac game in the early 2000′s and downloadable game publishing would never have evolved on the early PC dominated Internet. (Unlike Windows 95 the Mac COULD support real-time audio mixing back then which made real gaming plausible)  It may also be the case that the ubiquitous First Person Shooter game genre as pioneered by John Carmack at id software might have died off with DOS as well.

Not surprisingly the guys I had this debate with graciously conceded the argument to me after I reminded them that THEY were the ones who designed the layered Direct3D driver model that gave rise to the whole thing.

TalismanSpec Sm

TalismanSpec_sm.pdf

Version: 1.0

The original internal specification for Talisman

Languages:

English

Requirements:

PDF Reader

Date:

February 6, 2013

7.6 MiB

87 Downloads
Details...

 

The post Revisionist History appeared first on The Saint.

Show more