Skip to content

Commit

Permalink
Add engine architecture overview Image
Browse files Browse the repository at this point in the history
  • Loading branch information
enginmanap committed Jan 11, 2019
1 parent 4e43cf6 commit c5c811f
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 4 deletions.
12 changes: 8 additions & 4 deletions docs/EngineArchitecture.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,20 @@ Limon is a multi-platform, multi-threaded 3D game engine. Engine is built as a m

#. Dynamic Linking Extensions: Those are fully customisable points. as of version 0.5, only trigger codes are implemented to be dynamic linking.
#. Engine recompile required extensions: Those are extensions that are most likely become dynamic linking in later revisions.
* Player interface for IO
* Actor interface for AI
* Player interface for camera and movement
#. Backend wrappers: Both rendering, sound, and platform(windowing, threading IO) are wrapped to their respective classes. Those are not intended to be extended by users, but engine developers. For example it should be rather easy to add a Vulkan backend for rendering.
* Rendering: OpenGL
* Audio: OpenAL
* Platform: SDL2

.. note::
Even though SDL2 is wrapped, multiple platform backends are not envisioned.
Even though SDL2 and OpenAL are wrapped, multiple platform or sound backends not envisioned.

Engine Overview
===============

.. figure:: _static/media/images/LimonEngineArch.png
:align: center

Subsystems
**********
Expand Down Expand Up @@ -80,7 +84,7 @@ As of version 0.5, Limon engine has following game objects:
* Gui Button
* Sound

Those object can be used in Editor, and by Triggers. Gameplay layer has an API called LimonAPI, and it has an interface to allow extending, and Limon Engine supports dynamically loading those custom triggers. For details, please check :ref:`How to implement an action<LimonAPI-HowToImplementAnAction>`
Those object can be used in Editor, and by Triggers. Gameplay layer has an API called LimonAPI, and it has an interface to allow extending, and Limon Engine supports dynamically loading those custom triggers. For details, please check :ref:`ExtendingByAPI/implementAction`

AI
==
Expand Down
1 change: 1 addition & 0 deletions docs/_static/LimonEngineArch.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<mxfile modified="2019-01-11T22:45:48.727Z" host="www.draw.io" agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:64.0) Gecko/20100101 Firefox/64.0" etag="Xly0dzJdwELMioJjudHm" version="10.0.32" type="device"><diagram id="BAGUj0TQOqTcgaafdvmn" name="Page-1">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</diagram></mxfile>
Binary file added docs/_static/media/images/LimonEngineArch.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit c5c811f

Please sign in to comment.