Skip to content

LuaJIT ffi binding for imgui, backends and extension widgets

License

Notifications You must be signed in to change notification settings

sonoro1234/LuaJIT-ImGui

Repository files navigation

LuaJIT-ImGui

sample

notepad

This is a LuaJIT binding for the excellent C++ immediate gui imgui. Uses cimgui to be the most "up to date" as possible.

There are backends for glfw, SDL2 and SDL3.

Notes:

  • currently this wrapper is based on version [1.91.5 docking of imgui]

cloning

Remember to do a recursive cloning of the repo to pull submodules also.

git clone --recurse-submodules https://github.com/sonoro1234/LuaJIT-ImGui.git

If already cloned and updating do from this repo folder:

git submodule update --init --recursive

compiling

  • linux cimgui_sdl (for love2d for example) needs: sudo apt install libsdl2-dev
  • run one of the scripts in the build directory from a sibling folder to the repo. If you want to install, (recomended) add this -DLUAJIT_BIN="folder where LuaJIT is" to the cmake command.
  • make (or make install).
  • If you didnt install in LuaJIT directory, set basedir variable in imgui.lua to the directory libimgui is found.
  • Alternatively you can build https://github.com/sonoro1234/anima which includes LuaJIT-ImGui and dependencies.

trying

binding generation

  • if cimgui is updated the binding can be remade with ./lua/build.bat

used in