All Projects → enginmanap → Limonengine

enginmanap / Limonengine

Licence: lgpl-3.0
3D FPS game engine with full dynamic lighting and shadows

Projects that are alternatives of or similar to Limonengine

Mos
Lightweight game engine.
Stars: ✭ 153 (-53.78%)
Mutual labels:  game-development, game-engine, openal, opengl, 3d-graphics
Silk.net
The high-speed OpenAL, OpenGL, Vulkan, and GLFW bindings library your mother warned you about.
Stars: ✭ 534 (+61.33%)
Mutual labels:  hacktoberfest, game-development, openal, opengl, 3d
Glas
WebGL in WebAssembly with AssemblyScript
Stars: ✭ 278 (-16.01%)
Mutual labels:  game-development, game-engine, 3d, 3d-graphics, 3d-engine
Mxengine
C++ open source 3D game engine
Stars: ✭ 284 (-14.2%)
Mutual labels:  game-development, game-engine, opengl, 3d-graphics
Acid
A high speed C++17 Vulkan game engine
Stars: ✭ 838 (+153.17%)
Mutual labels:  game-development, game-engine, 3d-engine, cross-platform
Radixengine
A free and open game engine.
Stars: ✭ 126 (-61.93%)
Mutual labels:  hacktoberfest, game-engine, opengl, 3d
Ncine
A cross-platform 2D game engine
Stars: ✭ 372 (+12.39%)
Mutual labels:  game-development, game-engine, opengl, cross-platform
3D-Engine-OpenGL-4
3D Graphics Engine For Games | C++ OpenGL 4.1
Stars: ✭ 19 (-94.26%)
Mutual labels:  game-engine, 3d, 3d-graphics, 3d-engine
3d Game Shaders For Beginners
🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game.
Stars: ✭ 11,698 (+3434.14%)
Mutual labels:  game-development, opengl, 3d, 3d-graphics
Cryengine
CRYENGINE is a powerful real-time game development platform created by Crytek.
Stars: ✭ 580 (+75.23%)
Mutual labels:  game-development, game-engine, 3d-engine, cross-platform
Opentk
The Open Toolkit library is a fast, low-level C# wrapper for OpenGL, OpenAL & OpenCL. It also includes windowing, mouse, keyboard and joystick input and a robust and fast math library, giving you everything you need to write your own renderer or game engine. OpenTK can be used standalone or inside a GUI on Windows, Linux, Mac.
Stars: ✭ 2,284 (+590.03%)
Mutual labels:  game-development, game-engine, openal, opengl
Panda3d
Powerful, mature open-source cross-platform game engine for Python and C++, developed by Disney and CMU
Stars: ✭ 3,035 (+816.92%)
Mutual labels:  game-development, game-engine, opengl, cross-platform
Ouzel
C++ game engine for Windows, macOS, Linux, iOS, tvOS, Android, and web browsers
Stars: ✭ 607 (+83.38%)
Mutual labels:  game-development, game-engine, openal, opengl
Etengine
Realtime 3D Game-Engine with a focus on space sim. Written in C++ 14
Stars: ✭ 408 (+23.26%)
Mutual labels:  game-development, game-engine, opengl, 3d
Glportal
🎮 Open Source teleportation based first person puzzle-platformer
Stars: ✭ 297 (-10.27%)
Mutual labels:  hacktoberfest, opengl, 3d, physics
Cpp 3d Game Tutorial Series
C++ 3D Game Tutorial Series is a YouTube tutorial series, whose purpose is to help all those who want to take their first steps in the game development from scratch.
Stars: ✭ 400 (+20.85%)
Mutual labels:  game-development, game-engine, 3d, 3d-graphics
Gamedev Resources
🎮 🎲 A wonderful list of Game Development resources.
Stars: ✭ 2,054 (+520.54%)
Mutual labels:  game-development, game-engine, 3d, 3d-engine
Raz
Modern & multiplatform game engine in C++17
Stars: ✭ 161 (-51.36%)
Mutual labels:  game-engine, opengl, 3d-engine, cross-platform
Engine
A basic cross-platform 3D game engine
Stars: ✭ 208 (-37.16%)
Mutual labels:  game-engine, opengl, 3d, cross-platform
Daemon
The Dæmon game engine. With some bits of ioq3 and XreaL.
Stars: ✭ 136 (-58.91%)
Mutual labels:  game-development, game-engine, openal, opengl

LimonEngine

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.

Feature Overview

  • 3D rendering with dynamic lighting/shadows
  • Rigid body physics
  • 3D spatial sound
  • Built-in editor with animation sequencer
  • C++ API for extensibility, and dynamic loading of extensions

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 :

0.6 Tech Demo

For features, check out features video:

0.6 featurette

Building from source on Ubuntu 18.10:

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 .

Running

Start up:

  • Engine take a parameter as path of world to load
  • If no parameter passed, falls back to ./Data/Maps/World001.xml
$ ./LimonEngine ./Data/Maps/World001.xml

In Application:

  • Pressing 0 switches to debug mode, renders physics collision meshes and disconnects player from physics (flying and passing trough objects)
  • Pressing F2 key switches to editor mode, which allows creating maps.
  • Pressing + and - changes mouse sensitivity.
  • wasd for walking around and mouse for looking around as usual.

In editor mode:

  • Since static and dynamic objects rigidbodies are not generated by same logic, mass settings can't be changed after object creation.
  • Inanimate objects are not allowed to have AI
  • You can create animations for doors etc. in editor. For animation creation, time step is 60 for each second.
  • When a new animation is created by animation editor, the object used to create the animation assumed to have this animation. You can remove by using the remove animation button.

Extending with C++

  • Limon Engine has 3 types of extensions:
    • Actions for triggers and buttons
    • AI for actors
    • Player for Input handling
  • All uses the same API, but called upon depending on their type.
  • Engine tries to load custom extensions from 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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].