6 ms·
I think he is not wrong at all, but personally, I've been on both sides of the debate, and then I kind of formed the opinion that it's not worth debating about.
by gavanwoolery 14y ago
I think he is not wrong at all, but personally, I've been on both sides of the debate, and then I kind of formed the opinion that it's not worth debating about. The one thing I would strongly, strongly push for is general purpose hardware (we are kind of headed in that direction with OpenCL and CUDA, but industry-wide interest in these things is really low). Don't force me to use rasterization or raytracing (or even triangles), just give me a really powerful, flexible parallel processor...even if that means sacrificing a bit of speed. I think above all Carmack would appreciate such hardware...there was a kind of beauty in his old code you don't find any more -- you can do lots of tricks with GPUs, but overall it is a much more limited, less creative programming experience.
- Peaker 14y agoTypically limitations aid creativity, not hamper it.
- gavanwoolery 14y agoLimitations force you to come up with creative solutions to problems that should have been easier in the first place. :) But sometimes limitations force you to focus on the important things (if you could render absolutely anything, you could spend forever building an engine instead of a game).
- Peaker 14y agoI think sometimes the creative solutions end up being better than the simple "obvious" solutions that were apparent before the limitations were put in place.
- duaneb 14y ago> just give me a really powerful, flexible parallel processor Isn't that exactly what a GPU is? They aren't terribly fantastic at traditional computation, but then again we're talking parallelism here.
- gavanwoolery 14y agoYes, GPUs are becoming increasingly flexible, but they are still limited by CPU-GPU bottleneck, GPU memory (which for the most part has been limited to 2 GB per card), really poor branching performance and limited ability to modify data in any other way than 1:1 correspondence. They are first and foremost designed to pump out polygons at high fill rates, which is fine unless you want to do some untraditional rendering or computation. :) Again, CUDA and OpenCL are paving the way for a new path, but I still think we should be using general purpose silicon underneath it instead of hardware designed to to do things like MSAA, interpolation, triangle setup, etc.
- duaneb 14y agoSure, but I still believe it's far closer to the ideal parallel hardware than this n-core-shared-memory business that is really hard to program well.