/FarenMediaLibrary

2D/3D engine with lua scripts

Primary LanguageCApache License 2.0Apache-2.0

Build Status Build Status Windows

FarenEngine

Introduction

This library enables to create 2D or 3D games with lua scripts. The engine is linked to an entity system component. The image below show the possibilities of the library.

Link image

For the moment, the FarenEngine can :

  • Camera system
  • Display simple shapes
  • Sound
  • Physics
  • Lua scripting
  • Forward
  • Light effects (basic)
  • Serialization system

Installation

To install the whole project:

mkdir build
cd build
cmake ..
make

It will create a static lib and the exe FarenEngine.

List of dependencies

The engine needs different libraries to work:

  • Box2D
  • Bullet
  • glew
  • openal
  • sdl2
  • lua 5.3
  • ECS (Custom)
  • Opengl

The dependencies are all in the folder extlib.

How to use it ?

Simple Window

	fm::Config config;
	config.name = "FML Engine";//Name of the window
	config.fpsWanted = 60;//Fps wanted
	config.width = 800;
	config.height = 600;
	fm::Application app(config);
	app.Init();//Init then engine


	fm::Window *window = app.GetWindow();
	fm::Engine *engine = app.GetEngine();

	while (!window->isClosed())
	{
		app.Update();
		window->swapBuffers();
	}
	app.DeInit();

TODO

https://trello.com/b/Krgov6CB/fml ...