Author - @Silvertakana | GitHub | Discord
Inspired by - Hazel2D | The Cherno
- Started on Apr 24, 2022
Limux Engine is a game engine supports both 2D and 3D rendering. It is currently free to use and modify. it can be use in high production applications other than games.
-
Note: At this point, MacOS and Linux are not supported.
-
- step 1: Run these command in your chosen command-line environment
you must provide an editor to
git clone --recursive https://github.com/silvertakana/Limux.git cd Limux setup.bat vs2022
setup.bat
for it to correctly build the project. in this case, I usedvs2022
(visual studio 2022.) - step 2: find the solution file and run it. e.g.
Limux.sln
- step 1: Run these command in your chosen command-line environment
-
-
Limux uses a layer base execution order system. So most of your codes will be in these layers. This is so that when you have unrelated things(e.g. UI, Physics, etc.) and want to separate them so that they can't affect each other, you can use these layers. The application will join these layer together and execute them in order.
#include <Limux.h> class DemoLayer : public LMX::Layer { public: DemoLayer() :Layer("DemoLayer") // Debug name {} virtual void OnAttach() // Called when the layer is attached to the application { LMX_INFO("Started Demo Layer"); } virtual void OnDetach() // Called when the layer is detached from the application { LMX_INFO("Stopped Demo Layer"); } virtual void OnUpdate(LMX::Timestep ts) // Called when the layer is detached from the application { LMX_INFO("Updated Demo Layer"); } virtual void OnEvent(LMX::Event& event) // Called when the layer is detached from the application { LMX_INFO("{0}", event.ToString()); } }; class DemoApp : public LMX::Application { public: DemoApp() { PushLayer(new DemoLayer()); // Add the layer to the execution stack each one will be executed in order } ~DemoApp() {} };
-
you must include the following at the bottom of your
cpp
file.LMX::Application* LMX::CreateApplication() { return new DemoApp(); // telling the engine what Application to use }
change
DemoApp
to your application name.
Licenses