[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
GTC: Re: GTC blurb
GTC has already changed from the blurb so I can cut it down
further. If what Pete wrote is already out, that's fine with me.
If not, you can send this instead. (I'll make it shorter than the
first thing I wrote.)
Also there was one notable error in Pete's edit. I'm cc-ing
gtc-dev for the world to see.
Sebastien Loisel -- McGill University -- Sun Microsystems
http://www.math.mcgill.ca/~loisel/
---
The GTC (Game ToolChest) project is developing an LGPL'd library
for doing many things that are useful to 3d games. Currently, a 3d
library is in progress which sites on top of OpenGL (a "visual
simulation" library.). Although at present GTC doesn't have very
many features, some fancy collision detection has been
implemented. There's also a networking library, which is supposed
to simplify the packing of data and communication. The socket API
of Unix is good and simple so there isn't all that much to do but
it still does some useful work.
One of the goals of GTC is to provide new functionality, not just
another API to do something which other APIs already offer. There
is a large number of game programming libraries out there, though
there are only a few libre ones for 3d gfx. To my knowledge, PLib
is the other good 3d library. Its unique feature from my
standpoint is the widget set it provides on top of OpenGL.
Eventually we intend to provide bindings for many languages. To
best achieve that goal, we are using C for the core library. This
means that the library is already usable in C++ though C++ class
wrappers would make it more esthetically pleasing. We hope to get
scheme, perl and python bindings eventually, perhaps even export a
CORBA interface. Since the API hasn't stabilized yet, we can not
start work on the language bindings.
Included is a space shooter where you fly in a space armada of
ducks (only mesh I had). There's a single player version and a
client/server multi player networked version.
This is a list of what we're currently working on and what we
need.
* Gfx stuff: loading meshes, textures, skeleton, LOD meshes,
projected shadows, streaming video...
* Collision detection. At the moment a pruning step is
implemented. If there are N objects flying around, there are
N(N-1)/2 possible colliding pairs. A naive algorithm tests all
pairs, that is slow. I implemented an algorithm which tries to
prune the number of pairs it needs to check. After the pruning is
done, remaining pairs need to be checked more exactly, this hasn't
been done yet.
* Reducing the bandwidth required by the generic client. Currently
we have a generic client which should work for any game made with
GTC. The architecture is such that the game programmer can almost
forget about the network and multi-player aspects. However,
bandwidth usage could be greatly reduced very easily.
* API documentation. It is not stable enough yet to be worth
documenting but eventually this will need to be done. Current
documentation is outdated.
* We should be educated about CORBA. It may be that CORBA is
useless to us now but it wouldn't hurt to check and make sure.
* Content. We need to have some objects to work with.
------------- End Forwarded Message -------------
Sebastien Loisel -- McGill University -- Sun Microsystems
http://www.math.mcgill.ca/~loisel/
*************************************************************
To unsubscribe, send an e-mail to majordomo@gtc.seul.org with
unsubscribe gtc-dev in the body. http://gtc.seul.org/