Let's at least give some credit to 3dfx Interactive for PCs dethroning the 3D giants. There was a time practically everyone playing Quake had a Voodoo card.
With the advent of semi fabs like TSMC, STM, etc. making their processes more accessible to smaller fabless companies, 3dfx, PowerVR, ATI, Nvidia and other startups in the 3D space back then, realized they can replace all those expensive discrete RISC chips SGI was using for their massive 'reality engine' PCBs, and instead design a cheaper and more efficient custom ASIC from the ground up that does nearly the same things SGI's reality engine was doing (triangle rendering and texture mapping was enough for a PC 3D accelerator back then), but at 1/100th of the price, and sell it to consumers.
Fast forward, and we all know how the story played out and where the industry is today.
>There was a time practically everyone playing Quake had a Voodoo card.
Yeah they were the most desirable piece of tech back then, plus, the marketing and advertising 3dfx had at the time was wild as hell.[1]
Even the box-art on their GPU boxes was the most memorable of any HW of that era. Anyone remember those eye glaring down on you from the store shelves?[2] I feel like this is now a lost art.
As a teenager/young adult in the late 90s/early 00s, I was so glad to see 3dfx fail. I hated how popular the Glide API was since you could only run it on a 3dfx card. I had asked for a 3dfx Voodoo for Christmas one year, and my dad got me a Rendition Verite 2200. It supposedly had better performance than a Voodoo while having a lower price, but it couldn't run Glide, so couldn't play half the games I wanted a Voodoo for.
I didn't want to feel ungrateful to my dad, so my frustration got targeted to 3dfx for making a proprietary API when OpenGL and Direct3D existed.
I eventually got a Voodoo Banshee, but by that time Glide was falling out of favor.
Do you happen to know a fruity HW company that today runs it's own proprietary graphics API when the open Vulkan or OpenGL exist? /s
All jokes aside, back then it made sense why every 3D HW company was baking their own API. It wasn't just for gatekeeping/rent seeking, but the consumer 3D graphics acceleration business was brand new, there was no standardization, so nobody knew where the future was heading, so they wanted to have full control over it as they built it. Plus, they were shipping hardware before Microsoft had come up with DirectX so they needed some API until then, and I assume they were afraid to touch OpenGL, the API of their biggest competitor.
Yeah, but how many AAA games use it exclusively? Every AAA game I know of is either using Vulkan, OpenGL, or DirectX directly, or they're using a game engine like Unity or Unreal and abstracting away the graphics API.
You forgot the Playstation (LibGNM/LibGNMX) and Nintendo ones (depending on the generation, microcoded GPU, GX (Wii), GX2 (WiiU), NVN (the main one on the Switch), Vulkan and GL 4.6).
No, it's not. What a silly thing to say.
Is the developer writing Metal code? No. Then they're not using it directly. They're using an abstraction.
"using it directly" means the developer is writing Metal code themselves. Writing Unity code that eventually gets compiled to Metal is not writing Metal any more than writing C that gets compiled into machine code means you're writing machine code.
Think of it this way...if someone wants to hire an experienced Metal developer for a Mac-exclusive game, do you think someone who's only developed using a game engine like Unity would be qualified?
> You forgot the Playstation (LibGNM/LibGNMX) and Nintendo ones (depending on the generation, microcoded GPU, GX (Wii), GX2 (WiiU), NVN (the main one on the Switch), Vulkan and GL 4.6).
Irrelevant to the conversation. We can talk about developing with proprietary APIs and continue to just use Apple's Metal as an example without bringing up all the other proprietary APIs. Not sure why you think I "forgot" all the other APIs.
If networking protocols were managed the same way as ARB and then Khronos do their work, we would only have the RFC for the IP layer, and then lots of extensions to choose from for the upper layers and traffic monitoring from each networking card vendor.
(By today's standards, those famous early 3D games were laggy crap, both hardware- and software-rendered, on many/most period-correct computers. It's rarely said that simple things like texture interpolation (computationally way too much for a CPU) were new, and impressed people more than fps counters. Yes, the vaseline polygons were once the look of the Future!)
Then two companies leveraged their positions to change that course. First was Microsoft, which really needed everyone to start using system-wide multimedia APIs instead of dozens of unmanageable DOS era bypasses offered by this or that hardware manufacturer. So Direct3D was introduced, and then quickly remade in a numbers of later versions to match the breakneck progress in hardware features (or directly wrap around them, if you wish). On one hand, it was a universal API, on the other, people would still write “ATi code” and “Nvidia code” years later.
The other was id Software, though not in a straightforward way. Quake I was ported to accelerated hardware (vQuake, glQuake). Partially because of vQuake experience, Quake II compartmentalized the renderer into a library, and only that library was supposed to be written with the help of hardware makers (or by them). Ironically, OpenGL support was more of a tech demo thing because id Software had the expensive professional hardware, and regular users obviously didn't, despite the calls to support that API in consumer 3D accelerators. Even more ironically, 3dfx decided to make a bare minimum OpenGL wrapper library for Glide to let already existing glQuake run on Voodoo instead of trying to make some deal on the porting. They called it MiniGL. Soon other manufacturers, game makers, and people trying to make this or that existing software work on consumer PCs followed the example, and the world saw a lot of custom hacked "opengl32.dll" semi-implementations tightly coupled to respective applications. Of course, if any of them happened to be copied into system directory, everything but the specific software running with specific hardware that library was supposed to support crashed or broke. Those who tried to write new programs by the book using these wrappers probably had some problems, too.
Then Microsoft was forced to act, even though it never really intended to support alternatives to DirectX family. It made OpenGL (standardized) an official system-wide API, but made the system library to be just a wrapper over complete OpenGL implementation provided by hardware manufacturer (if present). So it continues to this day, and making everything work properly has been AMD/Nvidia's problem, not Microsoft's. This is why people on Windows can still choose between OpenGL and Direct3D in game settings, and see something on screen using both. But when it all got started both were just thinner or thicker wrappers over what chip designers initially had in mind.
In other words, by the time 3dfx had a product out the door, Direct3D already existed. The fight over proprietary APIs should have been over and Glide should not have existed. DirectX 5, which greatly matured the Direct3D API, came out in August 1997, less than a year after the Voodoo, and still 6 months before the Voodoo 2. Glide should have been dead by then.
[0] https://en.wikipedia.org/wiki/Direct3D#Direct3D_2.0_and_3.0
"Carmack: Direct3D is now better than OpenGL"
https://www.bit-tech.net/news/gaming/pc/carmack-directx-bett...
Another bit of history, before DirectX, during the days of Win32s extensions for 16 bit Windows there was WinG library, which provided an accelerated framebuffer.
This one. It is amazing seeing how some monstruosity of a full-length, full-heigth cards were replaced by, essentially, a single chip solutions. I would recommend something akin to a computer museum to see exactly how it came to be.
On mobile ATM, if someone is interested - leave a reply, I would provide some links on the most interesting ones.
Yeah, I'm surprised SGI didn't see the tides turning as the ground shifted beneath them and the rest of the industry leapfrogged them.
But that's what made SV great, young visionary companies could come out of nowhere and eat the lunch of old dinosaurs who lacked the vision.
The reality is the company suffered from the same fundamental market forces that killed off most of the Workstation market in the 90s. No niche company could spend what Intel was spending on R&D every year so their performance advantage was continually eroding, while the price points for the hardware were not. Trying to transition to being a PC manufacturer wasn't totally crazy, but it would mean competing a highly price competitive market which SGI was absolutely not equipped to do.
I had the impression that the smart people in the graphics department saw that management was never going to go along with their "lets build far cheaper and better versions of our existing products on a PCI card that you can stuff in a cheap off the shelf PC" that would massively undercut the core business. So they quit the company and started nVidia.
Intel was really on a dumb path starting in the late 90s, with RAMBUS, Itanium, the P4 debacle, and missing the emerging mobile market, and didn't right themselves until 2006 with the Core series. But they were big enough to be able to make a few mistakes unlike SGI.
Now with that out of the way, did Pandemic always use x86 or did it use other architectures, like SPARC or Alpha?
Originally we were just x86 PC games but started working on console stuff in mid-2000. I got a chance to head up design on a PS2 game with Sony, and we had one or two other 'keep the company alive' projects as well before having the breakout hits of Full Spectrum Warrior and Battlefront. By then I was well off to college though.
This happens a lot of times. The reality is that someone will do it for you. Sometimes they even grow bigger than you.
Yeah, I can imagine you could count on the fingers of your hands, the number of people could, back then, design 3D acceleration hardware, so it must have been a pretty exclusive club in the Bay Area at the time where everyone in this field knew each other, I can only assume.
Haha. Amazing commercials. I don’t remember those at all, but they’re 100% on brand for the times.
those who had a voodoo + those who wanted to have one = 100%
Which had enough power to dethrone the Indy or O2 at a fraction of the price :)
In 1995 I think there were 16:9 aspect ratio japanese model TVs but I am not sure about monitors, might have been more like a 4:3 1600x1200 display.
Nope, it was definitely 16:9, but I was mistaken, it was an Intergraph[1], not SGI like I originally thought, but still connected to an SGI workstation.
Just look at this beast[1]. Also, the monitor is in the photo as well :)
[1] https://www.reddit.com/r/crtgaming/comments/gxvm99/legendary...
Notice how the left and right sides of the glass are straight vertical lines, and only the top and bottom edges are curved: https://spectrum.ieee.org/the-consumer-electronics-hall-of-f...
Versus a standard CRT, where all four sides are curved: https://fineartamerica.com/featured/vintage-tv-scott-chimber...
Of course, the final-gen Trinitons (circa 2000 onward) had truly flat glass, so there was no tell-tale curvature to look for.
And once Sony's patents started expiring, there were competitors like Mitsubishi's Diamondtron displays with glass shaped like Trinitrons. I'm not sure if they had the two horizontal lines like Trinitrons.
Apple mounted the Trinitron tube upside down compared to other vendors, so that the faint horizontal line would be in the bottom third of the screen rather than the top third.
Over time their timings would drift and you could never get the entire screen completely sharp.
That thing was a tank! I bought it at a CG house bankruptcy sale in the 90s for $2k, which was less than half the going price at the time.
But you're right, it weighed a ton. It did need periodic degaussing. And when a communication company half a mile away put in some satellite uplinks, I could see when there was heavy communication traffic by a slight color shift on one side.
In the mid-2000s, I worked at a place where we had several "decommissioned" Indys living a second life as Apache servers for some of our hosting clients - not uncommon in those days. We had one of the big 19" 4:3 CRTs on a KVM, too, and its weight put a noticeable if graceful curve in the MDF desktop on which it stood.
It was a lot of fun.
This is what I miss most about the 90's and proprietary computer vendors: the exotic fun looking cases they had vs boring beige Mac and PC cases.
I have an SGI 230 which was a last ditch effort to stay relevant via offering a regular x86 machine in an ATX SGI case. Unfortunately SGI ditched the snazzy cube logo sy then so it only has the lame fisher price sgi logo stenciled on it. It now houses a 12 core threadripper running Void Musl.
Before that workstation, the 320 and 540 used Intel P3/Xeon chips on proprietary motherboards, 3D GPU/chip-set and even proprietary ram modules. Only ran nt4 and was a miserable failure of a machine.
The refresh rate compromise at higher resolutions was due to the limitations of the graphics card, NOT the monitor.
LCDs took a little while to catch up for a few reasons:
1) expense! It was hard and expensive to manufacture a display containing millions of transistors with an acceptable (read: profitable) failure rate.
2) colors! LCDs had a reputation for extremely poor color quality in the beginning. Blacks were medium gray at best and primary colors all looked washed out. Today's LCDs still have a hard time getting to "true black."
3) ghosting! Early LCDs had poor response times. Move your mouse cursor and watch it leave a trail across your screen. Fine for word processing and spreadsheets. Terrible for games.
Another physical limit was the weight of the glass. The larger the display, the glass got thicker and thicker to "lens" the beam correctly so the edges/corners were straight. We had a Sony reference CRT for our film transfer/color correction suite that was a 32" HD monitor. MSRP was >$30k for it. (Sony's reference monitors were roughly $1k per inch in pricing.) The thing was stupid heavy requiring a minimum of 2 people if their names were Arnie; otherwise it'd take at least 3 maybe 4 typical post house employees. All of the weight was in the front.
The Sony 21" CRTs (and 24" in widscreen) had a very good run -- spanning several decades. They were certainly capable of higher resolutions, but the 1600x1200 was pretty much a standard (or 1920x1200 on the 24" widescreen) for that entire run. I can't think of any other desktop workstation performance 'metric' that was stationary for so long.
It's not surprising they fell out of favor though. Once the ghosting stopped being absolutely horrendous the LCD is just superior for office work. Uses less power, saves tons of desk space (and due to less weight, doesn't need a strong desk) and no flickering means a cheapo LCD is probably easier on the eyes than a cheapo CRT.
I bet the CRT wwould still be used more often if the supply chain to make them didn't fall apart when the demand disappeared.
When Sony first brought out their OLED reference monitors to the market, they had a demo at NAB to demonstrate the various screen types. All of the monitors were the equivalent reference version of that series: CRT, LCD, OLED.
It was an interesting demo as they had the same feed going to each monitor. When showing how each monitor could display black, the OLED looked like it was off, the LCD was just a faint shade of gray, while the CRT was much much more noticeably not black from its glowing screen. I started to think to myself how they might be pushing the brightness on the CRT to make it look bad against the others. Right as I was thinking that to myself, the narrator said something to address this thought and then displayed bars. All 3 monitors were correctly adjusted. A gamed CRT with brightness adjusted would have been obvious at this point to those knowing how the test pattern is meant to look.
The only thing I'd suggest that a CRT looks better is on true interlaced content.
Jensen Huang did. When people think of tech visionaries they think of Jobs or Musk, but Huang is just as great. He's been bang on the money on the future of this industry since he founded Nvidia, which is how they managed to not just consistently stay ahead of their competition (ATI) or put them out of business (3dfx), but leapfrog them (AMD) by branching in several fields (AI/ML, PhysX, computer vision, self driving, compute etc.) He saw early on that GPUs should push into general-compute and not just be for video games, and he executed well on that.
There are interviews on Youtube with Huang at Standford IIRC, where he discusses his vision of the GPU industry from the early days of Nvidia. Check them out, the guy's not your typical CEO suit focused on the share price, but he's basically a tech genius.
So, to answer your other question about why only Nvidia manage to win compute and not the other GPU companies, it's simple. Huang had the vision for the entire ecosystem from GPU chips, to drivers, to APIs and SW libraries, to partnerships and cooperation with the people and the companies who will use them. Building great GPUs for compute is not enough if you're just gonna throw them on the market without the ecosystem and support behind them, and expect it to be a success. That's what Nvidia gets and the rest (AMD/Intel) don't. So while ATI/AMD had tunnel vision and was focused only on building gaming chips, Huang was busy building a complete GPU-compute ecosystem for their gaming chips with the rest of the industry.
And it's easy to see that Huang and Nvidia put their money where their mouth was. The first GTC was 2009. That's 3 years before the famous AlexNet paper that's often credited with kicking off the current AI on GPUs trend.
No wonder they are always a shadow of what proprietary ones bring in the box.
by wasting two years on Quad rendering? Wonder how much VC money got burned in NV1 and cancelled NV2 debacle.
Rendering 3D graphics for games and the supercomputing used by AI/ML/research both need the same thing: Embarrassingly parallel math calculations with little or no branching in the code.
For example, a feed-forward neural network is just a whole lot of multiplication and addition. Transforming a 3D vertex in space to a 2D screen coordinate is matrix multiplication, which is just a whole lot of multiplication and addition. If you've already designed silicon to perform those operations in a single clock cycle, making it do HPC/SC rather than gaming isn't that big of a switch.
Unix was born to play a video game on a different platform. The Curses library for terminals (Windows users: "widgets" for the console") where born for Rogue.
Today, a damn serious OS like OpenBSD gives the BSD games set by default on the base install.
Text adventures for the Z-Machine had top tier grammar recognition parsers.
Then, a lot of simulation games overlapped the serious simulation software features, such as Sim City.
Not Quake. Not 1995. The picture
https://preview.redd.it/x3kqn3bjvb351.jpg?width=557&format=p...
is from Doom3 development, as seen in this video https://www.youtube.com/watch?v=PjbEdWF1e-I There is Blue G3 on the picture after all, released in 1999.
The only blocking plates on the rear cover of an O2 usually cover the spot where the Flat Panel Adapter or Dual Monitor board goes, and it's not installed by default, or the spot where a PCI card would go, which, well, it's a PCI card.
The base model supported audio and "moose cam" (A webcam, in 1996!). If you paid extra you got video.
You could buy the base AV1 "analog" video I/O card and then plug an SDI expansion breakout board (I think the Miranda VIVO was the most popular) into the webcam port, instead of buying the much more expensive AV2 "digital" video I/O card.
Chapter 64 onwards of https://www.jagregory.com/abrash-black-book/ is Mike Abrash's detailing of Quake's development.
(tl;dr - Quake was developed on NeXTSTEP + an MS-DOS port of GCC (DJGPP), Quake2 was on Visual Studio + Windows NT (this was the era of that Carmack giant-monitor photo), there was an in-between period of free updates to the original Quake, like WinQuake, QuakeWorld and glQuake).
I wish we could get some insight on the development of the first successful 3D game on PC, Quake by I'd software as there's a famous picture of John Carmack sitting in front of some SGI workstation with a monitor with a resolution ox 1920*1080( in 1995!)
Also, SGI powered most VFX Studios of that era, so many great movies went through those machines before ending up on the big screen.
It's insane how quickly 3dfx, Nvidia and Intel X86 consumer hardware made SGI workstations overpriced and completely obsolete within the span of just a few years. The '90's were a blast.
But still, I'm sad to see SGI go, as their funky shaped and brightly colored workstations and monitors had the best industrial design[1] in an era of depressing beige, grey or black square boxes.
[1] https://preview.redd.it/tt3ziuwt98o31.jpg?auto=webp&s=e5cc61...