aboutsummaryrefslogtreecommitdiff

Brok[en]gine

logo

Broken Engine is a hobby game engine that glues Bullet Physics, Irrlicht, Lua, and various other technologies togeather to give a realtime, 3d, physics engine.

Download

Binaries for Windows are available from the here Binaries for Linux can be built:

  1. Use git to download this repository with submodules git clone --recurse-submodules https://cogarr.net/source/cgit.cgi/brokengine
  2. Download make, g++, ect. Windows users can use mingw. Open a terminal and cd into this folder, and run make DEBUG=true
  3. For some god-awful reason, when useing MSYS2 under windows, you need to define MSYSTEM=MINGW64 as an environment variable to get luajit to compile. set MSYSTEM=MINGW64
  4. Binaries can be found in bin/(client|server)/bin/
  5. Initally ran scripts can be found at bin/(client|server)/data/init.lua

Documentation

Documentation is built using mdoc, and you can build it with make doc; documentation is located under the /doc/ folder. Open index.html to view. Alternatively, you can browse an online copy of the documentation here, which is always up to date with the newest Brok[en]gine code.

Misc.

This project is under very heavy development. Expect lots of code churn for the foreseeable future.

Msys2

Under msys2, I had to install the w32api headers pacman -Syu msys/msys2-w32api-headers Then comment out the closeing curly brace at line 1128 of /usr/include/w32api/tchar.h Then use the mingw64 shell in C:/msys2/mingw64.exe (make sure gcc -dumpmachine outputs x86_64-w64-mingw32 or something and not x86_64-pc-msys) to make DEBUG=true Then install the mingw64 version of make, and use it to create the makefile for lib/bullet

Roadmap

  1. Lua-defined textures
  2. Lua-defined materials
  3. Bind all the irrlicht gui things to lua
  4. Lua-defined models
  5. Lua-defined hitboxes
  6. Networking utilities
  7. Make a tech demo game