Hello ImGui is an immediate mode GUI library inspired by IMGUI of Unity3D and dear imgui.
It's still a work in progress.
Now it runs on Win10, Linux(Ubuntu 16.04) and Android. See platforms. Mac and iPhone are not supported because I don't have them.
- Clone ImGui
git clone https://github.com/zwcloud/ImGui.git
- Create a .NET7 console project and reference ImGui.
mkdir MyImGuiApp
Create MyImGuiApp.csproj
with following content:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include=".\ImGui\src\ImGui\ImGui.csproj" />
</ItemGroup>
</Project>
-
Add
Program.cs
to your project,using ImGui; var demo = new Demo(); Application.Run(new Form(new Rect(320, 180, 1280, 720)), () => { demo.OnGUI(); ImGui.GUILayout.Label("Hello, ImGui!"); });
-
Build your project
-
Run
- run with Visual Studio 2022: Press F5
- run on Windows/Linux:
cd MyImGuiApp dotnet MyApp.dll
-
Exit
Press Esc or click the close button of the window.
- Copy Android Templates project. Referenced shared project Demo can be removed if not needed.
- Add your GUI code in
MainForm.OnGUI
. - Build and deploy it to your Android device.
For now, please refer to the shared project Demo for how to use Hello ImGui.
- Xamarin.Android: Xamarin.Android provides open-source bindings of the Android SDK for use with .NET managed languages such as C#. It mainly provides C# runtime for ImGui.
ImGui doesn't depend on following projects, some code used by ImGui are taken from them.
- BigGustave: Open, read and create PNG images in fully managed C#.
- Typography: C# Font Reader (TrueType / OpenType / OpenFont) , Glyphs Layout and Rendering
- OpenTK: low-level C# wrapper for OpenGL
- CSharpGL: Object Oriented OpenGL in C#
Droid Sans and Terminus TTF fount, see fonts/ReadMe.
Hello ImGui is licensed under the AGPL License, see LICENSE for more information.