But beneath the freakish exterior, lies the heart and soul of a genius. Man, look at all hes given us. GPU Plugins, a CDRom plugin, an SPU plugin, and now , an even better SPU plugin. The man is amazing and tops in my book. Way to go Pete!
this fairy tale is simply gr8
Ill quote Pete here:
March 05, 2000 - Taming the 3 headed dragon
The hunt begins
So you have some programming knowledge and you want to start coding 3d graphics? Oh well, listen to the following small tale...
Someone remembers 'Dragonstrike' from SSI? The very first dragon flight simulator (Drakan is just some rip-off, you might say), let you fly on a dragons back and slay your enemies with dragon fire and your looong mighty lance. Well, in that ancient time (1990), there was no API-hero in DOS-country, just pure CPU power decided if the 320x200 256 color graphics would be flying high or crawling on the edge of unplayability.
As time went by, a GLorIous DEfender appeared... and the world changed. The common people could now enjoy a better, more colorful world under the protection of Master GLIDE. The country prospered, and even when it was renamed to winDOwS (yeah, basically still the same old country, but, hey, that's marketing) the Master brought joy to the hearts of his followers.
The gods get angry
The secret of GLIDE was strongly protected by the 3DFX gods, so the other gods had to create their own champions. Some hired the services of Sir OPEN GaLahad, a warrior from a distant OS-country, but the nearly omnipotend god of winDOwS-country took some mud and formed a DIsasteRous protECTor within 3 Days. All three warlords had their own way of fighting, each one had advantages and faults.
Which way to go?
Now every poor knight (coder) has to decide which orders he wants to obey... and that decision is a hard one, hey, if you want to get the mana of the common folks, you have to be sure to entertain a big audience... the bigger the better... _and_ to impress them with magical effects and speedy action.
GLIDE is a well defined way of fighting. Sure, because of its age it is not state-of-the-art anymore (very limited texture size, 16 bit color only) but it is fast and stable, and it is having some nice features like color keying and palettized textures. Funny enuff, glide is handled slightly different by the various 3dfx offsprings (v1,v2,banshee and v3), so you can't be sure that your code is running without glitches on every 3dfx card. The major drawback: it can only be used by the followers of the 3DFX gods. And that's a dead end, sorry.
DIRECT3D is the most flexible way... all nowadays gods are supporting it, so nearly every inhabitant of winDOwS country can try it. It offers many features... that's its blessing and that's its curse. If a coder chooses it, he has to be aware that he has to check every feature he wants to use... and if the feature is not available on special cards, he has to write some extra code to do it in a different way, if he don't want to disappoint the users of that type of card (it is all about mana, remember?). He needs cards from many different gods for doing speed and glitch tests. Or he uses only the basic D3D features... of course he has to find out what's a 'basic feature' by himself, he can only be sure about one thing: the next version of d3d will bring new (bad?) surprises.
OPENGL is well-known in many OS-countries, so it can be used in non-winDOwS areas, too. It's easy to use, well-defined and stable. Sad but true: because of its age, some nice features (like color keying or more combine modes) are missing. So it can be kinda challenging to code special effects. Well, some cards are offering extensions to enhance the limited opengl features. But, like in d3d, that often means additional work for the coder. Very bad: some popular gxf-gods are having a terrible ogl-support. So speed can be slow and glitches will show up, and the coder can do nearly nothing to avoid such problems. There is just one thing that the common people can do: pray to their gods for newer ogl-drivers.
Flip the coin
So what to do if you want to tame the dragon and code some 3d stuff yourself? (Dark voice from above) 'It depends'... Choose a programming interface that works fine with your card. There is nothing more frustrating than searching bugs which are caused by crappy card drivers. OpenGL is the best starting point in my opinion, it has good documentations, samples and it's not as confusing as the D3D stuff. Of course, if you have knowledge in the MS COM interface you can also try D3D... funny enuff each new directx version seems to get closer to OpenGL (look at the dx7 texture handling or the vertex arrays). For Glide... I fear to start with Glide nowadays is just a waste of time. It was a nice interface for a long time, but I don't think it will live any longer. Anyway, the basics are the same with every interface (small wonder, it's all about 3d rendering and it's fun to be creative... don't fear the dragon, improve your coding skills and tame it...
A starting point for all wannabe-graphic-coders is Per Löfgren's site: http://home.swipnet.se/arsenal/per/
It's still under construction, but it has some useful links and Software Development Kits for all three APIs. Give it a try...
Yup,what would be cool is the possibility to have a custom title when you reach 1000 posts.
Well right now I'm looking for 666 posts to see if Bobbi is a satanist and made something for it(I guess he didn't but we never know).