On 09/02/12 13:13, Robert Osfield wrote:
Hi Juan,

I have now had a chance to do a first pass review of your changes for
GL_EXT_shader_image_load_store and for now I'd like to hold back from
merging any changes as I'm not yet comfortable on how best to provide
support for this feature in the OSG.  Your proposed solution feels a
bit awkward to me and I'm afraid I don't yet have a suggestion of to
address it, to be able to do this I'll need to spend more time
studying the GL feature and reflecting on how it'll be used in the
context of the OSG and how we might support it class wise.
That's what I expected because it has deep impact on some aspects of the rendering pipeline. For example, I completely ignored the synchronization aspects and hence the user has to provide update or draw callbacks to call glMemoryBarrierEXT. I wanted to keep the changes to OSG as minimal as possible and what you see is the result of that restriction. I have neither a better class design for this as of now and I've been busy with other unrelated things for quite some time, so actually I need to refresh my memory to make a good proposal for that.

To help in this process could you provide a few examples of where you
see this feature being used?
From the fragment shader perspective it's useful for basically anything that may require a global append buffer, random access writes with atomic operations, or variable length output per fragment.
For example this:
http://blog.icare3d.org/2010/07/opengl-40-abuffer-v20-linked-lists-of.html
Also, think of how many times it's been asked in the mailing list: "can I read from the frambuffer in a fragment shader?". This extension, not directly, but somehow allows it. Since I've only used this extension for order-independent transparency I can't think of more specific examples right now.

Since it's possible to write also from the vertex and geometry stages this extension allows much more complex things. For example, I think this feature helps in the efficient implementation of the "page fault" mechanisms of MegaTextures and GigaVoxels.

Cheers,
Juan
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to