Skip to content

bmwcarit/ramses-logic

Repository files navigation

Introduction

build status docs status

RAMSES logic extends the RAMSES rendering ecosystem with scripting support based on Lua. RAMSES is designed to be minimalistic and closely aligned to OpenGL, which can be a limitation for more complex applications. RAMSES logic addresses this limitation by providing a runtime library which can load and run Lua scripts and provides a standard set of tools to let these scripts interact between each other and control a sophisticated RAMSES scene.

You can find the full documentation of RAMSES logic here.

Build

Clone RAMSES logic along with its dependencies:

$ git clone https://github.com/bmwcarit/ramses-logic <path>
$ cd <path>
$ git submodule update --init --recursive

You can find the compiled version of the examples in <path>/build/bin.

For more in-depth build instructions and customization options, have a look at the detailed build documentation.

Examples

Prefer to learn by example? Have a look at our self-contained example snippets.

Version matrix

The following matrix explains which versions of Ramses Logic are compatible with which versions of Ramses, and also to what extent binary files are supported. Read the table like this: Logic version X should be used with Ramses version Y (included Ramses version). If you need older Ramses, it must be at least Z (Minimum required Ramses version) - but keep in mind we don't test all combinations. You can also load existing files exported with Logic Engine version W or newer (Binary file compatibility).

Logic Included Ramses version Minimum required Ramses version Binary file compatibility
v1.4.5 27.0.139 27.0.102 >= 1.0.0, F-Levels 01 - 05
v1.4.4 27.0.139 27.0.102 >= 1.0.0, F-Levels 01 - 05
v1.4.3 27.0.130 27.0.102 >= 1.0.0, F-Levels 01 - 05
v1.4.2 27.0.130 27.0.102 >= 1.0.0, F-Levels 01 - 05
v1.4.1 27.0.128 27.0.102 >= 1.0.0, F-Levels 01 - 05
v1.4.0 27.0.126 27.0.102 >= 1.0.0, F-Levels 01 - 05
v1.3.0 27.0.126 27.0.102 >= 1.0.0, F-Levels 01 - 04
v1.2.2 27.0.125 27.0.102 >= 1.0.0, F-Levels 01 - 03
v1.2.1 27.0.125 27.0.102 >= 1.0.0, F-Levels 01 - 03
v1.2.0 27.0.122 27.0.102 >= 1.0.0, F-Levels 01 - 03
v1.1.x 27.0.121 27.0.102 >= 1.0.0, F-Levels 01, 02
v1.0.x 27.0.119 27.0.102 >= 1.0.0
v0.15.0 27.0.116 27.0.102 >= 0.15.0
v0.14.2 27.0.115 27.0.102 >= 0.13.0
v0.14.1 27.0.114 27.0.102 >= 0.13.0
v0.13.0 27.0.114 27.0.102 >= 0.13.0
v0.12.0 27.0.113 27.0.102 0.9.0 - 0.12.0
v0.11.0 27.0.113 27.0.102 0.9.0 - 0.12.0
v0.10.2 27.0.112 27.0.102 0.9.0 - 0.12.0
v0.10.1 27.0.111 27.0.102 0.9.0 - 0.12.0
v0.10.0 27.0.111 27.0.102 0.9.0 - 0.12.0
v0.9.1 27.0.111 27.0.102 0.9.0 - 0.12.0
v0.9.0 27.0.110 27.0.102 0.9.0 - 0.12.0
v0.8.1 27.0.110 27.0.102 0.7.x or 0.8.x
v0.8.0 27.0.110 27.0.102 0.7.x or 0.8.x
v0.7.0 27.0.105 27.0.102 0.7.x
v0.6.2 27.0.105 27.0.102 0.6.x
v0.6.1 27.0.103 (includes 27.0.11) 27.0.102 0.6.x
v0.6.0 27.0.102 (includes 27.0.10) 27.0.100 0.6.x
v0.5.3 27.0.101 27.0.100 0.5.3

License

The Ramses Logic Engine is licensed under the Mozilla Public License 2.0 (MPL-2.0), same as Ramses itself. Have a look at the Ramses README file for more information regarding Ramses and its dependencies.

In addition to Ramses, the Ramses Logic Engine has following dependencies, listed alongside their licenses here:

  • Ramses (MPL 2.0)
  • Lua (MIT)
  • Sol (MIT)
  • Flatbuffers (Apache-2.0)
  • Fmtlib (MIT)
  • Googletest (BSD-3-Clause)
  • Google Benchmark (Apache-2.0)
  • ImGui (MIT)
  • CLI11 (BSD-3-Clause)

All of the above dependencies are referenced as Git submodules pointing to their original repository. Hence, no modifications are made by Ramses Logic.