I understand your concerns. I don’t think there’s a rfe filed.
Now, I believe that such API will be as useless as the current
capabilities stuff.
Suppose we had an api which can tell you which operations
we consider “accelerated”.
Do you really want to write endless checks for capabilities?
Poor folks who use Direct3D for their projects (prior to DX 10) have to,
and it’s no fun. And it doesn’t really guarantee that your app will
run fast, it will just guarantee that it will run.
Java2D can guarantee you that already - your app will always run.
What you really want to know is not what’s considered
“accelerated” but what’s fast. And we can’t always tell you that -
the same operations on one chip (or OS) may be way slower than
on another. Even on the same chip performance varies
wildly with different drivers. And, some operations may be slower
when combined with others - how can we express that?
I think applications should be self-adaptive. You can detect that
your framerate is low and adjust automatically - no need
for checking caps - most modern games do that.
Or have “high-mid-low” quality settings for user to choose like most
games do. After all, the user is in the best position to judge if
your game is slow or not.
We could also tweak the current caps stuff so that it better
reflects the reality - especially on X11 where we currently
consider that an image is “accelerated” if it’s cached
or resides in a Pixmap. Yeah, it’s accelerated in the 80-s sort of way
(wee, you can cache a sprite, wee! =)
At least on Windows in 6uN ‘accelerated’ will mean that you
get pretty much full acceleration. Same with the opengl pipeline
on all platforms.
Thanks,
Dmitri
P.S. Yeah, I wish I had a blog! But then I’d have to write on it!