|
|
|
|
|
Engine |
|
Moved to ltgamejam.org/2003
For this LTGameJam a full-fledged engine was developed, having fancy buzzwords like "modular", "object-oriented", "DirectX9", "physics",
"component/entity framework" etc. Actually it all boils down to 3 projects built on top of each other:
-
dingus project is a collection of subsystems for game/graphics applications.
It has unified resource management (meshes, textures, effects, etc.), renderer using DX9 effects framework (HLSL, shaders, etc.),
vertex/index buffer management, versatile particle system, visibility system, physics and collision systems and lots of other stuff.
Physics/collision systems use ODE dynamics library (with small modifications) and
OPCODE collision detection library. There's simple
Lua support and some uses of Boost 1.30.0.
-
unco project is a small component/entity framework on top of dingus.
It provides entity hierarchy, some common entity components (mesh, particles, keyframed mesh, visibility group etc.) and some utilities.
-
Finally, there's jam, which is common code specific for this LTGameJam (entities like things and vehicles, game level classes, collision handlers etc.).
This is used (and possibly modified) by Jam's games. This is also used in a simple level editor jammer.
|
Using the engine and games source
|
|
how? |
Here's how:
- Download dingus,
unco and
jam projects.
- Put zip files into the same directory (let's call it DIR)and extract archives into same-named folders.
By now you should have:
DIR\dingus (with subfolders build, dingus and lib),
DIR\unco (with subfolders build and unco) and
DIR\jam03-dev-src (with subfolders data, jam, jam2game and jammer).
- Have Microsoft Visual C++ 6.0 (7.0 and 7.1 also seem to work)
- Have DirectX9.0 SDK and
Boost 1.30.0 installed and set up.
- Use workspaces in jam03\jam2game or jam03\jammer.
For compiling specific games - download game source (you'll need datafiles, so download game binary also) and set it so that along with dingus
and unco folders there's game folder (eg. thatcoolgame, with subfolders data, jam and jam2game).
We are in the process of writing publicly available documentation for the LTGameJam engine. Documentation will be available as a Doxygen
generated API manual and UML diagrams.
If you have any questions, feel free to write to Aras Pranckevicius 'NeARAZ' or anyone at
nesnausk!
|