How to represent spatial mobile objects (solar system) in jMonkey

Looking over the format of a scene graph I am trying to figure out how to best link the game engine (in this case an eve/elite clone) representation on a server(design stages, no server yet exists) to the scene graph on a client. Is it better to have a scenegraph of ALL objects exist on the server and clone, prune and transmit to the client and render this pruned copy; To subclass the objects with an update function(in the case of planetoids moving on preordained paths) and only update erratic object postion/vectors (players, ai, etc.), or to have a scenegraph on the client side, and something like an octtree on the server side and have an id link/ table that gets updated on the client side for position changes? How do other people work out this problem in jmonkey?

An octtree is almost always more trouble than its worth, but my advice is to start simple and build up functionality as you need it. If the scene is small enough to fit without the need for partitioning, a single “master” scene on the server may not be a bad approach that gets synchronized to each client.

So simply keep a copy of the scene graph on the server and send it over repeatedly?

Well it isn’t that simple :roll:



transmitting the entire scene on every update is quite illogical. You would need to come up with your own schema for how often things get updated.

Think model-view-controller. Scene graph is the view. Solar system is the model.



Only the model has to exist on the server. The client is then responsible for turning model data into a view by creating nodes, etc…



Your life will be 100 times simpler in the long run.