Hi Dusten, Well I won't really help, but I just want to say that I'm working on a OSG+ODE+TNL integration and I'm interested in the same fileds. I already began the integration but that's in an early state.
What kind of networking lib are you using? Some (like TNL, Raknet, and more) have been designed to help for such problems and you may have a look to their code and/or documentation. Just check for licence details. I can say that (for me) TNL helps sending the minimum data and is quite well designed. For instance, you define a class (say "Player") and add a few methods to "pack" (convert useful data into a stream, such as position, velocity, remaining ammo...) and "unpack" (restore data). That's almost all you have to do for networking. And as long as you have a physics engine, interpolation/extrapolation is easy: just send and use velocity and acceleration of your objects. And a note about TNL (I dont know for other libs): you can easily reduce (on-the-fly) the precision of your floating point data. That helps reducing the bandwidth cost when updating an object which is, say, far from the camera, or out of sight, or in any state where precision is not a matter. TNL: http://www.opentnl.org/ Raknet: http://www.jenkinssoftware.com/ Sukender PVLE - Lightweight cross-platform game engine - http://pvle.sourceforge.net/ Le Wed, 19 Nov 2008 10:20:59 +0100, Dusten Sobotta <[EMAIL PROTECTED]> a écrit: > Hello, > > Although I've thrown together a few small client/server programs, I haven't > really developed a large-scale project involving networking. My current > project is an MMO/FPS hybrid with a fast movement system similar to Quake 3, > Warsow, HL2:CTF, etc. Bullet Physics have already been implemented into my > engine, and integrate with OSG well. However I'm rather concerned about the > manner in which I should handle client/server physics prediction and > interpolation (if any) over the network. For example, there are two 'modes' > to my engine such that standard MMO interaction in the world is handled like > many other MMOs--there is a great deal of latency as many characters and > enemies are shared among clients. However, in certain areas of my game > world, there are 'deathmatch zones', such that players in this zone interact > on a level closer to standard arena-style games such as Quake 3. Missions > in the game world are handled in a similar manner; all players in a party > see an instance of the world with only the information that is necessary for > that mission. (Think of co-op in a single-player game, but sharing the > level geometry with an MMO world) As you can see, it might be best to apply > multiple client/server models to this problem. > > Nevertheless, I'm most concerned about the real-time portions of this game > (deathmatch zones and co-op play for missions). I'm not too worried about > client/server synchronization when the character is simply exploring the > world, as there would be no advantage to a cheating player. Only in the > Co-op and deathmatch areas, would client/server synchronization be necessary > to ensure consistency between clients. This is just as much an issue with > OSG as it is with Bullet, as I'm mostly concerned about a certain degree of > consistency in visual representation of the world state across clients. >>From what I understand, OSG has mostly been used for multi-client setups > over LAN for visualization of particularly large or detailed scenes. Might > anyone have experience with networking and interpolation integration with > OSG? Are there any existing protocols or examples implemented or integrated > with OSG to handle interpolation for both high and low latency scenarios? > > > Any recommendations or help will be greatly appreciated, > > Dusten _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

