Hello everyone,

I've got a higher level question that came up as I am reengineering parts of
my application. Consider the following scenario:

Basic eq::Config driving a 3d viewer application, handling event management,
affecting render state but NOT including a copy of the scene graph
Scenegraph (for example OSG), with individual copies living within
eq::Window (since this provides "transparent" GPU resource duplication for
individual OpenGL contexts, especially in my usage scenario where 1 window =
1 GPU).
Single distributed frame data object for render state, camera position, etc

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?

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.

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.

Similar scenarios come up every time one needs to communicate between the
application logic and the scene graph (for example, when doing a ray-scene
intersection upon clicking the mouse, the coordinates need to be sent to the
scene graph and the resulting intersection communicated back to the
app-node).

What is the recommended programming pattern for accomplishing something like
this?

Thanks :)

-Harris




--
View this message in context: 
http://software.1713.n2.nabble.com/Communicating-information-FROM-the-rendering-code-to-the-application-logic-tp7585385.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