On Thu, 2010-03-11 at 05:21 -0800, Keith Whitwell wrote:
> On Thu, 2010-03-11 at 03:16 -0800, michal wrote:
> > Hi,
> > 
> > I would like to merge the branch in subject this week. This feature 
> > branch allows state trackers to bind sampler views instead of textures 
> > to shader stages.
> > 
> > A sampler view object holds a reference to a texture and also overrides 
> > internal texture format (resource casting) and specifies RGBA swizzle 
> > (needed for GL_EXT_texture_swizzle extension).
> 
> Michal,
> 
> I've got some issues with the way the sampler views are being generated
> and used inside the CSO module.
> 
> The point of a sampler view is that it gives the driver an opportunity
> to do expensive operations required for special sampling modes (which
> may include copying surface data if hardware is deficient in some way).
> 
> This approach works if a sampler view is created once, then used
> multiple times before being deleted.
> 
> Unfortunately, it seems the changes to support this in the CSO module
> provide only a single-shot usage model.  Sampler views are created in
> cso_set_XXX_sampler_textures, bound to the context, and then
> dereferenced/destroyed on the next bind.
> 
> To make this change worthwhile, we'd want to somehow cache sampler views
> and reuse them on multiple draws.  Currently drivers that implement
> views internally hang them off the relevant texture.  
> 
> The choices in this branch are to do it in the CSO module, or push it up
> to the state tracker.

Looking at it a little, I suspect that doing it in the CSO module will
be the least painful, though you'll need to be careful that caching
sampler views doesn't cause texture references to never go to zero.
Either way, it looks like there is a bit of work still to do on this
branch.

Keith


------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to