Hi,

On 3. May 2011, at 22:10, erij89 [via Software] wrote:

> I'm new here and I have a few general questions in order to figure out if 
> Equalizer is applicable for what we want to use it for. 

Welcome! The goal of Equalizer is to solve the *generic* problems of writing a 
parallel and potentially distributed OpenGL application. If it is not 
applicable, we should figure out why and change it. ;)

> We are trying to build an out-of-core rendering server (stateless!) that 
> should be able to generate different GBuffers depending on the request (Query 
> String). Those GBuffers are e.g. color, depth, objectID images of a 
> particular view. The rendered image should be postprocessed - if needed. 
> We are currently using osg for that and a pp-library that works directly on 
> the imagedata on the gpu.

Just to make sure: The render server delivers the GBuffers to the client, not 
simply a rendered image - correct?

> So if we would split the image, so that a quarter of it would be rendered on 
> a different gpu/pc we would not have the data of the pixels right next to the 
> splitting area. Is there an easy way to enlargen the area each gpu renderes 
> (so that there are enough pixels beyond the corners) and after that, put the 
> image together?

>From my current understanding I would first assemble the partial images on the 
>destination, and then run the pp on it. My assumption here is that the pp does 
>not reduce the amount of data. If it does, it might be worthwhile to do the pp 
>on the source channels.

> Is there an easy way to use our existing osg code with shaders that genereate 
> the pbuffers for every Node?

Yes, just do it. :)

Of course there might be details to work out, but in the draw task method you 
have native access to a GL context. Have a look at osgScaleViewer for OSG 
integration.

> The most important thing is - if splitting an image - if it would be possible 
> to put it back together, even if there are 3-4 representations of the same 
> image (color, depth, normals, objectid) ? 

You would have to write your own implementation of Channel::frameReadback and 
Channel::frameAssemble to read and assemble the different representations using 
the correct source/destination, but this is hardly rocket science.

> We are using mutliple GB of Model files and Texture data. Can all 
> Equalizer-Nodes that that data, so that it would not have to be loaded 
> multiple times (if using one pc)?

One one PC you would only configure one node (process) with n pipe (threads), 
one for each GPU. The pipe threads naturally have access to shared data.


HTH,

Stefan.



--
View this message in context: 
http://software.1713.n2.nabble.com/IPP-and-GBuffer-generation-and-usage-tp6328643p6329824.html
Sent from the Equalizer - Parallel Rendering mailing list archive at Nabble.com.
_______________________________________________
eq-dev mailing list
[email protected]
http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev
http://www.equalizergraphics.com

Reply via email to