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.
For the moment, the FarenEngine can :
- Camera system
- Display simple shapes
- Sound
- Physics
- Lua scripting
- Forward
- Light effects (basic)
- Serialization system
- Multiple scene
To install the whole project:
- Clone the project with git clone https://github.com/F4r3n/FarenMediaLibrary.git
cmake . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build
It will create the library static FarenMediaLibary, the FarenEngine and the FarenEditor
The engine needs different libraries to work:
- Box2D
- Bullet
- glew
- Openal
- sdl2
- lua 5.3
- ECS (Custom)
- Opengl
- Vulkan
The dependencies are all in the folder extlib.
Windows | Linux | Mac | Android | iOS | |
---|---|---|---|---|---|
FarenEditor | ✓ | ✓ | ✓ | ✗ | ✗ |
FarenEngine | ✓ | ✓ | ✓ | ‐ | ‐ |
---
title: ResourceImporter
---
classDiagram
note for Resource "can load data"
Resource <|-- Image
Resource <|-- Audio
note for ResourceImporter "Load only meta data"
ResourceImporter <|-- ResourceImageImporter
ResourceImporter <|-- ResourceAudioImporter
ResourceImporter: +bool save()
ResourceImporter: +Resource load()
ResourceLoader "1" --> "*" ResourceImporter
ResourceManager "1" --> "*" Resource