Limon Engine is an open source, multi-platform and multi-threaded, 3D game engine. The engine is written in C++ and specially designed for First Person Shooter Games. It develops games for the platforms of Microsoft Windows, Linux and Mac-OS. It is a self-contained, simple learning project, has clean code and fair amount of functionalities. It is a great platform for learning game development. The engine is licensed under free LG-PL (Lesser General Public License).

The Turkish professional Software developer, Engin Manap developed this game engine. It may not be the best game engine and may not compete with the great engines of the time, but it surely has the essential functionality to support a game. Keeping in mind that this is a single developer’s effort, its capabilities are amazing.

Its first version was released in December 2017 that used basic GUI, Dynamic shadow mapping and point light, skeletal animation and rigid body physics. In September 2018, the version 0.5 was released that can actually be used to build a game. In December 2018 SSAO (Screen Space Ambient occlusion) was incorporated in the engine that gave path for the release of version 0.6 on February 2019. This version enabled to implement the shooter logic. No game has yet been developed on this engine.

The engine is fully documented. Manap being responsive invites users to discuss their issues or missing features using Issue Tracker. User can also chat at the Discord Chanel. The link to both the sites is provided at the end of this article.

Features

  • Skeletal Animation
  • Embedded Texture Support
  • SSAO (Screen Space Ambient occlusion)
  • GUI Editing
  • Rigid Body Physics
  • 3D Spatial Sound
  • Preliminary AI
  • Custom 3D Forward Renderer
  • In-game Map Editor
  • Editor For Animation Creation
  • API For Customization
  • Loading Customization From Shared Libraries
  • Post Processing Effects
  • Real-Time Lighting And Shadows
  • Trigger Volumes

Some Other Useful Resources

Here's our list of top five game programming books you should read.

Game Engine Black Book: DOOM: v1.1

The book Game Engine Black Book: DOOM: v1.1 is just a masterpiece from Fabien Sanglard as it describes not only the details of how the code works, but also some interesting history and trivia. The description of hardware capabilities, audio/video interfaces, and design decisions behind them is quite interesting.

If you're not a programmer the book is still interesting - it explains lots of neat tricks, plenty of photos, quotes, and backstory about how the game was developed.

Game Programming Patterns

With over 85% 5-start reviews on Amazon, readers agree that Robert Nystrom's Game Programming Patterns is a must have for any software developer. It has a crystal clear look at how to be the benevolent architect of a very complicated software/game without getting lost.

The author presents the architecture of a game in an easy to understand matter not from an academic perspective but from experience. The book contains code examples written in C++, well organised and written so cleanly that it feels like pseudo-code.

Beginning C++ Through Game Programming

With Beginning C++ Through Game Programming, Michael Dawson builds your knowledge from the ground up. This book not only is easy to understand and teaches well, but it is focused on the very subject to learn C++ for game programming.

When it comes to game programming, C++ is the name of the game.

Blood, Sweat, and Pixels: The Triumphant, Turbulent Stories Behind How Video Games Are Made

This is highly recommend book for anyone who likes history of videos games, or just likes good stories. Blood, Sweat, and Pixels: The Triumphant, Turbulent Stories Behind How Video Games Are Made captures the complexity of game development that anyone can pick up and enjoy.

If you have even a passing interest in gaming be sure to pick this one up. (reader's comment)

Foundations of Game Engine Development - Volumes 1, 2

The volume 1 of the book discusses the mathematics needed by engineers who work on games or other virtual simulations. The volume 2 explores the vast subject of real-time rendering in modern game engines.

The book is packed with great C++ code snippets and examples. You have tried-and-true methods that can be incorporated into any game engine and source code is not specific to any API or framework.