What a pointless discussion!
(I''m being deliberately inflammatory, forgive me Eternity, but I have to chip in, I think you''ll understand me as well )
Do half of you have ANY idea what EXACTLY a so-called "3D-accelerator" does? DO you?
How many have downloaded 3Dfx''s now open hardware specifications for their voodoo-series, and had a look at it?
How many of you actually KNOW what they do?
How many of you know why QuakeIII is so blindingly fast?
Regarding to a post a little higher:
"Most 2D cards now have some measure of 3D acceleration"
Do you know why? Because they do not do anything in 3D!!
The original Voodoo did not do any transforms, any lighting, anything much at all. All it did, was draw 2D (Yes, thats TWO dimensional ) textured triangles really fast.
That it was called a "3D" card is only because the main purpose of it was to accelerate the rendering of 3D objects represented as polygons and projected into 2D space.
Yes, I think Tim Sweeney is more or less right in his predictions, though it will probably happen faster than he thinks anyway.
3D accelerators are nothing particularly exciting. They don''t do anything magical.. they just unload some useful stages of a drawing pipeline off the main processor, onto a system that in some cases can do it faster. (sometimes the stages are less useful too, what the hell is 3Dfx thinking with that stupid T-buffer idea?)
For comparison: the much-touted TnL of the GeForce: It really only supports 2 lights in hardware, it firmware-fakes the rest.. and a high-end PC can actually do the TnL FASTER than the on-board chip. But that''s not the point, you''re freeing up generic system resources in favour of a piece of hardware that will only be used for rendering;
The only problem is that people are starting to mistake the interfaces for the actual thing. OpenGL is not hardware acceleration, it''s a library of functions that happened to be used to grant easy access to the hardware capabilities. Same for DirectX.
Using THESE things ( OpenGL, DirectX ) in the ''standard'' way, severely limits your code-creativity in certain ways, because you have no idea what you are writing to - you do not know what that magical little card in the PC is doing.
In some cases that isn''t too bad. For the 10millionth 1st Person shooter to make use of BSP-trees and z-buffered models that''s fine. But if you think that''s all it can do you''re wrong;
The article about tiled-rendering using Direct3D on gamedev a while ago was magnificent;.. it showed off how to use the interface for something that it really wasn''t originally intended for. That''s innovation, that''s creativity.
It''s still using HW if it''s available, and it''s not being lazy, but it will probably still work pretty damn well for software.
The bottom line:
Skill, creativity, and originality are not limited any more if you design for hardware, or if you design for software. But the advent of HW acceleration has made a lot of (second rate) programmers think that this was the only way to go.
Only now are we starting to see some new creative inputs.
Software Rendering is not dead (or is it...)
I did my first 3d wireframe stuff 8 years ago. I didnt have any tutorials/info, internet happened to be nonexistent as source of information these days. So i figured it out hard way on a paper with my own gray cells. Ive been writing polyfillers, assembly optimizing matrices, trying to filter textures and all that stuff since then.
The day it was released, i ordered GeForce DDR and downloaded DX7 SDK, and i have to say im damn happy about it.
After all, computers are all about ''HARDWARE ACCELERATION'', this is why most of the people dont use typewriters these days.
-2 cents given, kertropp
The day it was released, i ordered GeForce DDR and downloaded DX7 SDK, and i have to say im damn happy about it.
After all, computers are all about ''HARDWARE ACCELERATION'', this is why most of the people dont use typewriters these days.
-2 cents given, kertropp
Well, I happen to be one of the people without HW acceleration. I buy about 2 games a year.
My favorate is Tomb Raider(II and III). It has software acceleration which runs fine on my old 200Mhz Mac.
My current 3D project doesn''t use polygons at all so I have to use SW rendering anyways. I hope companies start trying out other methods of rendering because polygons are getting old and I''d like to see more fresh styles.
E:cb woof!
My favorate is Tomb Raider(II and III). It has software acceleration which runs fine on my old 200Mhz Mac.
My current 3D project doesn''t use polygons at all so I have to use SW rendering anyways. I hope companies start trying out other methods of rendering because polygons are getting old and I''d like to see more fresh styles.
E:cb woof!
I haven''t followed the whole discussion so I apologize if I''m covering old ground.
First off, just to pick nits.. Dog135, it''s not software
acceleration, it''s just software rendering. Hardware acceleration is called that because it accelerates the process of rendering. Software rendering just does it.
I''ve recentely started at a new job as a 3d graphics programmer after a long time in the desert that is webpage development.
This might not apply to all jobs out there but I got the job because I''ve written everything from scratch, thus proving I know how to do the work without the added benefits of an accelerator. I don''t use software rendering at work and my openGL was a bit rusty when I started and my direct3d practically non existant. That didn''t matter much as it only took an afternoon to do the first port of my 3d engine from a dos4gw app to a windows app using openGL. Porting my other dos software, a 3d modelling program, to directDraw and Direct3d took a few days but that was it.. I only had to look everything up in MSDN, code it and everything worked pretty much without a hitch (something I''m not really used to.. I suppose having a working debugger helps).
If I had not spent all those years learning the basics, I would have spent a lot longer struggling to understand the hidden inards of direct3d, openGL and the 3d hardware that I''m using and would have made many more mistakes. My employer knew that I wouldn''t have any problems and although I was a bit apprehensive and frankly a bit ashamed of my lack of windows programming experience, it was all pretty familiar and simple in the end.
Programming for hardware acceleration raises some issues that the software engine programmer does not have to contend with; You have to worry about texture thrashing and the idosyncracies of each card.. also, working out what openGL or direct3d are doing and making sure you don''t do the work twice over was a bit of a pain (i.e. you do your own backface culling/clipping and then the library does the same) but on the whole, there is very little difference between the two and I''m really happy that I''ve coded all that software stuff as it''s given me a lot of valuable knowledge that is still very handy (matrix maths doesn''t seem to go out of fashion, even if programming techniques do)
Tim ''Luther'' Lewis, 3d graphics programmer & designer AI-Cube, Japan.
First off, just to pick nits.. Dog135, it''s not software
acceleration, it''s just software rendering. Hardware acceleration is called that because it accelerates the process of rendering. Software rendering just does it.
I''ve recentely started at a new job as a 3d graphics programmer after a long time in the desert that is webpage development.
This might not apply to all jobs out there but I got the job because I''ve written everything from scratch, thus proving I know how to do the work without the added benefits of an accelerator. I don''t use software rendering at work and my openGL was a bit rusty when I started and my direct3d practically non existant. That didn''t matter much as it only took an afternoon to do the first port of my 3d engine from a dos4gw app to a windows app using openGL. Porting my other dos software, a 3d modelling program, to directDraw and Direct3d took a few days but that was it.. I only had to look everything up in MSDN, code it and everything worked pretty much without a hitch (something I''m not really used to.. I suppose having a working debugger helps).
If I had not spent all those years learning the basics, I would have spent a lot longer struggling to understand the hidden inards of direct3d, openGL and the 3d hardware that I''m using and would have made many more mistakes. My employer knew that I wouldn''t have any problems and although I was a bit apprehensive and frankly a bit ashamed of my lack of windows programming experience, it was all pretty familiar and simple in the end.
Programming for hardware acceleration raises some issues that the software engine programmer does not have to contend with; You have to worry about texture thrashing and the idosyncracies of each card.. also, working out what openGL or direct3d are doing and making sure you don''t do the work twice over was a bit of a pain (i.e. you do your own backface culling/clipping and then the library does the same) but on the whole, there is very little difference between the two and I''m really happy that I''ve coded all that software stuff as it''s given me a lot of valuable knowledge that is still very handy (matrix maths doesn''t seem to go out of fashion, even if programming techniques do)
Tim ''Luther'' Lewis, 3d graphics programmer & designer AI-Cube, Japan.
Ok, I''m sorry for the typo. I realize it''s not accelerated in software. But then again, the hardware side SHOULD be called: "Graphic Based Hardware Multitasking" or some other such thing.
GBHM - GiBHaM?
E:cb woof!
GBHM - GiBHaM?
E:cb woof!
You could probably find a basic 3d accelerator like an 8mb ati rage card on ebay for like $20.
If you have a pII 266 im assuming your chipset is 440LX and you probably have AGP 2x so
you have quite a few options for 3d accelerators. Just check out ebay , i find things there
so cheap its crazy.
If you have a pII 266 im assuming your chipset is 440LX and you probably have AGP 2x so
you have quite a few options for 3d accelerators. Just check out ebay , i find things there
so cheap its crazy.
I think the efforts to make people search the archives before posting questions are starting to pay off
Oh great, a 2 year old zombie. We will just let it rest in peace, and won't reply, OK ?
> I think the efforts to make people search the archives before posting questions are starting to pay off
Yeah, sometimes I wish I could just push them back where they belong
[edited by - Yann L on June 1, 2002 10:11:25 PM]
> I think the efforts to make people search the archives before posting questions are starting to pay off
Yeah, sometimes I wish I could just push them back where they belong
[edited by - Yann L on June 1, 2002 10:11:25 PM]
Actually, don''t put this thread back to the archives. There are sooo many things you can''t do in hardware, it''s not even funny. Vertex and pixel shaders are not really a huge help either. As an example, photon mapping, volume rendering (ray traced, not the lame 3d texture mapping), custom texture filtering algorithms, custom sampling, and millions of other things I''d like to be able to code but can''t because I am limited.
I hate fixed function pipeline. HATE!!! I would prefer a graphics board to be a fully featured separate CPU dedicated to graphics. Current cards aren''t really GPUs, and they have very very limited programmability. Ah, just wait ''till I get my hands on coding a software renderer
P.S. Now that I think of it, photon mapping is possible with vertex shaders, but still
I hate fixed function pipeline. HATE!!! I would prefer a graphics board to be a fully featured separate CPU dedicated to graphics. Current cards aren''t really GPUs, and they have very very limited programmability. Ah, just wait ''till I get my hands on coding a software renderer
P.S. Now that I think of it, photon mapping is possible with vertex shaders, but still
Kill:
Of course I agree, software rendering is still very important in non-realtime render environments. Actually, 99% of all high quality scanline based non-realtime renderers are software only. This gives them so much more flexibility and full programmability - but not speed. Some of them run on dedicated hardware DSPs, so the borders between ''software only'' and ''hardware only'' begin to fade away. You even have professional dedicated HW for raytracing engines !
This discussion here started back in 1999, and contains lots of things that are obsolete today. So, if anyone is really interested in bringing back a software rendering discussion, then just open a new thread. If we continue here, then people will start replying to 2 year old posts, and it''s going to be damn confusing for everybody.
/ Yann
Of course I agree, software rendering is still very important in non-realtime render environments. Actually, 99% of all high quality scanline based non-realtime renderers are software only. This gives them so much more flexibility and full programmability - but not speed. Some of them run on dedicated hardware DSPs, so the borders between ''software only'' and ''hardware only'' begin to fade away. You even have professional dedicated HW for raytracing engines !
This discussion here started back in 1999, and contains lots of things that are obsolete today. So, if anyone is really interested in bringing back a software rendering discussion, then just open a new thread. If we continue here, then people will start replying to 2 year old posts, and it''s going to be damn confusing for everybody.
/ Yann
This topic is closed to new replies.
Advertisement
Popular Topics
Advertisement