There has always been a tradeoff between performance and flexibility. Fixed-function hardware is always more efficient. HOWEVER, as long as Moore's Law was alive the pace of improvement of general purpose hardware was so breakneck that by the time you would design a fixed-function solution to a problem, the general hardware would have become 2x, 4x, 8x faster while enabling algorithms that the poor schmuck designing the fixed-function logic couldn't even had dreamed of when they started on their project. THAT was the power of Moore's Law.
Hard to agree with, especially when looking at games visual fidelity improvements, which were bought entirely by using more powerful HW. In recent decades i have rarely noticed any new algorithms in gfx (before RT which required some progress). Beside Nanite, i could not list anything worth to mention at the moment. And worse, all algorithms in gfx are brute force. No hierarchical processing, no fast multipole method, nothing clever. Things like trees are even considered 'slow' and mostly ignored in favor of batching over large brute force workloads. I'm impressed by low level and close to the metal optimization skills of gfx devs, but on top of that they seemingly lack any creativity at the high level. That's also why they love fixed function hardware acceleration. It tells them what they can do and how, so they do not need to think any further, and after they master to maximize throughput using that, they think they have achieved optimal performance.
Sorry for the prejudges and disrespect. I know there are many smart people in games, but the overall impression is that bad, and mainly boring. It feels like the invention of GPUs has caused a stagnation that still holds on til current day.
By realizing MLID, but still continuing to rely entirely on faster HW to solve the problem (a problem that i personally can not even see), basically confirms you're out of ideas and so everything i've just said, kind of.
(I hope you don't mind the harsh tone an d continue. I might learn something...)
But maybe we get each other wrong. It's not that i naively think we could make everything faster with 'better algorithms'. In fact efficient GI is the only idea i personally have. But that's something, as lighting sucks up most GPU performance.
I have two questions: What kind of fixed-function logic can you imagine to achieve further improvements?
But mainly: Why do you think we even need higher performance? I mean, we can actually do whatever we want. The sky is the limit already now?
If you would say 'AI will enable new games', i would buy that. But why more of the same old things that have been exhausted long enough already? What would it enable that we can not do now?
But if we're at a point where we have to make a hard choice between proven performance from specialized hardware and hypothetical performance from flexibility + marginal general-purpose perf improvements, I'll choose specialized hardware (grudgingly).
I see indeed got you wrong. Sorry again.
I agree with that. If we can HW accelerate a building block such as tracing a ray, rasterizing a triangle, linear algebra, or even things like sorting or binning, i agree we should.
I'll let the rant above stand just for the record, to - umm... - add some more specific prejudges the games industry has to deal with nowadays. ; )