Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
DirectX
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==Development history== In late 1994, Microsoft was ready to release [[Windows 95]], its next [[operating system]]. An important factor in its value to consumers was the programs that would be able to run on it. Microsoft employee [[Alex St. John]] had been in discussions with various game developers asking how likely they would be to bring their [[MS-DOS]] games to Windows 95, and found the responses mostly negative, since [[video game programmer|programmers]] had found that the Windows environment did not provide the necessary features which were available under MS-DOS using [[BIOS]] routines or direct hardware access.<ref>{{Cite book |last=DeMaria |first=Rusel |title=GAME OF X V.2 |publisher=[[CRC Press]] |year=2019 |chapter=11. The Manhattan Project |quote=Windows needs to support; ... β Page flipping β Vertical blank synchronization β Tight sound mixing β Tight synchronization of sound and video events β Raw blting performance β Ability to set graphic mode ...}}</ref> There were also strong fears of compatibility; a notable case of this was from ''[[Disney's Animated Storybook|Disney's Animated Storybook: The Lion King]]'' which was based on the [[WinG]] programming interface.<ref>{{Cite web |last=Kelly |first=Christopher |date=June 1, 1995 |title=Video for Windows and WinG |url=https://www.drdobbs.com/windows/video-for-windows-and-wing/184409696 |access-date=2022-08-09 |publisher=[[Dr. Dobb's Journal]] |quote=Lion King software, for example, is a WinToon app. ... Like WinToon, this example uses WinG for drawing on the DIB.}}</ref> Due to numerous incompatible graphics drivers from new [[Compaq]] computers that were not tested with the WinG interface which came bundled with the game, it crashed so frequently on many desktop systems that parents had flooded [[Walt Disney Computer Software|Disney]]'s call-in help lines.<ref name="pcgamer history">{{cite magazine | url = https://www.pcgamer.com/history-direct-x-windows-microsoft/ | title = How DirectX defined PC gaming... with help from a shotgun-toting Bill Gates | first = Samual | last = Willetts | date = July 27, 2020 | access-date = December 7, 2020 | magazine = [[PC Gamer]] }}</ref><ref name="shacknews xbox p1ch8">{{cite web | url = https://www.shacknews.com/article/120300/bet-on-black-how-microsoft-and-xbox-changed-pop-culture-part-1 | title = Bet on Black: How Microsoft and Xbox Changed Pop Culture, Part 1 - Chapter 8: Power of X | first = David | last = Craddock | date = November 14, 2020 | access-date = December 7, 2020 | work = [[Shacknews]] }}</ref> St. John recognized the resistances for game development under Windows would be a limitation, and recruited two additional engineers, Craig Eisler and [[Eric Engstrom]], to develop a better solution to get more programmers to develop games for Windows. The project was codenamed the Manhattan Project, like the [[Manhattan Project|World War II project of the same name]], and the idea was to displace the Japanese-developed video game consoles with personal computers running Microsoft's operating system.<ref name="pcgamer history"/> It had initially used the [[radiation symbol]] as its logo but Microsoft asked the team to change the logo.<ref name="pcgamer history"/> Management did not agree to the project as they were already writing off Windows as a gaming platform, but the three committed towards this project's development.<ref name="shacknews xbox p1ch8"/> Their rebellious nature led [[Brad Silverberg]], the senior vice president of Microsoft's office products, to name the trio the "Beastie Boys".<ref name="wsj engstrom obit">{{cite web | url = https://www.wsj.com/articles/microsoft-misfit-helped-lead-company-into-game-market-11607537700?mod=hp_lead_pos12#comments_sector | title= Microsoft Misfit Helped Lead Company Into Game Market | first= James | last= Haggarty | date= December 9, 2020 | access-date = December 9, 2020 | work =[[The Wall Street Journal]] }}</ref> Most of the work by the three was done among other assigned projects starting near the end of 1994.<ref name="shacknews xbox p1ch8"/> Within four months and with input from several hardware manufacturers, the team had developed the first set of [[application programming interface]]s (APIs) which they presented at the 1995 [[Game Developers Conference]].<ref name="shacknews xbox p1ch8"/> The SDK included libraries implementing DirectDraw for bit-mapped graphics,<ref>{{Cite book |title=DirectDraw Application Programming Interface |publisher=Microsoft |date=April 20, 1995 |chapter=Introduction}}</ref> DirectSound for audio,<ref>{{Cite book |title=DirectSound Application Programming Interface |publisher=Microsoft |date=April 20, 1995 |chapter=Introduction}}</ref> and DirectPlay for communication between players over a network.<ref>{{Cite book |title=DirectPlay Application Programming Interface |publisher=Microsoft |date=April 20, 1995 |chapter=Introduction}}</ref> Furthermore, an extended joystick API already present in Windows 95 was documented for the first time as DirectInput,<ref>{{Cite book |title=DirectInput Application Programming Interface |publisher=Microsoft |date=April 20, 1995 |chapter=Chapter 3: Joystick API Reference}}</ref> while a description of how to implement the immediate start of the installation procedure of a software title after inserting its CD-ROM, a feature called AutoPlay, was also part of the SDK.<ref>{{Cite book |title=Building AutoPlay-Enabled CD-ROM Titles and Games |publisher=Microsoft |date=November 1, 1994 |chapter=What is AutoPlay?}}</ref> The "Direct" part of the library was so named as these routines bypassed existing core Windows 95 routines and accessed the computer hardware only via a [[Hardware abstraction|hardware abstraction layer]] (HAL).<ref>{{Cite book |title=DirectDraw Application Programming Interface |publisher=Microsoft |date=April 20, 1995 |chapter=Architectural Overview}}</ref> Though the team had named it the "Game SDK" ([[software development kit]]), the name "DirectX" came from one journalist that had mocked the naming scheme of the various libraries. The team opted to continue to use that naming scheme and call the project DirectX.<ref name="pcgamer history"/> The first version of DirectX was released in September 1995 as the Windows Game SDK. Its DirectDraw component was the [[Windows API|Win32]] replacement for the DCI<ref>{{cite web|url=http://stason.org/TULARC/pc/video-faq/54-What-is-DCI.html|title=54 What is DCI?|work=stason.org}}</ref> and WinG APIs for [[Windows 3.1]].<ref>{{cite magazine|first=Robin|last=Raskin|date=August 1995|title=Pity the Poor Developer|url=https://books.google.com/books?id=aS7TOePnRDAC&dq=intel+microsoft+video+for+windows+dci+wing&pg=PA30|access-date=2022-08-07|magazine=[[PC Magazine]]}}</ref> DirectX allowed all versions of Microsoft Windows, starting with Windows 95, to incorporate high-performance multimedia. Eisler wrote about the frenzy to build DirectX 1 through 5 in his blog.<ref>[https://web.archive.org/web/20150812070348/http://craig.theeislers.com/2006/02/20/directx-then-and-now-part-1/ Craig Eisler's blog post about the frenzy to build DirectX 1 through 5] on craig.theeislers.com</ref> To get more developers on board DirectX, Microsoft approached [[id Software]]'s [[John Carmack]] and offered to port ''[[Doom (1993 video game)|Doom]]'' and ''[[Doom 2]]'' from MS-DOS to DirectX, free of charge, with id retaining all publishing rights to the game. Carmack agreed, and Microsoft's [[Gabe Newell]] led the porting project. The first game was released as ''Doom 95'' in August 1996, the first published DirectX game. Microsoft promoted the game heavily with [[Bill Gates]] appearing in ads for the title.<ref name="pcgamer history"/> DirectX 2.0 became a built-in component of Windows with the releases of [[Windows 95]] OSR2 and [[Windows NT 4.0]] in mid-1996. Since Windows 95 itself was still new and few games had been released for it, Microsoft engaged in heavy promotion of DirectX to developers who were generally distrustful of Microsoft's ability to build a gaming platform in Windows. Alex St. John, the evangelist for DirectX, staged an elaborate event at the 1996 [[Game Developers Conference|Computer Game Developers Conference]] which game developer Jay Barnson described as a [[Ancient Rome|Roman]] theme, including real [[lion]]s, togas, and something resembling an indoor carnival.<ref>{{cite web |url=http://rampantgames.com/blog/2006/07/wildest-birthday-party-ever.html |archive-url=https://web.archive.org/web/20060717201712/http://www.rampantgames.com/blog/2006/07/wildest-birthday-party-ever.html |title=Tales of the Rampant Coyote |author=Jay Barnson |date=July 13, 2006 |archive-date=July 17, 2006 }}</ref> It was at this event that Microsoft first introduced [[Direct3D]], and demonstrated multiplayer ''[[MechWarrior 2|MechWarrior 2]]'' being played over the Internet. The DirectX team faced the challenging task of testing each DirectX release against an array of [[computer hardware]] and [[software]]. A variety of different graphics cards, audio cards, motherboards, CPUs, input devices, games, and other multimedia applications were tested with each beta and final release. The DirectX team also built and distributed tests that allowed the hardware industry to confirm that new hardware designs and driver releases would be compatible with DirectX. Prior to DirectX Microsoft had added [[OpenGL]] to their [[Windows NT|Windows NT]] platform.<ref>{{cite magazine|first=Michael J.|last=Miller|date=December 1994|title=System Software WINNER Microsoft Windows NT Workstation, Version 3.5|url=https://books.google.com/books?id=f3IV90zLmaEC&dq=pc+magazine+windows+nt+3.5&pg=PA120|access-date=2022-08-13|magazine =[[PC Magazine]]}}</ref> OpenGL had been designed as a cross-platform, [[Windowing system|window system]] independent software interface to graphics hardware by [[Silicon Graphics|Silicon Graphics, Inc.]] to bring 3D graphics programming into the mainstream of application programming. Besides it could also be used for 2D graphics and imaging and was controlled by the Architectural Review Board (ARB) which included Microsoft.<ref>{{Cite web |last=Kilgard |first=Mark |date=December 2008 |title=OpenGL's Design Philosophy (slide) |url=https://www.slideshare.net/Mark_Kilgard/sigraph-asia-2008-modern-opengl-presentation/14 |access-date=2022-08-14 |website=[[SlideShare]]}}</ref><ref>{{Cite book |last=Kilgard |first=Mark J. |title=OpenGL Programming for the X Window System |publisher=[[Addison-Wesley]] |year=1996 |pages=1β6}}</ref> Direct3D was intended to be a Microsoft controlled alternative to OpenGL, focused initially on game use. As 3D gaming grew game developers were discovering that OpenGL could be used effectively for game development.<ref>{{Cite web |last=Berkes |first=Otto |date=April 12, 2015 |title=DirectX |url=https://ottoberkes.wordpress.com/2015/04/12/directx |access-date=2022-08-17 |website=Otto Berkesβ weblog}}</ref> At that point a "battle" began between supporters of the cross-platform OpenGL and the Windows-only Direct3D.<ref>{{Cite web |last=Hecker |first=Chris |date=April 1997 |title=An Open Letter to Microsoft: Do the Right Thing for the 3D Game Industry |url=https://ubm-twvideo01.s3.amazonaws.com/o1/vault/GD_Mag_Archives/GDM_AprMay_1997.pdf |archive-url=https://web.archive.org/web/20210126033255/https://ubm-twvideo01.s3.amazonaws.com/o1/vault/GD_Mag_Archives/GDM_AprMay_1997.pdf |archive-date=2021-01-26 |url-status=live |access-date=2022-08-29 |website=[[Game Developer Magazine]]}}</ref> Incidentally, OpenGL was supported at Microsoft by the DirectX team. If a developer chose to use the OpenGL 3D graphics API in [[computer games]], the other APIs of DirectX besides Direct3D were often combined with OpenGL because OpenGL does not include all of DirectX's functionality (such as sound or joystick support). In a console-specific version, DirectX was used as a basis for Microsoft's [[Xbox (console)|Xbox]], [[Xbox 360]] and [[Xbox One]] [[video game console|console]] API. The API was developed jointly between Microsoft and [[Nvidia]], which developed the custom graphics hardware used by the original Xbox. The Xbox API was similar to DirectX version 8.1, but is non-updateable like other console technologies. The Xbox was code named DirectXbox, but this was shortened to Xbox for its commercial name.<ref>J. Allard, [http://www.pcpro.co.uk/news/55995/games-interview-xbox-supremo-allard-on-the-future-of-microsofts-console-part-ii.html PC Pro Interview] {{webarchive|url=https://web.archive.org/web/20071011093027/http://www.pcpro.co.uk/news/55995/games-interview-xbox-supremo-allard-on-the-future-of-microsofts-console-part-ii.html |date=2007-10-11 }}, April 2004</ref> In 2002, Microsoft released DirectX 9 with support for the use of much longer shader programs than before with pixel and vertex shader version 2.0. Microsoft has continued to update the DirectX suite since then, introducing Shader Model 3.0 in DirectX 9.0c, released in August 2004. As of April 2005, [[DirectShow]] was removed from DirectX and moved to the [[Microsoft Platform SDK]] instead. DirectX has been confirmed to be present in Microsoft's [[Windows Phone 8]].<ref>{{cite web | url=https://www.theverge.com/2012/6/20/3095150/microsoft-windows-phone-8-common-platform-directx | title=Windows Phone 8 adds DirectX, native development, easier app porting | date=June 20, 2012 | access-date=June 23, 2012}}</ref> Real-time [[ray tracing (graphics)|raytracing]] was announced as [[DirectX Raytracing|DXR]] in 2018. Support for compiling [[High-Level Shader Language|HLSL]] to [[Standard Portable Intermediate Representation|SPIR-V]] was also added in the DirectX Shader Compiler the same year.<ref>{{Cite web |date=October 23, 2018 |title=Add the HLSL-spirv cookbook. (#1618) |url=https://github.com/microsoft/DirectXShaderCompiler/commit/fe2d48b984aff24174704af62550afa9fb3f0259 |website=GitHub}}</ref>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)