Dedicated Server Programming

I am writing a 3D engine for a dedicated server for a MMORPG. This is my first ambitious 3D program involving networking and such. But I need to know if it’s feasible to use OpenGL in the dedicated server, and simply not have a display/camera (so I guess hardware acceleration would be out.) I suppose that there may be special cards meant to speed openGL, but not necessairly for display.

And since the dedicated server is only simulating, there is no need for textures, lighting, and that sort of thing. I’m simply loading 3d objects, implementing physics, and testing for collisions. Should I just use my matrix routines to perform my tests, or is there some special mode I don’t know about?

-Zarthrag the OpenGL newbie

I haven’t tried this yet, but I don’t think you need OpenGL on the server. You can load objects as normal, but just don’t display them. You should still be able to perform collision detection.

Ok, I see! My dedicated server will simply have to track bounding boxes only. But does openGL provide anything that facilitates for collision detection of any sort? I can still think of reasons that I would want the server to render a scene (but only if I can conduct collision tests). One such example would be if a highly detailed character with subdivision surfaces, nurbs, etc. I want to (attempt to) perform a kind of pixel perfect collision test.

That is, actually know exactly where a line penetrates an object (was he shot at the base of the skull? the heart? near his left kidney? where is the exit?) I know it’s morbid, but being able to determine this would be REALLY cool. Even if it is too much to do large scale, I can work around that. I know I probably sound ignorant, and that this post ought to be in the beginner’s section, but my dedicated server is running under Redhat at the moment, and I’m considering moving to FreeBSD or OpenBSD as soon as I test it’s waters for multi-threading, and I have alot more questions that will arise soon enough. Thank you all for your patience.

Originally posted by zarthrag:
Ok, I see! My dedicated server will simply have to track bounding boxes only. But does openGL provide anything that facilitates for collision detection of any sort? I can still think of reasons that I would want the server to render a scene (but only if I can conduct collision tests). One such example would be if a highly detailed character with subdivision surfaces, nurbs, etc. I want to (attempt to) perform a kind of pixel perfect collision test.

There’s no glDetectCollisionForMe() function, if that’s what you mean. OpenGL is graphics only, as in graphics, graphics, graphics and nothing else.

You’re going to have to do the collision detection yourself.

There are quite likely ways you could use OpenGL rendering to help you out, though whether these would be more or less effecient than a CPU-only approach isn’t clear. I expect Google will tell you if this has been tried

This topic was automatically closed 183 days after the last reply. New replies are no longer allowed.