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