大家好,欢迎来到IT知识分享网。
一、ImGui简介
Dear ImGui 是一个适用于 C++ 的无膨胀图形用户界面库。
Dear ImGui 旨在实现快速迭代,并使程序员能够创建内容创建工具和可视化/调试工具(而不是面向普通最终用户的 UI)。
ImGUI自身不能创建窗口,需要使用Win32API或glfw或SDL等工具来创建窗口,另外需要使用OpenGL或DirectX、vulkan用于渲染图形等,glfw、OpenGL等均被称为后端(backends)
glfw负责创建窗口对象,处理用户输入等
OpenGL负责绘制图形,设置着色器,更新uniform变量等
imgui负责创建和渲染GUI元素,如文本,按钮,颜色选择器等
ImGui的使用方法很简单,只需要将ImGui的源码文件添加到自己的项目中,然后选择一个合适的后端(例如glfw或SDL,OpenGL或DirectX),就可以开始绘制各种控件和窗口了。
下载地址为 https://github.com/ocornut/imgui
二、ImGUI目录结构
ImGui的目录结构如下:
imgui/
backends 后端文件夹,包含了不同平台和渲染器的实现代码
examples 示例文件夹,包含了各种使用ImGui的示例程序
misc 杂项文件夹,包含了一些辅助工具和扩展模块
imconfig.h 配置文件,可以用来修改ImGui的一些默认设置
imgui.cpp/imgui.h ImGui的核心源码文件,必须添加到你的项目中
imgui_demo.cpp/imgui_demo.h ImGui的演示源码文件,包含了各种控件和窗口的示例代码
imgui_draw.cpp/imgui_draw.h ImGui的绘制源码文件,负责渲染各种图形元素
imgui_internal.h ImGui的内部头文件,包含了一些高级功能和实现细节
imgui_tables.cpp/imgui_tables.h ImGui的表格源码文件,提供了创建和管理表格的功能
imgui_widgets.cpp/imgui_widgets.h ImGui的控件源码文件,提供了创建和管理各种控件的功能
imstb_rectpack.h/imstb_textedit.h/imstb_truetype.h 第三方库文件,用于矩形打包、文本编辑和字体渲染
三、准备工作
3.1 安装编译器
下载网址 WinLibs – GCC+MinGW-w64 compiler for Windows
下载完成后将mingw64放到硬盘上的某个位置,例如D:\mingw64,然后把D:\mingw64 添加到系统的PATH变量中。
3.2 安装CMake
下载网址 https://cmake.org/download/
可以直接下载安装程序,省事
也可以下载ZIP文件并解压到硬盘里,例如D:\cmake-3.29.3-windows-x86_64,然后把D:\cmake-3.29.3-windows-x86_64\bin添加到系统的PATH变量里。
3.3 下载glfw
下载地址 https://github.com/glfw/glfw/releases 或 https://www.glfw.org/download.html 我使用的是glfw-3.4.bin.WIN64.zip
3.4 下载imgui
下载地址 https://github.com/ocornut/imgui ,下载
四、项目准备
4.1 项目目录
在D:\\CMakeTest目录里建立 imgui目录
并在imgui目录里建立lib 和 src 两个目录
4.2 复制glfw文件
把glfw-xx.bin.WIN64.zip压缩包中的include 和 lib-mingw-w64 解压到lib\glfw目录中去
4.3 复制 imgui 文件
4.3.1把imgui-x.xx.zip 压缩包中的.h .cpp文件解压到lib\imgui 目录中去
4.3.2 在lib\imgui目录中建立backend目录,
把imgui-x.xx.zip 压缩包backends里的
imgui_impl_glfw.h
imgui_impl_glfw.cpp
imgui_impl_opengl3
imgui_impl_opengl3
imgui_impl_opengl3
等5个文件复制到 lib\imgui\backends目录里。
4.4 复制示例文件
把imgui-x.xx.zip 压缩包examples\example_glfw_opengl3里的 main.cpp文件复制到D:\CMakeTest\imgui\src目录里。
4.5 建立CMakeLists.txt文件
文件内容如下 :
cmake_minimum_required(VERSION 3.10)
project(imguiTmpl)
set(CMAKE_CXX_STANDARD 11)
include_directories(lib//glfw//include
lib//imgui
lib//imgui//backends
)
link_directories(lib//glfw//lib-mingw-w64)
file(GLOB_RECURSE IMGUI_SRCS lib//imgui//*.cpp)
add_executable(imguiTest WIN32 src//main.cpp ${IMGUI_SRCS}) #添加WIN32参数就不会显示控制台界面了
target_link_libraries(imguiTest glfw3.a opengl32) # 链接库文件
五、构建编译
5.1 打开CMD命令窗口,并定位到d:\CmakeTest\Test1目录
5.2 配置并构建系统
cmake - S . -B ./build -G “MinGW Makefiles”
5.3 编译链接项目
cmake --build ./build
5.4 运行测试
进入build目录,双击imimguitest.exe 运行测试即可
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/77506.html