From 3700abd3262f4af6925c84de52219964c2fd5f46 Mon Sep 17 00:00:00 2001 From: Victor Bombi Date: Mon, 19 Oct 2020 16:25:21 +0200 Subject: [PATCH] readme: explain defaults of generator, change implementations by backends --- README.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 08497d7..19ec5ea 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Initially cimgui was developed by Stephan Dilly as hand-written code but lately Notes: * currently this wrapper is based on version [1.79 of Dear ImGui with internal api] * only functions, structs and enums from imgui.h (an optionally imgui_internal.h) are wrapped. -* if you are interested in imgui implementations you should look [LuaJIT-ImGui](https://github.com/sonoro1234/LuaJIT-ImGui) project. +* if you are interested in imgui backends you should look [LuaJIT-ImGui](https://github.com/sonoro1234/LuaJIT-ImGui) project. * All naming is algorithmic except for those names that were coded in cimgui_overloads table (https://github.com/cimgui/cimgui/blob/master/generator/generator.lua#L60). In the official version this table is empty. * Current overloaded function names can be found in (https://github.com/cimgui/cimgui/blob/master/generator/output/overloads.txt) @@ -35,10 +35,11 @@ Notes: * you will need LuaJIT (https://github.com/LuaJIT/LuaJIT.git better 2.1 branch) or precompiled for linux/macOS/windows in https://luapower.com/luajit/download * you need to use also a C++ compiler for doing preprocessing: gcc (In windows MinGW-W64-builds for example), clang or cl (MSVC). (this repo was done with gcc) * update `imgui` folder to the version you desire. -* edit `generator/generator.bat` on windows, or `generator/generator.sh` on linux, to choose between gcc, clang, or cl and to choose desired implementations and whether imgui_internal is generated or not and Freetype2 is used or not. -* edit config_generator.lua for adding includes needed by your chosen implementations (vulkan needs that). +* edit `generator/generator.bat` on windows, or `generator/generator.sh` on linux, to choose between gcc, clang, or cl and to choose desired backends and whether imgui_internal is generated or not and Freetype2 is used or not. +* the defaults of generator are gcc as compiler, imgui_internal included and sdl, glfw, opengl2 and opengl3 as backends. +* edit config_generator.lua for adding includes needed by your chosen backends (vulkan needs that). * Run generator.bat or generator.sh with gcc, clang or cl and LuaJIT on your PATH. -* as a result some files are generated: `cimgui.cpp` and `cimgui.h` for compiling and some lua/json files with information about the binding: `definitions.json` with function info, `structs_and_enums.json` with struct and enum info, `impl_definitions.json` with functions from the implementations info. +* as a result some files are generated: `cimgui.cpp`, `cimgui.h` and `cimgui_impl.h` for compiling and some lua/json files with information about the binding: `definitions.json` with function info, `structs_and_enums.json` with struct and enum info, `impl_definitions.json` with functions from the backends info. # generate binding * C interface is exposed by cimgui.h when you define CIMGUI_DEFINE_ENUMS_AND_STRUCTS @@ -107,6 +108,7 @@ Notes: # C examples based on cimgui +* [sdl2_opengl3] (https://github.com/cimgui/cimgui/tree/docking_inter/backend_test) * [sdl2-cimgui-demo](https://github.com/haxpor/sdl2-cimgui-demo) * [cimgui_c_sdl2_example](https://github.com/canoi12/cimgui_c_sdl2_example/) * [cimgui-c-example](https://github.com/peko/cimgui-c-example) with GLFW