Benjamin Eikel wrote: > Hello Robert, > > On Saturday 01 March 2008 at 18:50:16, Robert Osfield wrote: >> Hi Benjamin, >> >> Could you possibly repost the below text, but broken down into shorter >> paragraphs as long paragraphs are really hard to follow. Try to keep >> one major point per paragraph. > of course. > > o What do we want to display? > We want to visualize scenes which are generated by a simulation of a factory. > > o Why do we want to use a cluster? > The simulation is running on a cluster. We want to do the rendering on > the cluster because > - we can get messages from the simulation faster (10 GBit/s > InfiniBand, lower latency than Ethernet, DMA transfers from one node to > another) > - we are able to cope with big scenes by just using more rendering > nodes (at least that is our goal). > - we have the computation power there. > > o Why do we have big scenes? > Models of some machines are very complex because they are generated by CAD > programs and we do not want to do an extensive preprocessing because the > models may change over time. > > o What is the architecture of the system? > - We have a central node for each user which is connected to our system. On > that node we want to use OpenSceneGraph (reasons below). So each of these > nodes has an own view into the scene. > - We have a set of rendering nodes. These rendering nodes are partitioned by > a > balancing algorithm and each central node gets some of them for rendering. We > want to balance between different users and between the rendering nodes one > central node is able to render with. > Example: User A sees only a small part of the factory => needs only few > rendering nodes. User B sees some very complex machines => needs lots of > rendering nodes. > Example: Central node A can render with 20 rendering nodes. It has 20 objects > with 1 million polygons and so it gives each rendering node one object. > > o How to we get the scene data from the simulation? > We get a identification number for each machine mesh from the simulation. We > then want to load the meshes for that machine inside the scene graph. > > o Why do we want to use OpenSceneGraph? > - We can use the already existing reader/writer plugins of OSG and do not > have > to write our own. > - OSG can do culling, picking, moving machines with grabbers for us. > - We want to use the animation capabilities of OSG for some special models > (e. > g. forklifts, packages on a conveyor). > > o How will OpenSceneGraph be connected to the rendering nodes? > When a frame should be rendererd we want to know the nodes (e. g. Geodes) > which are visible and their transformation matrix (which should be known to > OSG after it's update and culling traversals). With this knowledge (list of > visible nodes and transformations) the central nodes instruct their rendering > nodes by sending them the mesh ids, the transformations of the meshes and the > camera transformation. > > o How can we optimize the rendering on the rendering nodes? > We want to exploit the fact that there may be the same machine (= same mesh) > multiple times inside the factory. So we could load the mesh of such a > machine as VBO and let one rendering node render the machines with different > transformations multiple times. > > o What is my question at all? > I am searching for a interface where I can grab these visible nodes and put > them into a list. I need them so I can analyse them to run the balancing > algorithm and send the data to the rendering nodes. I think that it might be > possible to use the DrawImplementation of the Drawable nodes.
this is not an answer to your questions about your interesting project, only some thoughts about engineering stuff and simulation. http://www.realityprime.com/articles/scenegraphs-past-present-and-future#tomorrow http://www.caelinux.com/CMS/ what i didn“t find is a realtime grid for the balancing stuff. are there more infos about the project, maybe on a website? best wishes for your success! _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

