[Twisted-Python] "3D Game Using Twisted?", or: "Ach du lieber..."

Jason Asbahr jason at crash.org
Wed Mar 13 20:52:42 EST 2002


Hey, Darek!

> 	First, a little bit about my game engine, because it's the type of
> thing you twisted Twisted people might be interested in:
> <snip>

That looks great!

> 	Also see the older shots at:
>
> http://www.realloc.net/~dereks/commputers/my_code/targa/

This link didn't come up for me, though...

> 	Also, the big piece that you may like: I've recently refactored
> the whole damn thing, and with a little help from SWIG my "engine" is 
> now
> nothing more than some Python C extensions.  My "main event loop" is 
> just
> a simple Python script, and because all the [bottlenecking] rendering 
> code
> is still C, I get the ~70 FPS I was getting when the entire engine was
> pure C.  But now I have Python at my disposal, mua ha ha.

Very cool.

> 	The big pieces I have left are the enemy A.I. and the networking
> code.  This is a client-server engine.  The light at the end of the 
> tunnel
> is load-balanced Linux cluster (using LVS) serving up a persistent, 3D
> world (ala' PlanetSide), and maybe even me making some $$$ from a few
> hundred subscribers paying $5/month.  Now you see where Twisted fits 
> in --
> I'm basically shooting for twisted.reality in real-time 3D.

Welcome to the club.  :-)

> 	Any advice is greatly appreciated.  If anybody else is using
> Twisted for something similar, I'd love to hear about it.

I'm working on a similar goal -- Persistent worlds hosted in Twisted 
with various 3D clients.  Currently, I'm working with the Nebula Device 
(http://www.radonlabs.de), which is a multi-platform general 
scenegraph-oriented library.

I'm working on putting together a demo, but until then, check out the 
papers which describe the approach I'm taking:  
http://www.asbahr.com/papers.html

It would be useful to identify the common features between the various 
game projects so we can collaborate effectively.  Does the fact that you 
are using Quake-style approach mean that you will want to consider the 
world in terms of "levels", versus terrain chunks or "rooms"?

Cheers,

Jason





More information about the Twisted-Python mailing list