Ove Kaaven wrote:

From recent discussion on the list, it is my understanding that some DRI
drivers that implement (or will implement) EXT_texture_env_combine will
have numerous software fallbacks. Is it possible to add a way for
applications to detect when a texture environment will cause a software
fallback? Direct3D has a mechanism called "ValidateDevice" for this
purpose; you set up an environment and call ValidateDevice to see if the
hardware can do it without fallbacks.

Currently the only way I see to know such cases with DRI would be to use
glGetString with GL_VENDOR and GL_RENDERER and have a table of hardware
capabilities in every application that really need to know this, which
is not very flexible and is hard to update when DRI gets new drivers and
old drivers get new features. And I hear some Linux games already have
to do this.

Seems to me that a driver query would be a much better solution. Would
it be feasible to implement such a mechanism?

(Of course, there are other things that could cause a fallback (e.g.
stippling), but that's a smaller problem.)

There was some discussion about this about a year ago. Here's the thread that followed a discussion in one of the #dri-devel IRC meetings. Unfortunately, looking in the meeting log repository, the relevant meeting log (20021021.txt) is missing. :( I seem to recall that there were more messages on the mailing list, but I can't find them in the archive. Perhaps someone with a better memory and better searching skillz can turn them up...


http://dri.sourceforge.net/IRC-logs/
http://marc.theaimsgroup.com/?l=dri-devel&m=103487637430846&w=2
http://marc.theaimsgroup.com/?t=103524330000002&r=1&w=2

I think the conclusion was that as a tool for anything other than development / debugging, such a thing was not terribly useful. Pretty much all of the drivers have a *_DEBUG (i.e., MGA_DEBUG) that can be set to 'fall' to print a message to stderr whenever a fallback occurs.

The problem with it is, especially in the case of the MGA, changing one subtle thing (like changing the texture constant color from 0x00ffffff to 0x00ffff00) can change whether or not there is a fallback. I don't think that apps should or would, at run time, detect these types of things and change their behavior. Either it needs a constant color of 0x00ffff00 or it doesn't.




------------------------------------------------------- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01 _______________________________________________ Dri-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to