v1.84.1.0

This commit is contained in:
github-actions committed 2021-08-29 08:25:17 +00:00
1 parent c531e43bf1
commit 4d679fe220
2 files changed
+16 -16

No files matched your search

+15 -15
View File
@@ -11,10 +11,10 @@ JNI based binding for [Dear ImGui](https://github.com/ocornut/imgui) with no dep
Read official [documentation](https://github.com/ocornut/imgui#usage) and [wiki](https://github.com/ocornut/imgui/wiki) to see how to work with Dear ImGui. Read official [documentation](https://github.com/ocornut/imgui#usage) and [wiki](https://github.com/ocornut/imgui/wiki) to see how to work with Dear ImGui.
Almost everything from C++ could be done in Java in the same way. Almost everything from C++ could be done in Java in the same way.
Binding has an OpenGL renderer and a GLFW backend implementation, using a [LWJGL3](https://www.lwjgl.org/) library. Could be found in [imgui-lwjgl3](https://github.com/SpaiR/imgui-java/blob/v1.83.3/imgui-lwjgl3) module.<br> Binding has an OpenGL renderer and a GLFW backend implementation, using a [LWJGL3](https://www.lwjgl.org/) library. Could be found in [imgui-lwjgl3](https://github.com/SpaiR/imgui-java/blob/v1.84.1.0/imgui-lwjgl3) module.<br>
They are recommended, yet optional to use. The advantage of Dear ImGui is a portability, so feel free to copy-paste classes or write your own implementations.<br> They are recommended, yet optional to use. The advantage of Dear ImGui is a portability, so feel free to copy-paste classes or write your own implementations.<br>
Additionally, there is an [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.83.3/imgui-app) module, which provides **a high abstraction layer**.<br> Additionally, there is an [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.84.1.0/imgui-app) module, which provides **a high abstraction layer**.<br>
It hides all low-level stuff under one class to extend, so you can build your GUI application instantly. It hides all low-level stuff under one class to extend, so you can build your GUI application instantly.
### Features ### Features
@@ -39,12 +39,12 @@ _Make sure you have installed Java 8 or higher._
You can try binding by yourself in three simple steps: You can try binding by yourself in three simple steps:
``` ```
git clone --branch v1.83.3 https://github.com/SpaiR/imgui-java.git git clone --branch v1.84.1.0 https://github.com/SpaiR/imgui-java.git
cd imgui-java cd imgui-java
./gradlew :example:run ./gradlew :example:run
``` ```
See [example](https://github.com/SpaiR/imgui-java/blob/v1.83.3/example) module to try other widgets in action. See [example](https://github.com/SpaiR/imgui-java/blob/v1.84.1.0/example) module to try other widgets in action.
# How to Use # How to Use
**[ImGui in LWJGL YouTube video](https://youtu.be/Xq-eVcNtUbw)** by [GamesWithGabe](https://www.youtube.com/channel/UCQP4qSCj1eHMHisDDR4iPzw).<br> **[ImGui in LWJGL YouTube video](https://youtu.be/Xq-eVcNtUbw)** by [GamesWithGabe](https://www.youtube.com/channel/UCQP4qSCj1eHMHisDDR4iPzw).<br>
@@ -53,7 +53,7 @@ You can use this video as a basic step-by-step tutorial. It shows how to integra
Take a note, that integration itself is a very flexible process. It could be done in one way or another. If you just need a framework for your GUI - use **Application** module. Otherwise, if you need more control, the best way is not just to repeat steps, but to understand what each step does. Take a note, that integration itself is a very flexible process. It could be done in one way or another. If you just need a framework for your GUI - use **Application** module. Otherwise, if you need more control, the best way is not just to repeat steps, but to understand what each step does.
## Application ## Application
If you don't care about OpenGL or other low-level stuff, then you can use application layer from [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.83.3/imgui-app) module. If you don't care about OpenGL or other low-level stuff, then you can use application layer from [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.84.1.0/imgui-app) module.
It is a **one jar solution** which includes: GLFW, OpenGL and Dear ImGui itself. So you only need **one dependency** line or **one jar in classpath** to make everything to work. <ins>You don't need to add separate dependencies to LWJGL or native libraries, since they are already included.</ins><br> It is a **one jar solution** which includes: GLFW, OpenGL and Dear ImGui itself. So you only need **one dependency** line or **one jar in classpath** to make everything to work. <ins>You don't need to add separate dependencies to LWJGL or native libraries, since they are already included.</ins><br>
Application module is the best choice if everything you care is the GUI for your app. Application module is the best choice if everything you care is the GUI for your app.
@@ -94,7 +94,7 @@ repositories {
} }
dependencies { dependencies {
implementation "io.github.spair:imgui-java-app:1.83.3" implementation "io.github.spair:imgui-java-app:1.84.1.0"
} }
``` ```
</details> </details>
@@ -107,7 +107,7 @@ dependencies {
<dependency> <dependency>
<groupId>io.github.spair</groupId> <groupId>io.github.spair</groupId>
<artifactId>imgui-java-app</artifactId> <artifactId>imgui-java-app</artifactId>
<version>1.83.3</version> <version>1.84.1.0</version>
</dependency> </dependency>
</dependencies> </dependencies>
``` ```
@@ -123,7 +123,7 @@ dependencies {
## Binding ## Binding
Using binding without the wrapper requires to "attach" it to your application manually. Using binding without the wrapper requires to "attach" it to your application manually.
You can refer to [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.83.3/imgui-app) module and see how things are done there. You can refer to [imgui-app](https://github.com/SpaiR/imgui-java/blob/v1.84.1.0/imgui-app) module and see how things are done there.
### Dependencies ### Dependencies
For simplicity, example of dependencies for Gradle/Maven only shows how to add natives for Windows. For simplicity, example of dependencies for Gradle/Maven only shows how to add natives for Windows.
@@ -147,7 +147,7 @@ repositories {
ext { ext {
lwjglVersion = '3.2.3' lwjglVersion = '3.2.3'
imguiVersion = '1.83.3' imguiVersion = '1.84.1.0'
} }
dependencies { dependencies {
@@ -172,7 +172,7 @@ dependencies {
``` ```
<properties> <properties>
<lwjgl.version>3.2.3</lwjgl.version> <lwjgl.version>3.2.3</lwjgl.version>
<imgui.java.version>1.83.3</imgui.java.version> <imgui.java.version>1.84.1.0</imgui.java.version>
</properties> </properties>
<dependencyManagement> <dependencyManagement>
@@ -248,13 +248,13 @@ dependencies {
</details> </details>
## Extensions ## Extensions
- [ImNodes](https://github.com/Nelarius/imnodes/tree/857cc860af05ac0f6a4039c2af33d982377b6cf4) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.83.3/example/src/main/java/ExampleImNodes.java) <br> - [ImNodes](https://github.com/Nelarius/imnodes/tree/857cc860af05ac0f6a4039c2af33d982377b6cf4) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.84.1.0/example/src/main/java/ExampleImNodes.java) <br>
A small, dependency-free node editor for dear imgui. (A good choice for simple start.) A small, dependency-free node editor for dear imgui. (A good choice for simple start.)
- [imgui-node-editor](https://github.com/thedmd/imgui-node-editor/tree/687a72f940c76cf5064e13fe55fa0408c18fcbe4) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.83.3/example/src/main/java/ExampleImGuiNodeEditor.java) <br> - [imgui-node-editor](https://github.com/thedmd/imgui-node-editor/tree/687a72f940c76cf5064e13fe55fa0408c18fcbe4) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.84.1.0/example/src/main/java/ExampleImGuiNodeEditor.java) <br>
Node Editor using ImGui. (A bit more complex than ImNodes, but has more features.) Node Editor using ImGui. (A bit more complex than ImNodes, but has more features.)
- [ImGuizmo](https://github.com/CedricGuillemet/ImGuizmo/tree/f7bbbe39971d9d45816417a70e9b53a0f698c56e) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.83.3/example/src/main/java/ExampleImGuizmo.java) <br> - [ImGuizmo](https://github.com/CedricGuillemet/ImGuizmo/tree/f7bbbe39971d9d45816417a70e9b53a0f698c56e) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.84.1.0/example/src/main/java/ExampleImGuizmo.java) <br>
Immediate mode 3D gizmo for scene editing and other controls based on Dear Imgui. Immediate mode 3D gizmo for scene editing and other controls based on Dear Imgui.
- [implot](https://github.com/epezent/implot/tree/555ff688a8134bc0c602123149abe9c17d577475) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.83.3/example/src/main/java/ExampleImPlot.java) <br> - [implot](https://github.com/epezent/implot/tree/555ff688a8134bc0c602123149abe9c17d577475) | [Example](https://github.com/SpaiR/imgui-java/blob/v1.84.1.0/example/src/main/java/ExampleImPlot.java) <br>
Advanced 2D Plotting for Dear ImGui. Advanced 2D Plotting for Dear ImGui.
## Freetype ## Freetype
@@ -292,7 +292,7 @@ Don't forget to make clear for your Linux/Mac users, that they will need to inst
ext { ext {
lwjglVersion = '3.2.3' lwjglVersion = '3.2.3'
imguiVersion = '1.83.3' imguiVersion = '1.84.1.0'
} }
dependencies { dependencies {
+1 -1
View File
@@ -1 +1 @@
version=1.83.3 version=1.84.1.0