C2 – LWJGL Java 3D Engine
C2 is a small 3D engine prototype based on the Lightweight Java Game Library (LWJGL).
Java provides a comfortable environment to experiment with OpenGL and real-time computer graphics.
Features
- Quake 3 Binary Space Partitioning (BSP) map loader
- MD3 (Quake 3 animated mesh) model loader
- MD2 (Quake 2 vertex-animated mesh) model support
- Entity management and scene graph
- Collision detection with bounding spheres, OBB (Oriented Bounding Box) and AABB (Axis-Aligned Bounding Box)
- Free-flight and 3rd person camera
- Curved surfaces
- Image format support: PNG, JPG, TGA, DDS (DirectDraw Surface – GPU-compressed textures)
- Interactive scripting console
Timeline
- Jan 2005: Added scripting support, interactive console
- Dec 2004: Added Quake 3 map loader, MD3 model loader
Console
Press ^ on the keyboard to open the console.
| Command | Description |
|---|---|
source scriptname |
Execute Java file in shell |
level filename |
Load Quake 3 map file |
create torus/btorus/skybox |
Create new instance of type |
model lara/ammo/gun/railgun/armor |
Load predefined model |
model *.md2 / *.md3 / *.dd |
Load 3D model by filename for different formats |
clone %1 |
Clone object from graveyard, e.g. clone gun |
bounding 0/1 |
Toggle bounding sphere display |
boundingbox 0/1 |
Toggle oriented bounding box (OBB) display |
boundingaabb 0/1 |
Toggle axis-aligned bounding box (AABB) display |
debug 0/1 |
Toggle debug output |
sync 0/1 |
Toggle vsync |
fullscreen |
Switch to fullscreen mode |
windowmode |
Switch to window mode |
node-list |
List all objects in scene tree |
node-show %1 |
Print information of named node |
texture-list |
List texture info |
material-list |
List material info |
remove %1 |
Remove named object from scene |
freeflightcam |
Switch to free-flight camera mode |
cameracontrol |
Change camera control |
change_texturefilter [anis/mipmap/normal] |
Change texture filtering |
exit |
Exit to desktop |
help |
Show help |
Demo
Java Web Start (JNLP – a now-deprecated technology that allowed launching Java applications directly from the browser): C2 Engine Demo