ImGui

简单的 ImGui 上手教程

首先需要将 ImGui 工程拷贝到本地,项目的 Github 地址

这里使用的是 premake5 的构建工具,需要下载下来,可以直接使用已经编译好的 exe 文件。这个构建是基于 lua 脚本来生成工程的,所以我们需要编写相应的 lua 脚本来生成工程。

把 ImGui 下载下来之后,在项目的根目录下,新建一个 premake5.lua 脚本,内容如下:

project "ImGui"
	kind "StaticLib"
	language "C++"
        staticruntime "off"

	targetdir ("bin/" .. outputdir .. "/%{prj.name}")
	objdir ("bin-int/" .. outputdir .. "/%{prj.name}")

	files
	{
		"imconfig.h",
		"imgui.h",
		"imgui.cpp",
		"imgui_draw.cpp",
		"imgui_internal.h",
		"imgui_tables.cpp",
		"imgui_widgets.cpp",
		"imstb_rectpack.h",
		"imstb_textedit.h",
		"imstb_truetype.h",
		"imgui_demo.cpp"
	}

	filter "system:windows"
		systemversion "latest"
		cppdialect "C++17"

	filter "system:linux"
		pic "On"
		systemversion "latest"
		cppdialect "C++17"

	filter "configurations:Debug"
		runtime "Debug"
		symbols "on"

	filter "configurations:Release"
		runtime "Release"
		optimize "on"

        filter "configurations:Dist"
		runtime "Release"
		optimize "on"
                symbols "off"

如果说要将其加入到 git 项目中,需要 fork 这个仓库,然后添加 premake5.lua 这个文件,然后提交,之后再去为你的 git 项目添加 submodule 。

创建主项目的 premake.lua 文件,内容如下:

因为 ImGui 是需要依赖系统提供的 UI 接口的,然后去创建相应的窗口和交互信息。它支持的后台有安卓、DirectX、OpenGL、glfw、OSX、Vulkan、win32等等,所以还需要去把后台搭建好。

同样需要下载 GLFW 项目,下载完成后添加 premake5.lua,内容如下:

项目自身的 premake5.lua 如下:

Last updated

Was this helpful?