Limon is a multi platform 3D game engine mainly focusing on first person games. Focus of its development is ease of use and ease of study.
For details check out the project web site
Prebuilt binaries for Windows, Linux and MacOS can be found here
Documentation is served on readthedocs
If you want to chat, we have a Discord channel
For a demonstration, check out the video :
For features, check out features video:
Step 1) Open Terminal, then copy and paste the following command
$ sudo apt install cmake git libassimp-dev libbullet-dev libsdl2-dev libsdl2-image-dev libfreetype6-dev libtinyxml2-dev libglew-dev build-essential libglm-dev
Step 2) Since GitHub is limiting LFS bandwidth, it is removed. Cloning the LimonEngine repository should also include all data needed:
$ git clone https://github.com/enginmanap/limonEngine.git && cd limonEngine && git submodule update --init
Step 3) Next, we need to navigate to the directory run cmake:
$ mkdir build && cd build && cmake ../ && cd ..
Step 4) Finally, we need to navigate to the build directory, make the source and copy the Data
directory to the build
directory:
$ cd build && make && cp -a ../Data .
Windows platform is compiled using MSYS2. after installing MSYS2 as any Windows application, open up the msys2-terminal, and install the dependencies:
$ pacman -S cmake mingw-w64-x86_64-make mingw-w64-x86_64-gcc mingw-w64-x86_64-gdb cmake mingw-w64-x86_64-assimp cmake mingw-w64-x86_64-bullet mingw-w64-x86_64-SDL2 mingw-w64-x86_64-SDL2_image mingw-w64-x86_64-tinyxml2 mingw-w64-x86_64-glew mingw-w64-x86_64-glm mingw-w64-x86_64-freetype
after that, you can use step 2 - 4 of Ubuntu instructions, on the same terminal.
./Data/Maps/World001.xml
$ ./LimonEngine ./Data/Maps/World001.xml
0
switches to debug mode, renders physics collision meshes and disconnects player from physics (flying and passing trough objects)F2
key switches to editor mode, which allows creating maps.+
and -
changes mouse sensitivity.wasd
for walking around and mouse for looking around as usual.libcustomTriggers.dll
for Windows, libcustomTriggers.so
for GNU/Linux and libcustomTriggers.dylib
for macOS. If you use an customisation in a map and library is missing, that customisation wont work, but rest of the map will.Details in the documentation