OpenBlox is a free game engine that is simple enough to be used by beginners to programming yet powerful enough to fit the needs of more serious developers. It provides a Lua API to enable developers to create games easily and with few restrictions. This is the official wiki about the software developed by the OpenBlox project. The servers providing the infrastructure and services used by the OpenBlox project, collectively called OBNet, are also used to host a number of other projects, some of which are also documented on this wiki.
It is important to note that the "Open" in "OpenBlox" does not refer to open source, but rather to the potential of the OpenBlox engine. Our goal is to provide a free (libre) game engine, not to promote open source software. The OpenBlox game engine itself is under the GNU Lesser General Public License, version 3 or later. The reference client and server implementations, as well as the studio software, are licensed under the GNU General Public License, version 3 or later.
OpenBlox needs your help! If you are a programmer and would like to contribute, please see our instructions to get the source code and send patches.
The aim of the OpenBlox project is to create a fully free game engine that provides base components to create simple games played in a 3D virtual space. We want the game engine to implement physics and rendering and to offer objects that implement characters, physical objects, graphical user interfaces, terrain, particle effects, vehicles and to provide APIs and objects to change the game lighting, send network requests, play sounds, get mouse and keyboard input and do much more.
At the foundations of our goals are a few guiding principles:
- You should not have to implement complicated stuff like rendering, physics and multiplayer networking.
- Instead, the game engine should provide you with components you can use to create games.
- The components should be general enough not to restrict the breadth of games that you can create.
- The whole engine should be fully free software and be available on all the major operating systems (Microsoft Windows, Mac OS X, GNU/Linux, Android, and iOS).
- It should be easy to learn.
OpenBlox uses the Lua programming language, which you can learn by reading the book Lua Programming. It provides a scripting API similar to ROBLOX's and attempts to remain compatible enough while improving things that need to be improved. The scripting API is documented on this wiki, and you can browse the documentation for the various classes below.
OpenBlox uses Doxygen to document the C++ API. The documentation for the latest build is available on the Jenkins server.
The OpenBlox project currently accepts donations with Bitcoin, Litecoin and PayPal. You can find our current addresses at https://openblox.org/donate.asc. While monetary contributions help keep our servers running, there are other ways to help the project. We're always looking for new contributors, to keep OpenBlox going strong.