日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

IMGUI 系统 - Dear ImGUI

發(fā)布時間:2023/12/9 windows 76 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IMGUI 系统 - Dear ImGUI 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

  • 簡單介紹
    • Unity 也有使用
    • 現(xiàn)在庫名字的理解
    • 名字歷史
  • 入門步驟建議
    • 其他資料
  • Showcase Screen Snapshot - 案例截圖

簡單介紹

因為我在寫 LearnGL 系列筆記的時候,發(fā)現(xiàn)沒有 GUI 可以用,好蛋疼,然后在 GitHub 上找到一個叫:Dear ImGui,這個IMGUI系統(tǒng)對我來說,太太太完美了,它是用 C++ 編寫的一個 IMGUI 系統(tǒng)。

Unity 也有使用

看了下面的 案例截圖 你會發(fā)現(xiàn),原來前幾年看到的一些大廠的各種 DEMO,或是一些軟件原來就是用 Dear ImGui 制作的,Vulkan、OpenGL的一些示例,還有如果你使用過 Unity 的舊版的 IMGUI 系統(tǒng),你就會發(fā)現(xiàn) Unity 的 IMGUI 接口與 Dear ImGui 的非常類似,因為它們都是按 IMGUI 范例設(shè)計的,所以也就說,如果你用過 Unity 舊版 IMGUI 你肯定很容易接受 Dear ImGui 的接口。

現(xiàn)在庫名字的理解

Git Hub 上 Dear ImGui 的簡述:

Dear ImGui: Bloat-free Immediate Mode Graphical User interface for C++ with minimal dependencies

然后我去下載 master 分支,壓縮包也就 1.4 MB,基本都是純代碼,編譯后更小,難怪它用 Bloat-free 來形容,非常精簡的一個GUI 庫。

名字歷史

從 What is this library called? 中可得知,作者是從 2014 年開始編寫的庫,當(dāng)時沒想好名字,就暫時用了 ImGui 的名字。但是 IMGUI 這個術(shù)語很早之前就有提出來,IMGUI == Immediate-Mode Graphical User Interface,即時模式的圖形用戶接口,它是 Casey Muratori 提出來的,如果你想了解 IMGUI 范例,可以查看:http://www.johno.se/book/imgui.html,http://mollyrocket.com/861 或是在下面提到的 FAQ 中的更多的鏈接,或是 wiki 中的 Paradigm。Unity 用它來實例了自己的 IMGUI 范例。所以作者為了減少歧義,他在 2015.12 將庫名改為 Dear ImGui(不是 ImGui,也不是IMGUI)。


入門步驟建議

  • 先看 master 的 README.txt,先了解大概介紹
  • 再看 example 下的 README.txt
  • 再倒回看 master 下的 imgui.cpp 的代碼、注釋,作為程序開發(fā)主要看:PROGRAMMER GUID 的部分
  • 再看看 FAQ.md 部分,了解常見的問題
  • 這時差不多可以開始將 Dear ImGui 引入你的項目了,先去 example 下找對應(yīng)的 實現(xiàn)窗體 + 渲染平臺
    • 找到適合你的窗體、渲染平臺的,點擊去查看 demo
    • 例如,我使用的是 GLFW 窗體庫 + OpenGL 3+ 版本的:example_glfw_opengl3,參考工程使用即可

其他資料

后續(xù)更多功能的查閱,可以查看他的 git/wiki:https://github.com/ocornut/imgui/wiki

其中有一些不錯的小部件:useful-widgets–references

也一些不錯的文章:articles-about-dear-imgui

我自己粗略閱讀過,也不是每個都不錯,下面將一些我自己看過覺得不錯的博客都列出來:

英文的視頻:

  • ImGui in OpenGL

英文的文章:

  • C++ desktop application with Dear Imgui

日語的 qiita 上的文章:

  • OpenGLやDirectXなGUIにimguiが最強(qiáng)すぎる
  • imguiのwindowの中で3d cubeの描畫をしてやった

如果你想用 Dear ImGui 來制作軟件,或是游戲引擎的GUI,可以使用他目前的 docking 分支的。

未來作者會合并到 master 分支,現(xiàn)在還在完善中。

值得一提的 Upcoming 內(nèi)容:

  • 而且他的 docking 和一般的 docking 還不一樣,可以跨窗體。
  • 他的 multiple viewport 也不一般,可以將窗體內(nèi)的內(nèi)容繪制到窗體外,即:ImGuiWindow 可以繪制到 host window 外。
  • 他的 table 也是做的強(qiáng)大又美觀

Dear ImGui docking,可以查看:
https://ruurdsdevlog.wordpress.com/2020/03/07/c-desktop-application-with-dear-imgui/

docking 的可以再查考 wiki 上的各個推薦的 blog 或是 video

后面如果要給圖片做一個資源管理,或是 材質(zhì)系統(tǒng)管理,都需要了解如何加載圖片

當(dāng)然這些內(nèi)容現(xiàn)在還沒有引入到 master 分支,還在完善開發(fā)中,所以如果感興趣可以 watch 持續(xù)關(guān)注這位大神 git。


Showcase Screen Snapshot - 案例截圖

為了提起你對 Dear ImGui 的興趣我將一些截圖放上來。



總結(jié)

以上是生活随笔為你收集整理的IMGUI 系统 - Dear ImGUI的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。