RE: [Algorithms] Collision Detection on a MMORPG server
Brought to you by:
vexxed72
From: Scott S. <ssh...@ou...> - 2002-08-29 22:04:08
|
Well, of course. The methods you list aren't unique to an MMORPG; spatial subdivision, exploiting temporal coherence, and simplified collision meshes are techniques that can be applied to many different games. Exploring options like these is standard practice when developing a collision detection system in any game. I was actually under the impression that the original poster was asking about optimizations that could be done specifically for MMORPGs. Hence, my suggestions revolved around ways to avoid doing collision detection at all that might work in a MMORPG setting. As for running the simulation with a huge timestep, I'm not a big fan of this approach. It might work okay in a wide open area, but you'll run into problems in a tightly closed environment, as the original poster suggested. Besides, if your AI is halfway decent, it really shouldn't be banging into walls that frequently anyway. If you keep your timesteps smaller and run your AI pathfinding code more frequently, the AI is less likely to be smacking into things. And since you can pretty quickly do trivial rejection in collision detection routines, you might be better off simulating more frequently and missing the walls than simulating less frequently and constantly colliding. AABB to AABB tends to be a lot cheaper than polygon to polygon. That's just my $.02, YMMV. Scott -----Original Message----- From: gda...@li... [mailto:gda...@li...]On Behalf Of Franck Maestre Sent: Thursday, August 29, 2002 4:37 PM To: gda...@li... Subject: RE: [Algorithms] Collision Detection on a MMORPG server I believe that the answer of Sin is the more realistic ; have you seen that in DAOC the PNJ all have "areas" of activity ? I fact those area can be a small "sector" of the total geometry of the world , this allow PNJ to reduce collision detection , ie to stay on the floor: a test with an Axis Aligned Bounding box Vs the faces list of this small area (cluster). Also for PNJ against PNJ as far as they are in the same sector (let say "cluster") it is much faster... The other optimisation is a simplified collision mesh used instead of the "real" mesh of the world . Is is a bit like ZOI (Zone of Influence) in lightening 3D scene ; they are predefined sectors set in order to reduce the geometry "reached" by a dynamic light (look in NeverWinter Night how the shadows "disappear" sometimes .., in order to limit shadow castings to 3 or 4 on the PJ ) Franck |