Chapter 01

uimgui パッケージ

ousttrue
ousttrue
2022.02.02に更新

Repository

uimgui

https://github.com/psydack/uimgui

uimgui-4.0.0 で imgui-1.84/docking_branch

dear-imgui-unity がベース。

本記事では、 uimgui を UPM インストールして使います。

Unityのバージョン

2020 以上。
2019NativeArray<T>.Readonly でエラーになる。

UPM

次のバージョンが出るまで hash 指定。
UPM で HEAD を使うとよくわからない状態になりやすい。

manifest.json

"com.psydack.uimgui": "https://github.com/psydack/uimgui.git#5044f42f29b53a1adaf71c8620679807591e1b15",

その他関連リポジトリ

dear-imgui-unity

https://github.com/realgamessoftware/dear-imgui-unity

ImGui.Net を Unity で使えるようにしたもの。
imgui-1.75

https://github.com/viliwonka/dear-imgui-unity
imgui-1.75 docking branch

ImGui.Net

https://github.com/mellinoe/ImGui.NET

cimgui を DLLImport するライブラリ。

cimgui

https://github.com/cimgui/cimgui

オリジナルの ImGui は微妙に C++ 要素が入っているので、 DllImport 等の他言語バインディングに都合が悪い。 extern C になるようにラップしたものが本ライブラリである。

  • 同名関数のオーバーロード
  • 関数名のマングリング
  • 一部構造体のメンバー関数
  • 一部構造体の値返し(これで rust とか D ではまった)

imgui

https://github.com/ocornut/imgui

そして Dear ImGui 本家。

Unity無しで単独で使いたい場合

.Net6 で動くのでここから始めるとよい。
ImGui.Net は同じ。