Hexa.NET.ImGui is a .NET wrapper for the Dear ImGui (1.90.9) library, including support for internal components and popular addons like ImGuizmo, ImNodes, and ImPlot. This wrapper allows developers to leverage the powerful and flexible Dear ImGui library within the .NET ecosystem.
- Comprehensive Wrapper: Integrates the core Dear ImGui library along with essential addons such as ImGuizmo, ImNodes, and ImPlot.
- Multi Viewport Support: Enables seamless multi-viewport rendering for advanced UI scenarios.
- Active Development: Regular updates and improvements to ensure compatibility with the latest Dear ImGui features and .NET advancements.
- Trustworthy Builds: Native libraries are built using GitHub Actions for added trustworthiness and can be found here.
- Open Source: The source code for the native libraries is public and can be reviewed by anyone.
- Access to Internals: Allows users to access Dear ImGui internals for advanced customization and functionality.
Hexa.NET.ImGui is divided into four different packages to provide modularity and flexibility. You can choose to install only the packages you need:
To get started with Hexa.NET.ImGui, follow these steps:
-
Install the NuGet packages:
For the core library:
dotnet add package Hexa.NET.ImGui
For ImGuizmo addon:
dotnet add package Hexa.NET.ImGuizmo
For ImNodes addon:
dotnet add package Hexa.NET.ImNodes
For ImPlot addon:
dotnet add package Hexa.NET.ImPlot
-
Initialize the library in your project:
using Hexa.NET.ImGui; // Your initialization code here
-
Explore the demos to see the library in action.
For a comprehensive example of how to use the library, refer to the ExampleD3D11 project.
For details on how to set up the library, check the ImGuiManager.cs file in the ExampleD3D11 project.
![HexaEngine Editor](https://private-user-images.githubusercontent.com/46632782/352509692-b54145fe-5bd5-4998-b36f-24efe8345aba.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjI2ODg0NzAsIm5iZiI6MTcyMjY4ODE3MCwicGF0aCI6Ii80NjYzMjc4Mi8zNTI1MDk2OTItYjU0MTQ1ZmUtNWJkNS00OTk4LWIzNmYtMjRlZmU4MzQ1YWJhLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA4MDMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwODAzVDEyMjkzMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWJjN2U0NzU1NmQ3NGI0YmNjYmVmNjU4MGJhOGFkYmIwYzVhNjI2ZjgzZjQ3Y2FiOTBlMGY2Mzk3YjkwYWZhYjQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.qH1Eh-F6rKuVmluhJuikK-_CK6YKlq6zAtxvfx0FA-w)
- Refactor the generator: Improve the code generation process for better performance and maintainability.
- More demos: Add additional demo applications to showcase various features and use cases.
Contributions are welcome! If you have ideas for improvements or new features, feel free to submit a pull request or open an issue.
This project is licensed under the MIT License. See the LICENSE file for more details.