The Direct3D vs. OpenGL debate that's currently rocking the PC games
industry is getting hotter every day and there are two interesting
developments today: First, Microsoft is now listing id, makers of Quake, as
a "Direct3D software partner" despite the fact that they've steadfastly
refused to support it. Todd Hollenshead, id's CEO has this to say about
the "D3D partnership":
"For the record, we are NOT a D3D partner with Microsoft. We have been
listed on this site for several weeks, in spite of mail I have sent them
requesting a correction."
Interestingly, Microsoft last week demonstrated a version of GLQuake (a
version of Quake specially modified to run on OpenGL 3D accelerator video
cards) running faster using Direct3D than OpenGL. Supposedly, a Microsoft
summer intern, with no prior experience in Direct3D, had written a wrapper
in only three weeks that intercepts the calls from Quake for OpenGL and
converts them to Direct3D API calls.
Microsoft claimed that GLQuake ran 1 Frame Per Second (FPS) slower with the
DirectX 5.0 version of Direct3D than the original GLQuake on a 3Dfx card
(this is the card most GLQuake players use). However, using the nvidia RIVA
128 chip, it runs 1 FPS faster. Microsoft stated that GLQuake uses 50 of
the 360 calls in OpenGL. The intern was introduced to a hushed crowd,
stood up, and received a loud ovation. Microsoft claims that developers
have the opportunity to run their games "on lots of installed base" using
this technique. They also stated that developers can now create games that
will run "on par or faster than OpenGL [versions]."
So how does John Carmack, id's programming guru, feel about this? Not too
good, actually. He claims that Microsoft put an ugly spin on the
presentation.
"The 'Runs faster on D3D' headline is real bullshit," Carmack comments. In
the body of the text [describing the new API], it admits that it ran
slightly slower on identical hardware, but slightly faster on different
hardware (the unreleased nvidia RIVA chipset is indeed faster than 3dfx in
many cases). That was misleading journalism."
"In any case, the D3D/OpenGL argument hasn't been about speed, but about
usability, robustness, and portability," according to Carmack.
Unquestionably, D3D has gotten a lot better with DX5 and DrawPrimitive, but
it still isn't the best solution. Nvidia is going to have OpenGL support,
so D3D still doesn't offer us any other viable platforms. All the fast
cards will have OpenGL support, and the other cards couldn't run Quake
anyway. They could have run their D3D emulator on an S3 Virge for a crowd-
pleasing 5 FPS demo. The apples to oranges headlines could have then read
'OpenGL five times as fast as D3D!'."
id CEO Todd Hollenshead is also upset with Microsoft's demonstration.
"One of the oldest 'spin-doctor' tricks in the books is 'when you can't
beat your opponent's argument, simply change the subject.' This is exactly
what Microsoft has done in the publicity concerning their conference. It is
clearly an attempt to dupe the public and undermine Carmack's credibility
by having an 'intern' work on the D3D conversion and then crow about FPS
performance while using incomparable hardware. This debate is much deeper
than FPS, but the D3D guys are shrewdly looking for a soundbite they can
sell to the public. I, for one, haven't been fooled."
Meanwhile, Alex St. John, the former Microsoft games evangelist, is now
going to write a monthly column for BootNet. As
promised, Alex has delivered his open letter to the PC gaming industry.
Alex reports that he was indeed fired from Microsoft for comments he made
via e-mail to Bill Gates and Paul Maritz.
"Yes, I was indeed escorted from my building Tuesday afternoon June 24th
around 12:15 in the afternoon, roughly four years and six months after
joining the [Borg] collective...It was a layer to middle managers on the
thread between myself and these guys who made the decision based largely
on how stung they were probably feeling from my choice of verbiage."
"As many of you know, my last stand was in the area of 3D. For the record;
In my opinion John Carmack is a God, and has my complete respect," Alex
comments in his open letter. "The longer I've known him, the more he has
impressed me. In theory John is absolutely right about [OpenGL], but in
practice it will never [happen] for reasons that have little to do with
technical purity, and a lot to do with cold market forces, politics, and
NDA's.
According to Alex, the original DirectX beta cost him his marriage since
he was practically living at the Microsoft Campus at the time. The DirectX
"dream" was originally pioneered by two programmers from the Developer
Relations Group who then built DirectX versions 1-3. Then, Microsoft
"re-orged" the technology in their infamous Internet refocusing and turned
DirectX over to another (Internet-related) group. Alex says that was the
beginning of the end for the usefulness of DirectX.
"I'm sorry now that I stayed long enough to see what would become of it. I
was trapped in the quandary of representing technology that was now being
built by people I had no respect for, and feeling responsible for the
enormous community of developers I had persuaded to adopt it. I stuck
around after the re-org hoping to help the new guard become as customer
focused as the old had been. It appeases my sense of guilt about all of
this immensely to know that I died trying."
Alex even has a sense of humor about his firing:
"I'm not embarrassed about being fired. Like so many things I've done, it
wasn't easily accomplished. Microsoft rarely fires anybody. Great
achievements are so far between that I'm proud to count all of them."
By the way, I'd like to thank Blue's News for
tipping me (and eventually, NEWS.COM) off to this story. Blue is the
definitive source of Quake and 3D gaming news on the Web.