John Utz wrote:
> 
> one last question before i knock off for the nite....
> 
> suppose one has two cards.
> 
> the first, the FooBarTech VisiBlaster, has special hardware for optimizing
> the generation of very realistic clouds.
> 
> the second, the BazGrafix RadiantTurkeyBaster XL6000 AGP 4X Value Edition,
> has special hardware for optimizing the generation of very realistic hair.
> 
> how would these get hooked up and taken advantage of? how many layers of
> abstraction get punctured by these nonstandard features? or am i asking
> the wrong question because they (every graphics chipset) are *all* non
> standard?
> 
> can somebody point me to examples in the code? i'd like to be pointed at
> examples of graphics generation(the hair and clouds stuff) and examples of
> hardware operation ( ie turning on DVD decoding or enabling the tv-out
> signal path ).

The real answer is that it depends...  However, lots of thought has been put
into this.

Firstly, understand that you will have to make sure your new feature is
supported by mesa.  The main reason that this is essential is fallbacks - if
mesa can't emulate your gizmo for fallbacks (there are always fallbacks), you
can't expose the funcionality to the world (in good faith, anyway).

So, now you're in a situation where software/standalone mesa implements your
new feature.  Now what you want to do is hook out the
processing/rendering/whatever to let the driver handle it.  This is where it
starts to depend...  

Have a look at Mesa 4.0 - there are a bunch of directories under src/, each
implements a relatively standalone piece of code, each can be hooked out in
one way or another by the driver.  Core mesa also has a driver mechanism.

Search for the string 'Driver.' in the dri drivers for examples.

Additionally, a very important module 'tnl' the software t&l engine, has an
additional customization mechanism: the standard t&l pipeline consists of
independent stages and can be modified by the driver.  Search for '_pipeline'
in the dri drivers for examples.

Keith

_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to