diff --git a/README.md b/README.md index b7a68bf..e0ddae4 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ Despite this fact, see official [documentation](https://github.com/ocornut/imgui to get more info about how to do things in ImGui. Binding doesn't force you to use backend renderer which is introduced here. Feel free to use your own renderer engine if you need so. -See how things are done in [ImGuiImplGl3](https://github.com/SpaiR/imgui-java/blob/v1.74-0.3.2/imgui-lwjgl3/src/main/java/imgui/gl3/ImGuiImplGl3.java). +See how things are done in [ImGuiImplGl3](https://github.com/SpaiR/imgui-java/blob/v1.74-0.4/imgui-lwjgl3/src/main/java/imgui/gl3/ImGuiImplGl3.java). Binding has the next version naming: `imguiVersion-bindingVersion`.
For example `1.74-0.1` means that binding uses `1.74` version of **ImGui** and binding itself has version `0.1`. @@ -27,13 +27,13 @@ _Make sure you have installed Java 8 or higher._ You can try this binding by yourself in a three simple steps: ``` -git clone --branch v1.74-0.3.2 https://github.com/SpaiR/imgui-java.git +git clone --branch v1.74-0.4 https://github.com/SpaiR/imgui-java.git cd imgui-java gradlew :imgui-lwjgl3:startExample ``` -That's it! This will start an example app [ImGuiGlfwExample](https://github.com/SpaiR/imgui-java/blob/v1.74-0.3.2/imgui-lwjgl3/src/test/java/ImGuiGlfwExample.java) -which relies on the GLFW and LWJGL3. Feel free to modify [ImGuiGlfwExample#showUi](https://github.com/SpaiR/imgui-java/blob/v1.74-0.3.2/imgui-lwjgl3/src/test/java/ImGuiGlfwExample.java#L288) +That's it! This will start an example app [ImGuiGlfwExample](https://github.com/SpaiR/imgui-java/blob/v1.74-0.4/imgui-lwjgl3/src/test/java/ImGuiGlfwExample.java) +which relies on the GLFW and LWJGL3. Feel free to modify [ImGuiGlfwExample#showUi](https://github.com/SpaiR/imgui-java/blob/v1.74-0.4/imgui-lwjgl3/src/test/java/ImGuiGlfwExample.java#L288) method to try different ImGui widgets in action.
@@ -53,18 +53,13 @@ repositories { #### Step 2 Add binding dependency: ``` -dependecies { - implementation 'io.imgui.java:binding:1.74-0.3.2' -} +implementation 'io.imgui.java:binding:1.74-0.4' ``` -#### Step 3 (optional, but recommended) +#### Step 3 If you want to use LWJGL3 renderer: ``` -dependecies { - implementation 'io.imgui.java:binding:1.74-0.3.2' - implementation 'io.imgui.java:lwjgl3:1.74-0.3.2' -} +implementation 'io.imgui.java:lwjgl3:1.74-0.4' ``` **Disclaimer!**
LWJGL3 renderer is based on the `3.2.3` version of the [LWJGL](https://www.lwjgl.org/). @@ -72,8 +67,37 @@ You'll need to add additional dependencies to it. Specifically `lwjgl` itself, ` You can find how to do it [here](https://www.lwjgl.org/customize). #### Step 4 -Go to the `/bin` folder and pick a native library for your OS. Then you'll need to provide `java.library.path` VM option with folder -where you placed the downloaded file. +Add binary lib dependency: +``` +runtimeOnly "io.imgui.java:$imguiNatives:1.74-0.4" +``` +Where `imguiNatives` could be: + - `natives-linux` + - `natives-linux-x86` + - `natives-windows` + - `natives-windows-x86` + +_(`x86` suffix is to get 32bit library)_ + +Or alternatively you can download binaries manually:
+Go to the `/bin` folder and pick a native library for your OS. Then you'll need to provide `imgui.library.path` or `java.library.path` +VM option with path to a folder where you placed downloaded file. + +
+ Result build.gradle could look like this + + ``` + repositories { + jcenter() + } + + dependencies { + implementation 'io.imgui.java:binding:1.74-0.4' + implementation 'io.imgui.java:lwjgl3:1.74-0.4' + runtimeOnly "io.imgui.java:natives-windows:1.74-0.4" + } + ``` +
**You are ready to use imgui-java binding!** diff --git a/bin/README.txt b/bin/README.txt index f710ce7..d747f85 100644 --- a/bin/README.txt +++ b/bin/README.txt @@ -1,5 +1,6 @@ Folder contains libraries used by the binding. -Provide 'java.library.path' VM option to a folder with one of those file (ex: -Djava.library.path=./some/folder). +Provide 'imgui.library.path' VM option to a folder with one of those file (ex: -Dimgui.library.path=./some/folder). +The same way you can use 'java.library.path' option as well. By default binding expects 'imgui-java' ('imgui-java64' for x64 arch) file name. You can change that by using 'imgui.library.name' VM option (ex: -Dimgui.library.name=custom-lib-name). diff --git a/bin/imgui-java.dll b/bin/imgui-java.dll index 1491660..2b47fa1 100755 Binary files a/bin/imgui-java.dll and b/bin/imgui-java.dll differ diff --git a/bin/imgui-java64.dll b/bin/imgui-java64.dll index 9a33c2d..a0dd164 100755 Binary files a/bin/imgui-java64.dll and b/bin/imgui-java64.dll differ diff --git a/bin/libimgui-java.so b/bin/libimgui-java.so index 8d9c1ba..afa06da 100755 Binary files a/bin/libimgui-java.so and b/bin/libimgui-java.so differ diff --git a/bin/libimgui-java64.so b/bin/libimgui-java64.so index 89271a4..17f3766 100755 Binary files a/bin/libimgui-java64.so and b/bin/libimgui-java64.so differ diff --git a/gradle.properties b/gradle.properties index 39a9dec..13e64a1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1 +1 @@ -version=1.74-0.3.2 +version=1.74-0.4