OpenBSP is id Software's Quake .MAP format compiler with BSP tree generation, polygon generation/optimization and bumpmapped lightmapping.
- Supports Classic Quake, Brush Primitives (Quake III and compatible game engines) and Doom 3 .MAP formats.
- Custom simple BSP format generation with ready to use GLScene loader.
- Supports 3D Studio (3DS), Quake III (MD3) and Doom 3 (MD5) mesh files for embedding static meshes into maps.
- Basic supports for Quake III shaders (.shader) and Doom 3 materials (.mtr)
- Supports JPEG and TGA textures.
- Optimized BSP tree and polygon generation.
- Static bumpmapped lightmapping with multi-threadeding.
- It is not a game engine or a rendering engine.
- It does not create BSP formats compatible with other game engines.
- It does not use any space partitioning methods other than BSP.
- It does not support global illumination for lightmapping.
- It does not support PVS (Potentially Visible Set) for visibility culling.
For a quick start, you can use Skinhat's 3D Development Pack which is an installation package that combines Lazarus, GLScene, Quark and OpenBSP to make it easy to make a 3D game.
If you don't want to use 3D Development Pack, you need a .MAP editor like GtkRadiant or Quark to build your map files. After designing your map, export it as .MAP format and compile with OpenBSP.
To compile .MAP file with OpenBSP, run following command:
$ obspc <Game Path> <Map Filename> <Options>
Options | Description |
---|---|
-nolightmaps |
Disables lightmapping process (full bright) |
-disablemp |
Disables multi-threaded processing |
-subsamples [x] |
Changes subsampling amount in lightmapping |
-noshadows |
Disables shadow casting |
-savelightmaps |
Saves lightmaps to external bitmap files in output file directory |
$ obspc "C:\Game\Base" "C:\Game\Base\test.map" -subsamples 4 -savelightmaps
Although, further development is not planned with current Pascal codebase, a complete rewrite in modern C++ is planned in unforeseen future.
- Osman Turan - All OpenBSP development
- Eric Grange - Recycling Memory Manager
- Mike Lischke - 3D Studio (3DS) model loader
This project is licensed under the MIT License - see the LICENSE file for details.
- Skinhat for his great support and 3D Development Pack.
- GLScene community for supports and ideas.