Hi Harris,

On 25. Apr 2014, at 8:02, cpapado <[email protected]> wrote:

> At each frame, the scene graph calculates clipping planes for the scene that
> I'd like to distribute to the render nodes so that the visuals are
> consistent. From my experience with EQ, I can figure out the following ways
> to distribute that information:
> 
> 1) The Config grabs the AppNode pointer, grabs its Pipe, then the Window and
> gets the scene-graph related information that way. Am I correct to assume
> that there needs to be synchronization here or does the AppNode's rendering
> run on the same thread as the Config?

Yes, the render threads are distinct from the main (node/config) thread. You 
are not guaranteed to have a render thread on the appNode. Depending on your 
thread model, you are however guaranteed to have a quiet time between 
frameFinish()...frameStart().

> 2) Every Node checks to see if it is the AppNode and the correct one
> distributes the relevant information through the shared frame data object.
> This would necessitate that the Config actually syncs changes to the shared
> FrameData object rather than just assume that it is always holding the
> master copy.

Yes, I recommend either using events for this back channel or reading the 
chapter on slave object commits carefully.
> 
> 3) Similar to above, every Node checks to see if it is the AppNode and the
> correct one grabs the clipping plane information and then sends it back to
> the Config via a custom message.

This one seems to be the cleanest so far. What about:

4) Each node calculates the clipping plane independently using an algorithm 
which derives the same result on all nodes
5) The application main thread has an (potentially incomplete) copy of the 
scene graph, calculates and distributes the information. All nodes sync it to 
their version.


HTH,

Stefan.

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

_______________________________________________
eq-dev mailing list
[email protected]
http://www.equalizergraphics.com/cgi-bin/mailman/listinfo/eq-dev
http://www.equalizergraphics.com

Reply via email to